private void HandleChannelCreate(Packets.ChannelCreate payload, ushort channelNumber) { NanoChannelId id = NanoChannelClass.GetIdByClassName(payload.Name); _channels[channelNumber] = id; GetChannelById(id).OnChannelCreated(payload.Flags, channelNumber); }
public StreamingChannelBase(NanoClient client, NanoChannelId channelId) { _client = client; ChannelId = channelId; ChannelNumber = 0; SequenceNumber = 0; IsOpen = false; }
public StreamingChannelBase GetChannelById(NanoChannelId id) { switch (id) { case NanoChannelId.Audio: return(Audio); case NanoChannelId.ChatAudio: return(ChatAudio); case NanoChannelId.Control: return(Control); case NanoChannelId.Input: return(Input); case NanoChannelId.InputFeedback: return(InputFeedback); case NanoChannelId.Video: return(Video); default: throw new NotSupportedException($"Unsupported NanoChannelId: {id}"); } }
public InputChannelBase(NanoClient client, NanoChannelId id) : base(client, id) { }
public VideoChannelBase(NanoClient client, NanoChannelId id) : base(client, id) { }
public AudioChannelBase(NanoClient client, NanoChannelId id) : base(client, id) { }
private void HandleChannelClose(Packets.ChannelClose payload, ushort channelNumber) { NanoChannelId id = GetChannel(channelNumber); GetChannelById(id).OnChannelClosed(payload.Flags); }
public void HandleStreamer(Packets.Streamer streamer, ushort channelNumber) { NanoChannelId id = GetChannel(channelNumber); ((IStreamingChannel)GetChannelById(id)).OnStreamer(streamer); }