Explorar el Código

Deleting messages

Tigran hace 4 años
padre
commit
151aac6c53

+ 1 - 0
MafiaTelegramBot/Models/Inlines/ChaneNameQuery.cs

@@ -10,6 +10,7 @@ namespace MafiaTelegramBot.Models.Inlines
 
         public override async Task<Message> Execute(Update update)
         {
+            await DeletePreviousMessage(update.CallbackQuery.Message.Chat.Id, update.CallbackQuery.Message.MessageId);
             var chatId = update.CallbackQuery.Message.Chat.Id;
             var data = update.CallbackQuery.Data;
             var userId = long.Parse(data.Split('|')[1]);

+ 1 - 0
MafiaTelegramBot/Models/Inlines/LeaveQuery.cs

@@ -12,6 +12,7 @@ namespace MafiaTelegramBot.Models.Inlines
         protected override string Name => strings.leave_callback;
         public override async Task<Message> Execute(Update update)
         {
+            await DeletePreviousMessage(update.CallbackQuery.Message.Chat.Id, update.CallbackQuery.Message.MessageId);
             var chatId = update.CallbackQuery.Message.Chat.Id;
             await Bot.Get().SendChatActionAsync(chatId, ChatAction.Typing);
             var data = update.CallbackQuery.Data;

+ 1 - 0
MafiaTelegramBot/Models/Inlines/MakeExtendedGameQuery.cs

@@ -10,6 +10,7 @@ namespace MafiaTelegramBot.Models.Inlines
         protected override string Name => strings.extended_callback;
         public override async Task<Message> Execute(Update update)
         {
+            await DeletePreviousMessage(update.CallbackQuery.Message.Chat.Id, update.CallbackQuery.Message.MessageId);
             var chatId = update.CallbackQuery.Message.Chat.Id;
             await Bot.Get().SendChatActionAsync(chatId, ChatAction.Typing);
             var data = update.CallbackQuery.Data;

+ 1 - 0
MafiaTelegramBot/Models/Inlines/MakePrivateRoomQuery.cs

@@ -11,6 +11,7 @@ namespace MafiaTelegramBot.Models.Inlines
         protected override string Name => strings.make_private_room_callback;
         public override async Task<Message> Execute(Update update)
         {
+            await DeletePreviousMessage(update.CallbackQuery.Message.Chat.Id, update.CallbackQuery.Message.MessageId);
             var chatId = update.CallbackQuery.Message.Chat.Id;
             await Bot.Get().SendChatActionAsync(chatId, ChatAction.Typing);
             var data = update.CallbackQuery.Data;

+ 1 - 0
MafiaTelegramBot/Models/Inlines/MakePublicRoomQuery.cs

@@ -11,6 +11,7 @@ namespace MafiaTelegramBot.Models.Inlines
         protected override string Name => strings.make_public_room_callback;
         public override async Task<Message> Execute(Update update)
         { 
+            await DeletePreviousMessage(update.CallbackQuery.Message.Chat.Id, update.CallbackQuery.Message.MessageId);
             var chatId = update.CallbackQuery.Message.Chat.Id;
             await Bot.Get().SendChatActionAsync(chatId, ChatAction.Typing);
             var data = update.CallbackQuery.Data;

+ 1 - 0
MafiaTelegramBot/Models/Inlines/MakeStandartGameQuery.cs

@@ -10,6 +10,7 @@ namespace MafiaTelegramBot.Models.Inlines
         protected override string Name => strings.standart_callback;
         public override async Task<Message> Execute(Update update)
         {
+            await DeletePreviousMessage(update.CallbackQuery.Message.Chat.Id, update.CallbackQuery.Message.MessageId);
             var chatId = update.CallbackQuery.Message.Chat.Id;
             await Bot.Get().SendChatActionAsync(chatId, ChatAction.Typing);
             var data = update.CallbackQuery.Data;

+ 1 - 0
MafiaTelegramBot/Models/Inlines/MyRolesQuery.cs

@@ -10,6 +10,7 @@ namespace MafiaTelegramBot.Models.Inlines
 
         public override async Task<Message> Execute(Update update)
         {
+            await DeletePreviousMessage(update.CallbackQuery.Message.Chat.Id, update.CallbackQuery.Message.MessageId);
             var chatId = update.CallbackQuery.Message.Chat.Id;
             await Bot.Get().SendChatActionAsync(chatId, ChatAction.Typing);
             return await Bot.SendWithMarkdown2(chatId, Name);

+ 0 - 3
MafiaTelegramBot/Models/Inlines/Query.cs

@@ -13,9 +13,6 @@ namespace MafiaTelegramBot.Models.Inlines
         {
             var data = update.CallbackQuery.Data;
             var command = data.Split('|')[0];
-            var messageId = update.CallbackQuery.Message.MessageId;
-            var chatId = update.CallbackQuery.Message.Chat.Id;
-            Bot.Get().DeleteMessageAsync(chatId, messageId);
             var queries = Bot.Queries;
             return FirstOrDefault(queries, command).Execute(update);
         }

+ 1 - 0
MafiaTelegramBot/Models/Inlines/SettingsQuery.cs

@@ -12,6 +12,7 @@ namespace MafiaTelegramBot.Models.Inlines
 
         public override async Task<Message> Execute(Update update)
         {
+            await DeletePreviousMessage(update.CallbackQuery.Message.Chat.Id, update.CallbackQuery.Message.MessageId);
             var chatId = update.CallbackQuery.Message.Chat.Id;
             await Bot.Get().SendChatActionAsync(chatId, ChatAction.Typing);
             var userId = update.CallbackQuery.From.Id;

+ 1 - 0
MafiaTelegramBot/Models/Inlines/SettingsRoomQuery.cs

@@ -13,5 +13,6 @@ namespace MafiaTelegramBot.Models.Inlines
             await Bot.Get().SendChatActionAsync(chatId, ChatAction.Typing);
             return await Bot.SendWithMarkdown2(chatId, strings.settings_room);
         }
+
     }
 }

+ 1 - 0
MafiaTelegramBot/Models/Inlines/ShopQuery.cs

@@ -10,6 +10,7 @@ namespace MafiaTelegramBot.Models.Inlines
 
         public override async Task<Message> Execute(Update update)
         {
+            await DeletePreviousMessage(update.CallbackQuery.Message.Chat.Id, update.CallbackQuery.Message.MessageId);
             var chatId = update.CallbackQuery.Message.Chat.Id;
             await Bot.Get().SendChatActionAsync(chatId, ChatAction.Typing);
             return await Bot.SendWithMarkdown2(chatId, Name);

+ 6 - 1
MafiaTelegramBot/Models/UpdateModel.cs

@@ -8,7 +8,7 @@ namespace MafiaTelegramBot.Models
     public abstract class UpdateModel
     {
         protected abstract string Name { get; }
-        
+
         public abstract Task<Message> Execute(Update update);
 
         protected virtual bool Contains(string command)
@@ -22,5 +22,10 @@ namespace MafiaTelegramBot.Models
                 where item.Contains(data)
                 select item).FirstOrDefault();
         }
+
+        protected static async Task DeletePreviousMessage(long chatId, int messageId)
+        {
+            await Bot.Get().DeleteMessageAsync(chatId, messageId);
+        }
     }
 }