diff --git a/telethon/events/callbackquery.py b/telethon/events/callbackquery.py index 798f2ac3..b1df3918 100644 --- a/telethon/events/callbackquery.py +++ b/telethon/events/callbackquery.py @@ -1,4 +1,5 @@ import re +import struct from .common import EventBuilder, EventCommon, name_inner_event from .. import utils @@ -43,9 +44,14 @@ class CallbackQuery(EventBuilder): @classmethod def build(cls, update): - if isinstance(update, (types.UpdateBotCallbackQuery, - types.UpdateInlineBotCallbackQuery)): - event = cls.Event(update) + if isinstance(update, types.UpdateBotCallbackQuery): + event = cls.Event(update, update.peer, update.msg_id) + elif isinstance(update, types.UpdateInlineBotCallbackQuery): + # See https://github.com/LonamiWebs/Telethon/pull/1005 + # The long message ID is actually just msg_id + peer_id + mid, pid = struct.unpack('