Ejemplo n.º 1
0
        protected override async Task Handle(UnsubscribeUserRequest request, CancellationToken cancellationToken)
        {
            var chat = await _subscribedChatRepository.GetById(request.UserId);

            if (chat is null)
            {
                await _botMessageService.SendText("No te encuentras suscripto",
                                                  request.UserId,
                                                  request.ReplyToMessageId);
            }
            else
            {
                SubscribedChat subscribedChat = await _subscribedChatRepository.OpenSubscribedChat();

                subscribedChat.ChatId = request.UserId;

                await _subscribedChatRepository.Delete(subscribedChat);

                StringBuilder stringBuilder = new StringBuilder();
                stringBuilder.AppendLine("Es una pena que te vayas 😭");
                stringBuilder.AppendLine();
                stringBuilder.AppendLine("Pero recuerda que puedes volver a suscribirte cuando quieras para seguir recibiendo las últimas noticias de la comunidad. Hasta pronto!");

                await _botMessageService.SendText(stringBuilder.ToString(),
                                                  request.UserId,
                                                  request.ReplyToMessageId);
            }
        }
        protected override async Task Handle(SubscribeUserRequest request, CancellationToken cancellationToken)
        {
            var chat = await _subscribedChatRepository.GetById(request.UserId);

            if (chat is null)
            {
                SubscribedChat subscribedChat = await _subscribedChatRepository.OpenSubscribedChat();

                subscribedChat.ChatId = request.UserId;


                await _subscribedChatRepository.Insert(subscribedChat);

                StringBuilder stringBuilder = new StringBuilder();
                stringBuilder.AppendLine($"🎉 *Bienvenido/a* {request.UserFirstName} 🎉");
                stringBuilder.AppendLine();
                stringBuilder.AppendLine("Nos alegra que te hayas suscrito al bot de Latino .NET Online 🤖");
                stringBuilder.AppendLine();
                stringBuilder.AppendLine("A partir de ahora recibirás todas las noticias de la comunidad.");
                stringBuilder.AppendLine();
                stringBuilder.AppendLine("Estarás al tanto de los anuncios y recordatorios de nuestros próximos webinars📲, te  avisaremos cuando haya un nuevo artículo en nuestro blog, estarás al tanto de eventos de otras comunidades🤝🏻, y más! Todo en este mismo chat.");

                await _botMessageService.SendText(stringBuilder.ToString(),
                                                  request.UserId,
                                                  request.ReplyToMessageId);
            }
            else
            {
                await _botMessageService.SendText("Actualmente ya te encuentras suscripto. Que Bueno!",
                                                  request.UserId,
                                                  request.ReplyToMessageId);
            }
        }
Ejemplo n.º 3
0
        protected override async Task Handle(UnsubscribeChatRequest request, CancellationToken cancellationToken)
        {
            var chat = await _subscribedChatRepository.GetById(request.ChatId);

            if (chat != null)
            {
                SubscribedChat subscribedChat = await _subscribedChatRepository.OpenSubscribedChat();

                subscribedChat.ChatId = request.ChatId;

                await _subscribedChatRepository.Delete(subscribedChat);
            }
        }
 public Task Insert(SubscribedChat subscribedChat)
 {
     return(_db.InsertAsync(subscribedChat));
 }
 public Task Delete(SubscribedChat subscribedChat)
 {
     return(_db.DeleteAsync((Entities.SubscribedChat)subscribedChat));
 }