public void ConnectRemoteController(string screenId) { //Find the screen var screen = ConnectedScreens.Find(x => x.Id.ToString().Equals(screenId)); //Create a remote control. var remoteController = new RemoteController { Id = Guid.NewGuid(), Screen = screen, ConnectedAt = DateTime.Now }; //Add the remote controller to a signalR group Groups.Add(Context.ConnectionId, remoteController.Screen.RemoteControllersGroupName); //Publish Clients.Caller.Publish("views:show:remoteController", remoteController, screen); }
public void AddRemoteController(RemoteController remoteController) { RemoteControllers.Add(remoteController); }
public void SendVideoRequest(string videoId, RemoteController remoteController) { //Load the video from YouTube with the needed information var video = _youTubeRepository.GetById(videoId); //Notify the screen group Clients.Group(remoteController.Screen.GroupName).Publish("video:request", video); Clients.Group(remoteController.Screen.RemoteControllersGroupName).Publish("video:request", video); }
public void SendVolumeUp(RemoteController remoteController) { //Notify the screen group Clients.Group(remoteController.Screen.GroupName).Publish("volume:up"); }
public void SendPlayRequest(RemoteController remoteController) { //Notify the screen group Clients.Group(remoteController.Screen.GroupName).Publish("video:play"); Clients.Group(remoteController.Screen.RemoteControllersGroupName).Publish("video:play"); }