aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.Server.Implementations/Session/HttpSessionController.cs
diff options
context:
space:
mode:
Diffstat (limited to 'MediaBrowser.Server.Implementations/Session/HttpSessionController.cs')
-rw-r--r--MediaBrowser.Server.Implementations/Session/HttpSessionController.cs21
1 files changed, 15 insertions, 6 deletions
diff --git a/MediaBrowser.Server.Implementations/Session/HttpSessionController.cs b/MediaBrowser.Server.Implementations/Session/HttpSessionController.cs
index f1d4c3555..a3a6d3630 100644
--- a/MediaBrowser.Server.Implementations/Session/HttpSessionController.cs
+++ b/MediaBrowser.Server.Implementations/Session/HttpSessionController.cs
@@ -6,6 +6,7 @@ using MediaBrowser.Model.Session;
using MediaBrowser.Model.System;
using System;
using System.Collections.Generic;
+using System.Globalization;
using System.Linq;
using System.Net;
using System.Threading;
@@ -125,13 +126,16 @@ namespace MediaBrowser.Server.Implementations.Session
public Task SendPlayCommand(PlayRequest command, CancellationToken cancellationToken)
{
- return Task.FromResult(true);
- //return SendMessage(new WebSocketMessage<PlayRequest>
- //{
- // MessageType = "Play",
- // Data = command
+ var dict = new Dictionary<string, string>();
+
+ dict["ItemIds"] = string.Join(",", command.ItemIds);
+
+ if (command.StartPositionTicks.HasValue)
+ {
+ dict["StartPositionTicks"] = command.StartPositionTicks.Value.ToString(CultureInfo.InvariantCulture);
+ }
- //}, cancellationToken);
+ return SendMessage(command.PlayCommand.ToString(), dict, cancellationToken);
}
public Task SendPlaystateCommand(PlaystateRequest command, CancellationToken cancellationToken)
@@ -140,7 +144,12 @@ namespace MediaBrowser.Server.Implementations.Session
if (command.Command == PlaystateCommand.Seek)
{
+ if (!command.SeekPositionTicks.HasValue)
+ {
+ throw new ArgumentException("SeekPositionTicks cannot be null");
+ }
+ args["StartPositionTicks"] = command.SeekPositionTicks.Value.ToString(CultureInfo.InvariantCulture);
}
return SendMessage(command.Command.ToString(), cancellationToken);