// The server's job is to maintain a consistent state for clients to reference
// and notify clients of state changes. The actual syncing of media playback
// happens client side. Clients are aware of the server's time and use it to sync.
_logger.LogInformation("HandleRequest: {0} requested {1}, group {2} in {3} state.",session.Id,request.Type,GroupId.ToString(),_state.Type);
_logger.LogInformation("HandleRequest: {SessionId} requested {RequestType}, group {GroupId} is {StateType}.",session.Id,request.Type,GroupId.ToString(),_state.Type);
_logger.LogWarning("JoinGroup: {0} does not have access to some content from the playing queue of group {1}.",session.Id,group.GroupId.ToString());
_logger.LogWarning("JoinGroup: {SessionId} does not have access to some content from the playing queue of group {GroupId}.",session.Id,group.GroupId.ToString());
// Reset status of sessions and await for all Ready events.
context.SetAllBuffering(true);
Logger.LogDebug("HandleRequest: {0} in group {1}, {2} set a new play queue.",request.Type,context.GroupId.ToString(),session.Id);
Logger.LogDebug("HandleRequest: {RequestType} in group {GroupId}, {SessionId} set a new play queue.",request.Type,context.GroupId.ToString(),session.Id);
// Reset status of sessions and await for all Ready events.
context.SetAllBuffering(true);
Logger.LogDebug("HandleRequest: {0} in group {1}, waiting for all ready events.",request.Type,context.GroupId.ToString());
Logger.LogDebug("HandleRequest: {RequestType} in group {GroupId}, waiting for all ready events.",request.Type,context.GroupId.ToString());
}
else
{
if(ResumePlaying)
{
Logger.LogDebug("HandleRequest: {0} in group {1}, ignoring sessions that are not ready and forcing the playback to start.",request.Type,context.GroupId.ToString());
Logger.LogDebug("HandleRequest: {RequestType} in group {GroupId}, ignoring sessions that are not ready and forcing the playback to start.",request.Type,context.GroupId.ToString());
// An Unpause request is forcing the playback to start, ignoring sessions that are not ready.
Logger.LogDebug("HandleRequest: {0} in group {1}, {2} has wrong playlist item.",request.Type,context.GroupId.ToString(),session.Id);
Logger.LogDebug("HandleRequest: {RequestType} in group {GroupId}, {SessionId} has wrong playlist item.",request.Type,context.GroupId.ToString(),session.Id);
Logger.LogDebug("HandleRequest: {0} in group {1}, {2} has wrong playlist item.",request.Type,context.GroupId.ToString(),session.Id);
Logger.LogDebug("HandleRequest: {RequestType} in group {GroupId}, {SessionId} has wrong playlist item.",request.Type,context.GroupId.ToString(),session.Id);
Logger.LogWarning("HandleRequest: {0} in group {1}, {2} is not time syncing properly. Ignoring elapsed time.",request.Type,context.GroupId.ToString(),session.Id);
Logger.LogWarning("HandleRequest: {RequestType} in group {GroupId}, {SessionId} is not time syncing properly. Ignoring elapsed time.",request.Type,context.GroupId.ToString(),session.Id);
Logger.LogDebug("HandleRequest: {0} in group {1}, {2} at {3} (delay of {4} seconds).",request.Type,context.GroupId.ToString(),session.Id,clientPosition,TimeSpan.FromTicks(delayTicks).TotalSeconds);
Logger.LogDebug("HandleRequest: {RequestType} in group {GroupId}, {SessionId} at {PositionTicks} (delay of {Delay} seconds).",request.Type,context.GroupId.ToString(),session.Id,clientPosition,TimeSpan.FromTicks(delayTicks).TotalSeconds);
Logger.LogWarning("HandleRequest: {0} in group {1}, {2} got lost in time, correcting.",request.Type,context.GroupId.ToString(),session.Id);
Logger.LogWarning("HandleRequest: {RequestType} in group {GroupId}, {SessionId} got lost in time, correcting.",request.Type,context.GroupId.ToString(),session.Id);
Logger.LogInformation("HandleRequest: {0} in group {1}, others still buffering, {2} will pause when ready in {3} seconds.",request.Type,context.GroupId.ToString(),session.Id,TimeSpan.FromTicks(delayTicks).TotalSeconds);
Logger.LogInformation("HandleRequest: {RequestType} in group {GroupId}, others still buffering, {SessionId} will pause when ready in {Delay} seconds.",request.Type,context.GroupId.ToString(),session.Id,TimeSpan.FromTicks(delayTicks).TotalSeconds);
Logger.LogInformation("HandleRequest: {0} in group {1}, {2} is recovering, notifying others to resume in {3} seconds.",request.Type,context.GroupId.ToString(),session.Id,TimeSpan.FromTicks(delayTicks).TotalSeconds);
Logger.LogInformation("HandleRequest: {RequestType} in group {GroupId}, {SessionId} is recovering, notifying others to resume in {Delay} seconds.",request.Type,context.GroupId.ToString(),session.Id,TimeSpan.FromTicks(delayTicks).TotalSeconds);
Logger.LogWarning("HandleRequest: {0} in group {1}, {2} resumed playback but did not update others in time. {3} seconds to recover.",request.Type,context.GroupId.ToString(),session.Id,TimeSpan.FromTicks(delayTicks).TotalSeconds);
Logger.LogWarning("HandleRequest: {RequestType} in group {GroupId}, {SessionId} resumed playback but did not update others in time. {Delay} seconds to recover.",request.Type,context.GroupId.ToString(),session.Id,TimeSpan.FromTicks(delayTicks).TotalSeconds);
Logger.LogWarning("HandleRequest: {0} in group {1}, {2} was seeking to wrong position, correcting.",request.Type,context.GroupId.ToString(),session.Id);
Logger.LogWarning("HandleRequest: {RequestType} in group {GroupId}, {SessionId} is seeking to wrong position, correcting.",request.Type,context.GroupId.ToString(),session.Id);
Logger.LogDebug("HandleRequest: {0} in group {1}, {2} is ready, returning to previous state.",request.Type,context.GroupId.ToString(),session.Id);
Logger.LogDebug("HandleRequest: {RequestType} in group {GroupId}, {SessionId} is ready, returning to previous state.",request.Type,context.GroupId.ToString(),session.Id);
Logger.LogDebug("HandleRequest: {0} in group {1}, client provided the wrong playlist identifier.",request.Type,context.GroupId.ToString());
Logger.LogDebug("HandleRequest: {RequestType} in group {GroupId}, {SessionId} provided the wrong playlist identifier.",request.Type,context.GroupId.ToString(),session.Id);
Logger.LogDebug("HandleRequest: {0} in group {1}, client provided the wrong playlist identifier.",request.Type,context.GroupId.ToString());
Logger.LogDebug("HandleRequest: {RequestType} in group {GroupId}, {SessionId} provided the wrong playlist identifier.",request.Type,context.GroupId.ToString(),session.Id);