/// <summary> /// Notifies all users that a user pressed the skip button /// </summary> public void UpdateSkipAudio() { Dictionary <string, object> data = new Dictionary <string, object>(); foreach (User user in userList) { try { user.socket.Send(PacketEncoding.EncodeResponsePacket(new packets.ResponsePacket(data, PacketType.skipAudio))); } catch (Exception error) { userList.Remove(user); Console.WriteLine(Server.GetLineAndFile() + error.Message); } } }
/// <summary> /// Sends an updated usernames list to all connected users /// </summary> /// <param name="sender"></param> /// <param name="e"></param> public void UpdateNicknames(object sender, ListChangedEventArgs e) { Dictionary <string, object> data = new Dictionary <string, object>() { { "nicknames", userList.Select(u => u.Nickname).ToList() } }; foreach (User user in userList) { try { user.socket.Send(PacketEncoding.EncodeResponsePacket(new packets.ResponsePacket(data, PacketType.updateNickname))); } catch (Exception error) { userList.Remove(user); Console.WriteLine(Server.GetLineAndFile() + error.Message); } } }
/// <summary> /// Sends an updated playlist to all connected users /// </summary> /// <param name="sender"></param> /// <param name="e"></param> public void UpdatePlaylist(object sender, ListChangedEventArgs e) { Dictionary <string, object> data = new Dictionary <string, object>() { { "playlist", videoQueue } }; // Send new video details to all clients foreach (User user in userList) { try { user.socket.Send(PacketEncoding.EncodeResponsePacket(new packets.ResponsePacket(data, PacketType.addToPlaylist))); } catch (Exception error) { userList.Remove(user); Console.WriteLine(Server.GetLineAndFile() + error.Message); } } }