Пример #1
0
        public async Task DeleteAsync(UpdateMessage message)
        {
            var callbackQueryData = message.CallbackQuery.Data.Split(';');
            var occasionId        = callbackQueryData[1];
            var messageId         = message.CallbackQuery.Message.MessageId.ToString();

            var occasion = _occasionRepository.Find(x => x.RowKey == occasionId).FirstOrDefault();

            if (occasion == null)
            {
                return;
            }

            await _occasionRepository.DeleteAsync(occasion);

            var occasionsToDelete           = _occasionRepository.GetByChatId(occasion.ChatId).ToList();
            var updateDeleteOccasionMessage = TelegramMessageFactory.UpdateDeleteOccasionMessage(occasion.ChatId,
                                                                                                 messageId,
                                                                                                 occasionsToDelete);
            await _telegramClient.EditMessageText(updateDeleteOccasionMessage);

            await _telegramClient.AnswerCallbackQuery(new AnswerCallbackQuery
            {
                CallBackQueryId = message.CallbackQuery.Id,
                Text            = Messages.OccasionDeleted
            });
        }