protected override async Task Handle(AnnouncementNextEventRequest request, CancellationToken cancellationToken)
        {
            var @event = await _eventService.GetNextEventAsync();

            if (@event != null && @event.Date > DateTime.Now.ToUniversalTime())
            {
                var chats = await _subscribedChatRepository.GetAll();

                foreach (var chat in chats)
                {
                    var nextEventImageRequest = new SendNextEventImageRequest(chat.ChatId, new Uri(@event.ImageUrl), null);

                    var nextEventImageResponse = await _mediator.Send(nextEventImageRequest);

                    var nextEventTextRequest = new SendNextEventTextRequest(chat.ChatId, nextEventImageResponse.MessageId, @event);

                    await _mediator.Send(nextEventTextRequest);
                }
            }
        }
Пример #2
0
        protected override async Task Handle(AnnouncementHourLeftRequest request, CancellationToken cancellationToken)
        {
            var @event = await _eventService.GetNextEventAsync();

            if (@event != null && @event.Date > DateTime.Now.ToUniversalTime())
            {
                var chats = await _subscribedChatRepository.GetAll();

                StringBuilder stringBuilder = new StringBuilder();
                stringBuilder.AppendLine("💥En 1 Hora Webinar💥");
                stringBuilder.AppendLine();
                stringBuilder.AppendLine("No olvides registrarte!!");
                stringBuilder.AppendLine();
                stringBuilder.AppendLine("https://latinonet.online/links#registro");

                foreach (var chat in chats)
                {
                    SendNextEventImageRequest sendEventImageRequest = new SendNextEventImageRequest(chat.ChatId, new Uri(@event.ImageUrl), null);
                    var sendEventImageResponse = await _mediator.Send(sendEventImageRequest);

                    await _botMessageService.SendText(stringBuilder.ToString(), chat.ChatId, sendEventImageResponse.MessageId);
                }
            }
        }