Пример #1
0
        public void OnMessage(object sender, MessageReceivedEventArgs <INanoPacket> args)
        {
            StreamerMessageWithHeader streamer = args.Message as StreamerMessageWithHeader;
            ControlOpCode             opCode   = streamer.ControlHeader.OpCode;

            switch (opCode)
            {
            case ControlOpCode.NetworkTestResponse:
                OnNetworkTestResponse(streamer as NetworkTestResponse);
                break;

            case ControlOpCode.RealtimeTelemetry:
                OnRealtimeTelemetry(streamer as RealtimeTelemetry);
                break;

            case ControlOpCode.InitiateNetworkTest:
            case ControlOpCode.NetworkInformation:
            case ControlOpCode.SessionCreate:
            case ControlOpCode.SessionCreateResponse:
            case ControlOpCode.SessionDestroy:
            case ControlOpCode.SessionInit:
            case ControlOpCode.VideoStatistics:
            case ControlOpCode.ChangeVideoQuality:
            case ControlOpCode.ControllerEvent:
                throw new NotImplementedException(
                          $"Invalid control message received: {opCode}");
            }
        }
Пример #2
0
        private Task SendControlPacket(StreamerMessageWithHeader packet,
                                       ushort unknown1 = 1, ushort unknown2 = 1406)
        {
            packet.ControlHeader.Unknown1         = unknown1;
            packet.ControlHeader.Unknown2         = unknown2;
            packet.ControlHeader.PreviousSequence = SequenceNumber;

            return(SendAsync(packet));
        }