2017-02-15 24 views
1

Мой бот телеграммы, который запрограммирован в C# с использованием библиотеки NetTelegramBotApi, является одним из трех админов моего канала, и когда я запускаю бота, он просто работает ну, пока другой администратор (human-admin not bot-admin) не отправит сообщение на канал.Канал adminTelegram бот перестает получать обновления после того, как другой администратор отправляет сообщение на канал

Бот перестает получать обновления и отвечает на них после сообщений человека-администратора на канал.

Этот кусок кода, который отправляет почту на мой канал:

if(update.Message.Chat.Username == "xxxx" || update.Message.Chat.Username == "yyyy") 
{ 
var req = new SendMessage(ChID, text) { ParseMode = SendMessage.ParseModeEnum.HTML, DisableWebPagePreview = true }; 
await bot.MakeRequestAsync(req); 
var req2 = new SendMessage(update.Message.Chat.Id, "✅Your post was sent successfully.✅"); 
await bot.MakeRequestAsync(req2); 
continue; 
} 

Для получения дополнительной информации чида является чат ID для моего бота и канала, и мой бот проверяет, является ли бот-пользователь является одним из админов человека или нет. И если пользователь является администратором канала, бот отправляет сообщение на канал.

Пожалуйста, помогите мне исправить эту проблему.

ответ

3

Проблема именно в получении кода обновления.

Во-первых,, поскольку вы знаете, что боты не могут получать сообщения от других ботов, поэтому это причина, по которой сообщение бот-администратора хорошо сделано.
И во-вторых вы должны быть уверены, что все типы обновлений обрабатываются, когда они получат их. Часто сценарий с такой проблемой неверен для проверки типов обновлений.

В вашем случае следует проверить все update для channel_post или edited_channel_post типов, потому что теперь он пропустил в своем коде и боты выбрасывает исключение, когда получают обновления с этими типами объектов обновлений.

Также обратите внимание, что для исключения бота необходимо исключить исключения во всех случаях.

+0

Спасибо за вашу помощь. Вы правы. –

+0

@ Naser.Sadeghi Могу ли я связаться с U? пожалуйста, напишите мне свою почту. thnks –

+0

@HosseinGanjyar В чем проблема? Могу ли я помочь? –