public async Task <IActionResult> Music(IFormFile file, int roomid, string owner) { var ismusic = true; try { var f = new UploadFIle(file, ismusic); if (f.CheckIfExcelFile()) { await f.WriteFile(); } var streaminginfo = new StreamingInfo { FileName = f.Name, Owner = owner, RoomID = roomid, FileOgName = f.OriginalName }; if (!Streaming.Instance.StreamingQue.ContainsKey(streaminginfo.RoomID)) { await Streaming.Instance.AddRoom(streaminginfo.RoomID); } Streaming.Instance.EnQue(streaminginfo.RoomID, streaminginfo, ismusic); var info = new StreamingQueInfo(Streaming.Instance.StreamingQue[roomid]); await _hubContext.Clients.Group($"{roomid}").SendAsync("StreamingQueInfo", info); return(Ok()); } catch (Exception ex) { return(StatusCode(500, ex.Message)); } }
public async Task GetStreamingQueInfo(int roomId) { if (!Streaming.Instance.StreamingQue.ContainsKey(roomId)) { await Streaming.Instance.AddRoom(roomId); } var info = new StreamingQueInfo(Streaming.Instance.StreamingQue[roomId]); await _hubContext.Clients.Group($"{roomId}").SendAsync("StreamingQueInfo", info); }
public async Task SendQueInfo(int roomId) { if (!Streaming.Instance.StreamingQue.ContainsKey(roomId)) { await Streaming.Instance.AddRoom(roomId); } var info = new StreamingQueInfo(Streaming.Instance.StreamingQue[roomId]); await Clients.Group($"{roomId}").SendAsync("StreamingQueInfo", info); await Clients.Group($"{roomId}").SendAsync("StreamingInfo", Streaming.Instance.RoomFFmpeg[roomId].Info); }