mirror of
https://github.com/jellyfin/jellyfin.git
synced 2025-07-08 10:44:23 -04:00
Merge pull request #5903 from iwalton3/auto-leave-syncplay
Leave SyncPlay group on session disconnect.
This commit is contained in:
commit
dcc2df75ec
@ -87,7 +87,7 @@ namespace Emby.Server.Implementations.SyncPlay
|
|||||||
_sessionManager = sessionManager;
|
_sessionManager = sessionManager;
|
||||||
_libraryManager = libraryManager;
|
_libraryManager = libraryManager;
|
||||||
_logger = loggerFactory.CreateLogger<SyncPlayManager>();
|
_logger = loggerFactory.CreateLogger<SyncPlayManager>();
|
||||||
_sessionManager.SessionControllerConnected += OnSessionControllerConnected;
|
_sessionManager.SessionEnded += OnSessionEnded;
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <inheritdoc />
|
/// <inheritdoc />
|
||||||
@ -352,18 +352,18 @@ namespace Emby.Server.Implementations.SyncPlay
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
_sessionManager.SessionControllerConnected -= OnSessionControllerConnected;
|
_sessionManager.SessionEnded -= OnSessionEnded;
|
||||||
_disposed = true;
|
_disposed = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
private void OnSessionControllerConnected(object sender, SessionEventArgs e)
|
private void OnSessionEnded(object sender, SessionEventArgs e)
|
||||||
{
|
{
|
||||||
var session = e.SessionInfo;
|
var session = e.SessionInfo;
|
||||||
|
|
||||||
if (_sessionToGroupMap.TryGetValue(session.Id, out var group))
|
if (_sessionToGroupMap.TryGetValue(session.Id, out var group))
|
||||||
{
|
{
|
||||||
var request = new JoinGroupRequest(group.GroupId);
|
var leaveGroupRequest = new LeaveGroupRequest();
|
||||||
JoinGroup(session, request, CancellationToken.None);
|
LeaveGroup(session, leaveGroupRequest, CancellationToken.None);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user