Example #1
0
        public void Send()
        {
            _ref          = _channel.Socket.MakeRef();
            _refEvent     = _channel.ReplyEventName(_ref);
            _receivedResp = null;
            _sent         = false;

            _channel.On(_refEvent, (payload, reference) =>
            {
                _receivedResp = payload;
                MatchReceive(payload);
                CancelRefEvent();
                CancelAfter();
            });

            StartAfter();
            _sent = true;

            var env = new Envelope()
            {
                Topic   = _channel.Topic,
                Event   = _event,
                Payload = _payload,
                Ref     = _ref,
            };

            _channel.Socket.Push(env);
        }