diff --git a/Emby.Server.Implementations/Session/SessionManager.cs b/Emby.Server.Implementations/Session/SessionManager.cs
index 75fdedd107..d069d1ada8 100644
--- a/Emby.Server.Implementations/Session/SessionManager.cs
+++ b/Emby.Server.Implementations/Session/SessionManager.cs
@@ -502,7 +502,8 @@ namespace Emby.Server.Implementations.Session
Client = appName,
DeviceId = deviceId,
ApplicationVersion = appVersion,
- Id = key.GetMD5().ToString("N", CultureInfo.InvariantCulture)
+ Id = key.GetMD5().ToString("N", CultureInfo.InvariantCulture),
+ ServerId = _appHost.SystemId
};
var username = user?.Username;
diff --git a/MediaBrowser.Controller/Session/SessionInfo.cs b/MediaBrowser.Controller/Session/SessionInfo.cs
index 36bc11be4f..4b088998cd 100644
--- a/MediaBrowser.Controller/Session/SessionInfo.cs
+++ b/MediaBrowser.Controller/Session/SessionInfo.cs
@@ -108,6 +108,12 @@ namespace MediaBrowser.Controller.Session
/// The name of the device.
public string DeviceName { get; set; }
+ ///
+ /// Gets or sets the type of the device.
+ ///
+ /// The type of the device.
+ public string DeviceType { get; set; }
+
///
/// Gets or sets the now playing item.
///
@@ -215,8 +221,17 @@ namespace MediaBrowser.Controller.Session
public string PlaylistItemId { get; set; }
+ public string ServerId { get; set; }
+
public string UserPrimaryImageTag { get; set; }
+ ///
+ /// Gets or sets the supported commands.
+ ///
+ /// The supported commands.
+ public string[] SupportedCommands
+ => Capabilities == null ? Array.Empty() : Capabilities.SupportedCommands;
+
public Tuple EnsureController(Func factory)
{
var controllers = SessionControllers.ToList();