Ich versuche, eine Nachricht mit Hilfe der Telegramm-API und Telethon zu löschen.Telethon: eine Nachricht löschen
Hier ist mein Code:
from telethon import InteractiveTelegramClient
from telethon.tl.types.input_peer_channel import InputPeerChannel
from telethon.tl.functions.messages.delete_messages import DeleteMessagesRequest
#...
total_count, messages, senders = client.get_message_history(
chat, limit=1)
msg = messages[0]
result = client.invoke(DeleteMessagesRequest([msg.id]))
Vor allem aber nichts passiert, und zweitens ist es nicht richtig angezeigt werden, da msg.id wie 5 oder 220 ist und es wie ein schaut nicht einzigartige Nummer. Hier
ist die Botschaft:
msg: (message (ID: 0xc09bexxx) = (out=None, mentioned=None, media_unread=None, silent=None, post=True, id=5, from_id=None, to_id=(peerChannel (ID: 0xbdddexxx) = (channel_id=1234)), fwd_from=None, via_bot_id=None, reply_to_msg_id=None, date=2017-06-14 14:39:23, message=test33, media=None, reply_markup=None, entities=None, views=1, edit_date=None))
ich auch mit der Hex-Zahl versucht 0xc09bexxx aber, dass eine Ausnahme gibt.
Also, wie kann ich eine Nachricht in einem Kanal löschen?
Bisher habe ich mir diese github issue angesehen, um mit der Löschmeldung zu beginnen. Meine Vermutung ist, dass der folgende Import vielleicht nicht der richtige ist und ich die Version in das Channels-Paket importieren sollte, das eine Kanal-ID und eine Nachrichten-ID erhält?
from telethon.tl.functions.messages.delete_messages import DeleteMessagesRequest