Ejemplo n.º 1
0
        public async Task <MessageTextForEditDto> CheckCallback(CallbackQueryDto incomingCallbackDto)
        {
            var command = incomingCallbackDto.Data.ToLower();
            var userId  = incomingCallbackDto.From.Id;
            MessageTextForEditDto messageTextForEdit = null;

            if (command.Equals(@"/backward"))
            {
                messageTextForEdit = await _backwardRepository.GetBackwardMessageTextForEditView(userId);

                if (messageTextForEdit == null)
                {
                    command = await _backwardRepository.GetBackwardCommand(userId);

                    incomingCallbackDto.Data = command;
                }
            }

            if (commands.Contains(command))
            {
                switch (command)
                {
                case @"/?":
                    return(await _view.QuestionView(incomingCallbackDto.Message));

                case @"/about":
                    return(await _view.AboutView(incomingCallbackDto.Message));
                }
                ;
            }
            return(messageTextForEdit);
        }
Ejemplo n.º 2
0
        public static bool isEqual(
            this MessageTextForEditDto messageTextForEditDto,
            MessageDto incomingMessageDto)
        {
            return((messageTextForEditDto.ChatId == incomingMessageDto.Chat.Id) &&
                   (messageTextForEditDto.MessageId == incomingMessageDto.Id) &&
                   (messageTextForEditDto.Text.ToLower().Equals(incomingMessageDto.Text)) &&
                   (messageTextForEditDto.ReplyMarkup == incomingMessageDto.ReplyMarkup));

/*                 (JsonConvert.SerializeObject(messageTextForEditDto.ReplyMarkup).Equals(
 *                  JsonConvert.SerializeObject(incomingMessageDto.)
 *              ) */
        }
        public async Task <string> SendView(
            MessageTextForEditDto messageForSendDto,
            CallbackQueryDto incomingCallbackDto)
        {
            var userId = incomingCallbackDto.From.Id;

            if (messageForSendDto.isEqual(incomingCallbackDto.Message))
            {
                return("");
            }
            var response = await _telegramRequest.SendChangeMessage(messageForSendDto) ?? "";

            //await _backwardRepository.SetBackwardView(userId, messageForSendDto);
            await _logger.LogSentToUser(messageForSendDto);

            return(response);
        }
Ejemplo n.º 4
0
 public async Task LogSentToUser(MessageTextForEditDto messageDto)
 {
     await LogInformation("Was SENT TO USER\n" + messageDto.GetDump());
 }
Ejemplo n.º 5
0
        public async Task <string> SendChangeMessage(MessageTextForEditDto messageTextForEdit)
        {
            string url = GetUrl("editMessageText");

            return(await SendRequest(url, messageTextForEdit));
        }