aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.Controller/Session
diff options
context:
space:
mode:
authorLuke Pulverenti <luke.pulverenti@gmail.com>2014-04-06 13:53:23 -0400
committerLuke Pulverenti <luke.pulverenti@gmail.com>2014-04-06 13:53:23 -0400
commitc60103df64104459883f1244363cc9cd39187545 (patch)
tree9c2d90fb6b59905a265ffd3f10a036d3e50ce487 /MediaBrowser.Controller/Session
parent241c43e9a1f9ad2fbc940626f9c85c469402bc55 (diff)
chromecast updates
Diffstat (limited to 'MediaBrowser.Controller/Session')
-rw-r--r--MediaBrowser.Controller/Session/ISessionController.cs8
-rw-r--r--MediaBrowser.Controller/Session/ISessionManager.cs17
-rw-r--r--MediaBrowser.Controller/Session/PlaybackInfo.cs12
-rw-r--r--MediaBrowser.Controller/Session/PlaybackProgressInfo.cs18
-rw-r--r--MediaBrowser.Controller/Session/SessionEventArgs.cs9
-rw-r--r--MediaBrowser.Controller/Session/SessionInfo.cs11
6 files changed, 74 insertions, 1 deletions
diff --git a/MediaBrowser.Controller/Session/ISessionController.cs b/MediaBrowser.Controller/Session/ISessionController.cs
index cf57f6621e..1d5fbf3590 100644
--- a/MediaBrowser.Controller/Session/ISessionController.cs
+++ b/MediaBrowser.Controller/Session/ISessionController.cs
@@ -90,6 +90,14 @@ namespace MediaBrowser.Controller.Session
Task SendServerShutdownNotification(CancellationToken cancellationToken);
/// <summary>
+ /// Sends the session ended notification.
+ /// </summary>
+ /// <param name="sessionInfo">The session information.</param>
+ /// <param name="cancellationToken">The cancellation token.</param>
+ /// <returns>Task.</returns>
+ Task SendSessionEndedNotification(SessionInfoDto sessionInfo, CancellationToken cancellationToken);
+
+ /// <summary>
/// Sends the server restart notification.
/// </summary>
/// <param name="cancellationToken">The cancellation token.</param>
diff --git a/MediaBrowser.Controller/Session/ISessionManager.cs b/MediaBrowser.Controller/Session/ISessionManager.cs
index 434c513360..f2edca082c 100644
--- a/MediaBrowser.Controller/Session/ISessionManager.cs
+++ b/MediaBrowser.Controller/Session/ISessionManager.cs
@@ -29,6 +29,16 @@ namespace MediaBrowser.Controller.Session
event EventHandler<PlaybackStopEventArgs> PlaybackStopped;
/// <summary>
+ /// Occurs when [session started].
+ /// </summary>
+ event EventHandler<SessionEventArgs> SessionStarted;
+
+ /// <summary>
+ /// Occurs when [session ended].
+ /// </summary>
+ event EventHandler<SessionEventArgs> SessionEnded;
+
+ /// <summary>
/// Gets the sessions.
/// </summary>
/// <value>The sessions.</value>
@@ -84,6 +94,13 @@ namespace MediaBrowser.Controller.Session
Task ReportSessionEnded(Guid sessionId);
/// <summary>
+ /// Gets the session info dto.
+ /// </summary>
+ /// <param name="session">The session.</param>
+ /// <returns>SessionInfoDto.</returns>
+ SessionInfoDto GetSessionInfoDto(SessionInfo session);
+
+ /// <summary>
/// Sends the general command.
/// </summary>
/// <param name="controllingSessionId">The controlling session identifier.</param>
diff --git a/MediaBrowser.Controller/Session/PlaybackInfo.cs b/MediaBrowser.Controller/Session/PlaybackInfo.cs
index a97f9e0d03..2e59b6b729 100644
--- a/MediaBrowser.Controller/Session/PlaybackInfo.cs
+++ b/MediaBrowser.Controller/Session/PlaybackInfo.cs
@@ -40,5 +40,17 @@ namespace MediaBrowser.Controller.Session
/// </summary>
/// <value>The media version identifier.</value>
public string MediaSourceId { get; set; }
+
+ /// <summary>
+ /// Gets or sets the index of the audio stream.
+ /// </summary>
+ /// <value>The index of the audio stream.</value>
+ public int? AudioStreamIndex { get; set; }
+
+ /// <summary>
+ /// Gets or sets the index of the subtitle stream.
+ /// </summary>
+ /// <value>The index of the subtitle stream.</value>
+ public int? SubtitleStreamIndex { get; set; }
}
}
diff --git a/MediaBrowser.Controller/Session/PlaybackProgressInfo.cs b/MediaBrowser.Controller/Session/PlaybackProgressInfo.cs
index 3d402aa6ff..9f82fcdffc 100644
--- a/MediaBrowser.Controller/Session/PlaybackProgressInfo.cs
+++ b/MediaBrowser.Controller/Session/PlaybackProgressInfo.cs
@@ -40,5 +40,23 @@ namespace MediaBrowser.Controller.Session
/// </summary>
/// <value>The media version identifier.</value>
public string MediaSourceId { get; set; }
+
+ /// <summary>
+ /// Gets or sets the volume level.
+ /// </summary>
+ /// <value>The volume level.</value>
+ public int? VolumeLevel { get; set; }
+
+ /// <summary>
+ /// Gets or sets the index of the audio stream.
+ /// </summary>
+ /// <value>The index of the audio stream.</value>
+ public int? AudioStreamIndex { get; set; }
+
+ /// <summary>
+ /// Gets or sets the index of the subtitle stream.
+ /// </summary>
+ /// <value>The index of the subtitle stream.</value>
+ public int? SubtitleStreamIndex { get; set; }
}
}
diff --git a/MediaBrowser.Controller/Session/SessionEventArgs.cs b/MediaBrowser.Controller/Session/SessionEventArgs.cs
new file mode 100644
index 0000000000..96daa6ec93
--- /dev/null
+++ b/MediaBrowser.Controller/Session/SessionEventArgs.cs
@@ -0,0 +1,9 @@
+using System;
+
+namespace MediaBrowser.Controller.Session
+{
+ public class SessionEventArgs : EventArgs
+ {
+ public SessionInfo SessionInfo { get; set; }
+ }
+}
diff --git a/MediaBrowser.Controller/Session/SessionInfo.cs b/MediaBrowser.Controller/Session/SessionInfo.cs
index ef39977f03..9fcb024e8f 100644
--- a/MediaBrowser.Controller/Session/SessionInfo.cs
+++ b/MediaBrowser.Controller/Session/SessionInfo.cs
@@ -126,7 +126,6 @@ namespace MediaBrowser.Controller.Session
/// <value>The now playing media version identifier.</value>
public string NowPlayingMediaSourceId { get; set; }
-
/// <summary>
/// Gets or sets the now playing run time ticks.
/// </summary>
@@ -151,6 +150,16 @@ namespace MediaBrowser.Controller.Session
public bool IsMuted { get; set; }
/// <summary>
+ /// Gets or sets the volume level, on a scale of 0-100
+ /// </summary>
+ /// <value>The volume level.</value>
+ public int? VolumeLevel { get; set; }
+
+ public int? NowPlayingAudioStreamIndex { get; set; }
+
+ public int? NowPlayingSubtitleStreamIndex { get; set; }
+
+ /// <summary>
/// Gets or sets the device id.
/// </summary>
/// <value>The device id.</value>