public static Task <IList <WebStreamingSession> > ProcessAsync(IOwinContext context, string filter = null)
 {
     return(Task.FromResult <IList <WebStreamingSession> >(StreamControl.GetStreamItems().Select(streamItem => new WebStreamingSession
     {
         ClientDescription = streamItem.Value.ClientDescription,
         Profile = streamItem.Value.Profile.Name,
         Identifier = streamItem.Key,
         StartPosition = streamItem.Value.StartPosition,
         TranscodingInfo = new WebTranscodingInfo(streamItem.Value.StreamContext as TranscodeContext),
         StartTime = streamItem.Value.StartTimeUtc.ToLocalTime(),
         SourceId = streamItem.Value.RequestedMediaItem.MediaItemId.ToString(),
         ClientIPAddress = streamItem.Value.ClientIp,
         DisplayName = streamItem.Value.Title,
     }).ToList()));
 }