mirror of
https://github.com/jellyfin/jellyfin.git
synced 2026-05-31 21:08:27 +01:00
Merge remote-tracking branch 'upstream/master' into quickconnect
This commit is contained in:
@@ -25,6 +25,7 @@ using MediaBrowser.Model.Events;
|
||||
using MediaBrowser.Model.Library;
|
||||
using MediaBrowser.Model.Querying;
|
||||
using MediaBrowser.Model.Session;
|
||||
using MediaBrowser.Model.SyncPlay;
|
||||
using Microsoft.Extensions.Logging;
|
||||
|
||||
namespace Emby.Server.Implementations.Session
|
||||
@@ -477,8 +478,7 @@ namespace Emby.Server.Implementations.Session
|
||||
Client = appName,
|
||||
DeviceId = deviceId,
|
||||
ApplicationVersion = appVersion,
|
||||
Id = key.GetMD5().ToString("N", CultureInfo.InvariantCulture),
|
||||
ServerId = _appHost.SystemId
|
||||
Id = key.GetMD5().ToString("N", CultureInfo.InvariantCulture)
|
||||
};
|
||||
|
||||
var username = user?.Name;
|
||||
@@ -1042,12 +1042,12 @@ namespace Emby.Server.Implementations.Session
|
||||
|
||||
private static async Task SendMessageToSession<T>(SessionInfo session, string name, T data, CancellationToken cancellationToken)
|
||||
{
|
||||
var controllers = session.SessionControllers.ToArray();
|
||||
var messageId = Guid.NewGuid().ToString("N", CultureInfo.InvariantCulture);
|
||||
var controllers = session.SessionControllers;
|
||||
var messageId = Guid.NewGuid();
|
||||
|
||||
foreach (var controller in controllers)
|
||||
{
|
||||
await controller.SendMessage(name, messageId, data, controllers, cancellationToken).ConfigureAwait(false);
|
||||
await controller.SendMessage(name, messageId, data, cancellationToken).ConfigureAwait(false);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1055,13 +1055,13 @@ namespace Emby.Server.Implementations.Session
|
||||
{
|
||||
IEnumerable<Task> GetTasks()
|
||||
{
|
||||
var messageId = Guid.NewGuid().ToString("N", CultureInfo.InvariantCulture);
|
||||
var messageId = Guid.NewGuid();
|
||||
foreach (var session in sessions)
|
||||
{
|
||||
var controllers = session.SessionControllers;
|
||||
foreach (var controller in controllers)
|
||||
{
|
||||
yield return controller.SendMessage(name, messageId, data, controllers, cancellationToken);
|
||||
yield return controller.SendMessage(name, messageId, data, cancellationToken);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1154,6 +1154,22 @@ namespace Emby.Server.Implementations.Session
|
||||
await SendMessageToSession(session, "Play", command, cancellationToken).ConfigureAwait(false);
|
||||
}
|
||||
|
||||
/// <inheritdoc />
|
||||
public async Task SendSyncPlayCommand(string sessionId, SendCommand command, CancellationToken cancellationToken)
|
||||
{
|
||||
CheckDisposed();
|
||||
var session = GetSessionToRemoteControl(sessionId);
|
||||
await SendMessageToSession(session, "SyncPlayCommand", command, cancellationToken).ConfigureAwait(false);
|
||||
}
|
||||
|
||||
/// <inheritdoc />
|
||||
public async Task SendSyncPlayGroupUpdate<T>(string sessionId, GroupUpdate<T> command, CancellationToken cancellationToken)
|
||||
{
|
||||
CheckDisposed();
|
||||
var session = GetSessionToRemoteControl(sessionId);
|
||||
await SendMessageToSession(session, "SyncPlayGroupUpdate", command, cancellationToken).ConfigureAwait(false);
|
||||
}
|
||||
|
||||
private IEnumerable<BaseItem> TranslateItemForPlayback(Guid id, User user)
|
||||
{
|
||||
var item = _libraryManager.GetItemById(id);
|
||||
@@ -1432,7 +1448,7 @@ namespace Emby.Server.Implementations.Session
|
||||
if (user == null)
|
||||
{
|
||||
AuthenticationFailed?.Invoke(this, new GenericEventArgs<AuthenticationRequest>(request));
|
||||
throw new SecurityException("Invalid username or password entered.");
|
||||
throw new AuthenticationException("Invalid username or password entered.");
|
||||
}
|
||||
|
||||
if (!string.IsNullOrEmpty(request.DeviceId)
|
||||
@@ -1780,7 +1796,7 @@ namespace Emby.Server.Implementations.Session
|
||||
throw new ArgumentNullException(nameof(info));
|
||||
}
|
||||
|
||||
var user = info.UserId.Equals(Guid.Empty)
|
||||
var user = info.UserId == Guid.Empty
|
||||
? null
|
||||
: _userManager.GetUserById(info.UserId);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user