예제 #1
0
        private async Task TrackAsync(NewMemberEvent @event)
        {
            _logger.LogInformation("Receive new event {@NewMemberEvent} ...", @event);
            await Task.Delay(10000);

            _logger.LogInformation("Event processed {@NewMemberEvent} successfully.", @event);
        }
예제 #2
0
        public async Task JoinAsync(bool isNew)
        {
            var @event = new NewMemberEvent {
                NotifyText = isNew.ToString()
            };

            _logger.LogInformation("Publish new event {@NewMemberEvent} ...", @event);
            _mediator.Publish(@event);

            await Task.Delay(1);

            // Do something here
            _logger.LogInformation("Event published successfully. ===> {@NewMemberEvent}", @event);
        }
예제 #3
0
        public async Task NewMemberEvent(KahlaUser receiver, KahlaUser newMember, int conversationId)
        {
            var token = await _appsContainer.AccessToken();

            var channel        = receiver.CurrentChannel;
            var newMemberEvent = new NewMemberEvent
            {
                NewMember      = newMember,
                ConversationId = conversationId
            };

            if (channel > 0)
            {
                _cannonService.FireAsync <PushMessageService>(s => s.PushMessageAsync(token, channel, newMemberEvent));
            }
        }
예제 #4
0
        public async Task NewMemberEvent(KahlaUser receiver, KahlaUser newMember, int conversationId)
        {
            var token = await _appsContainer.AccessToken();

            var channel        = receiver.CurrentChannel;
            var newMemberEvent = new NewMemberEvent
            {
                NewMember      = newMember,
                ConversationId = conversationId
            };

            if (channel != -1)
            {
                await _stargatePushService.PushMessageAsync(token, channel, JsonConvert.SerializeObject(newMemberEvent), true);
            }
        }
예제 #5
0
 public async Task Handle(NewMemberEvent @event, CancellationToken cancellationToken)
 {
     await TrackAsync(@event);
 }