From 0a090f6ea40789199a40a40b681b99e54a315043 Mon Sep 17 00:00:00 2001 From: Luke Pulverenti Date: Mon, 29 Jul 2013 10:18:55 -0400 Subject: [PATCH] fixes #385 - Send playback stop on browser close --- .../Session/SessionWebSocketListener.cs | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/MediaBrowser.Server.Implementations/Session/SessionWebSocketListener.cs b/MediaBrowser.Server.Implementations/Session/SessionWebSocketListener.cs index e932b4acb2..40c06fdf2d 100644 --- a/MediaBrowser.Server.Implementations/Session/SessionWebSocketListener.cs +++ b/MediaBrowser.Server.Implementations/Session/SessionWebSocketListener.cs @@ -38,13 +38,13 @@ namespace MediaBrowser.Server.Implementations.Session /// Initializes a new instance of the class. /// /// The session manager. - /// The logger. + /// The log manager. /// The library manager. /// The user manager. - public SessionWebSocketListener(ISessionManager sessionManager, ILogger logger, ILibraryManager libraryManager, IUserManager userManager) + public SessionWebSocketListener(ISessionManager sessionManager, ILogManager logManager, ILibraryManager libraryManager, IUserManager userManager) { _sessionManager = sessionManager; - _logger = logger; + _logger = logManager.GetLogger(GetType().Name); _libraryManager = libraryManager; _userManager = userManager; } @@ -58,6 +58,8 @@ namespace MediaBrowser.Server.Implementations.Session { if (string.Equals(message.MessageType, "Identity", StringComparison.OrdinalIgnoreCase)) { + _logger.Debug("Received Identity message"); + var vals = message.Data.Split('|'); var client = vals[0]; @@ -101,6 +103,8 @@ namespace MediaBrowser.Server.Implementations.Session } else if (string.Equals(message.MessageType, "PlaybackStart", StringComparison.OrdinalIgnoreCase)) { + _logger.Debug("Received PlaybackStart message"); + var session = _sessionManager.Sessions.FirstOrDefault(i => i.WebSockets.Contains(message.Connection)); if (session != null && session.User != null) @@ -139,6 +143,8 @@ namespace MediaBrowser.Server.Implementations.Session } else if (string.Equals(message.MessageType, "PlaybackStopped", StringComparison.OrdinalIgnoreCase)) { + _logger.Debug("Received PlaybackStopped message"); + var session = _sessionManager.Sessions.FirstOrDefault(i => i.WebSockets.Contains(message.Connection)); if (session != null && session.User != null)