Exemplo n.º 1
0
        public async Task Subscribe <TNotificationData>(ISocketSubscriptionRequest socketRequest, Action <TNotificationData> callback) where TNotificationData : class
        {
            await Connect();

            var socketAction = new SocketSubscriptionAction(socketRequest);

            socketAction.ResponseReceived += (o, e) =>
            {
                var socketNotification = ApiExtensions.DecodeSocketNotification <TNotificationData>(e.Message);
                if (socketNotification.ErrorData != null)
                {
                    throw new ConnectorException($"{socketNotification.ErrorData.Message}. {socketNotification.ErrorData.Description}");
                }
                callback(socketNotification.NotificationParameters);
            };
            RunAction(socketAction);
        }
Exemplo n.º 2
0
 public SocketSubscriptionAction(ISocketSubscriptionRequest socketRequest) : base((SocketRequest)socketRequest)
 {
 }