diff --git a/telethon/client/chats.py b/telethon/client/chats.py index ef7a10cb..dfbeddcc 100644 --- a/telethon/client/chats.py +++ b/telethon/client/chats.py @@ -22,6 +22,7 @@ class _ChatAction: 'contact': types.SendMessageChooseContactAction(), 'game': types.SendMessageGamePlayAction(), 'location': types.SendMessageGeoLocationAction(), + 'sticker': types.SendMessageChooseStickerAction(), 'record-audio': types.SendMessageRecordAudioAction(), 'record-voice': types.SendMessageRecordAudioAction(), # alias @@ -773,6 +774,7 @@ class ChatMethods: * ``'contact'``: choosing a contact. * ``'game'``: playing a game. * ``'location'``: choosing a geo location. + * ``'sticker'``: choosing a sticker. * ``'record-audio'``: recording a voice note. You may use ``'record-voice'`` as alias. * ``'record-round'``: recording a round video. diff --git a/telethon/events/userupdate.py b/telethon/events/userupdate.py index c0a07619..e0179f01 100644 --- a/telethon/events/userupdate.py +++ b/telethon/events/userupdate.py @@ -136,6 +136,7 @@ class UserUpdate(EventBuilder): """ return isinstance(self.action, ( types.SendMessageChooseContactAction, + types.SendMessageChooseStickerAction, types.SendMessageUploadAudioAction, types.SendMessageUploadDocumentAction, types.SendMessageUploadPhotoAction, @@ -228,6 +229,14 @@ class UserUpdate(EventBuilder): """ return isinstance(self.action, types.SendMessageUploadDocumentAction) + @property + @_requires_action + def sticker(self): + """ + `True` if what's being uploaded is a sticker. + """ + return isinstance(self.action, types.SendMessageChooseStickerAction) + @property @_requires_action def photo(self):