2017-02-15 1 views
1

Mein Telegramm Bot, die in C# mit NetTelegramBotApi Bibliothek programmiert ist, ist einer der drei Admins meines Kanals und wenn ich den Bot, funktioniert es einfach naja bis ein anderer admin (human-admin nicht bot-admin) einen post an den channel sendet.Channel AdminTelegram Bot stoppt die Updates nach einem anderen Admin sendet einen Beitrag an den Kanal

Der Bot hört auf, die Updates zu erhalten und beantwortet sie nach Human-Admin-Beiträge auf den Kanal.

Dies ist ein Stück Code, der die Post in meinem Kanal sendet:

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; 
} 

Weitere Informationen Chid ist die Chat-ID für mein Bot und den Kanal und meine Bot überprüft, ob der Bot-User ist einer der menschlichen Admins oder nicht. Und wenn der Benutzer ein Kanaladministrator ist, sendet der Bot den Beitrag an den Kanal.

Bitte helfen Sie mir, dieses Problem zu beheben.

Antwort

3

Das Problem genau in Ihrem bekommen Updates-Code.

Zum einen wie Sie wissen Bots können keine Nachrichten von anderen Bots empfangen, so ist dies Grund, warum Beitrag der Bot-admin gut gemacht.
Und zweitens sollten Sie auf jeden Fall sicher sein, dass alle Arten von Updates behandelt werden, wenn es sie bekommt. Ein häufiges Szenario mit einem solchen Problem ist eine falsche Überprüfung auf Aktualisierungstypen.

In Ihrem Fall sollte überprüfen, alle update für channel_post oder edited_channel_post Typen, weil jetzt ist es in Ihrem Code übersprungen und bietet eine Ausnahme auslöst, wenn Aktualisierung mit diesen Arten von Aktualisierungs-Objekt bekommt.

Beachten Sie auch, dass Ausnahmen in allen Fällen abgefangen werden müssen, wenn Ihr Bot nicht gelöscht werden soll.

+0

Vielen Dank für Ihre Hilfe, Sie haben Recht. –

+0

@ Naser.Sadeghi Kann ich U kontaktieren? Bitte besorg mir deine Mail. thnks –

+0

@HosseinGanjyar Was ist das Problem? Kann ich helfen? –

Verwandte Themen