Esempio n. 1
0
        void ServerCommandReceived(object sender, CommandMessageReceivedEventArgs e)
        {
            RtmpClient client = (RtmpClient)sender;

            switch (e.Message.Operation)
            {
            case CommandOperation.Login:
                AcknowledgeMessageExt login = new AcknowledgeMessageExt
                {
                    Body          = "success",
                    CorrelationId = e.Message.MessageId,
                    MessageId     = Uuid.NewUuid(),
                    ClientId      = Uuid.NewUuid(),
                    Headers       = new AsObject
                    {
                        { "DSMessagingVersion", 1.0 },
                        { FlexMessageHeaders.FlexClientId, e.DSId }
                    }
                };

                client.InvokeResult(e.InvokeId, login);
                break;

            case CommandOperation.Subscribe:
                AcknowledgeMessageExt subscribe = new AcknowledgeMessageExt
                {
                    Body          = null,
                    CorrelationId = e.Message.MessageId,
                    MessageId     = Uuid.NewUuid(),
                    ClientId      = e.Message.ClientId
                };

                client.InvokeResult(e.InvokeId, subscribe);
                break;

            case CommandOperation.Unsubscribe:
                break;

            case CommandOperation.ClientPing:
                break;

            case CommandOperation.Logout:
                break;

            default:
                throw new NotSupportedException();
            }

            ClientCommandReceived?.Invoke(sender, e);
        }
Esempio n. 2
0
 void ServerMessageReceived(object sender, RemotingMessageReceivedEventArgs e)
 {
     if (ClientMessageReceived != null)
     {
         ClientMessageReceived(sender, e);
         if (e.ReturnRequired)
         {
             RtmpClient client = (RtmpClient)sender;
             client.InvokeResult(e.InvokeId, e.MessageId, e.Data);
         }
     }
 }