Telethon/telethon/events/__init__.py

36 lines
1.2 KiB
Python
Raw Normal View History

from .raw import Raw
2018-04-05 21:14:22 +03:00
from .chataction import ChatAction
from .messagedeleted import MessageDeleted
from .messageedited import MessageEdited
from .messageread import MessageRead
from .newmessage import NewMessage
from .userupdate import UserUpdate
2018-07-10 17:03:30 +03:00
from .callbackquery import CallbackQuery
2018-07-15 12:31:14 +03:00
from .inlinequery import InlineQuery
2018-03-28 16:52:35 +03:00
class StopPropagation(Exception):
"""
If this exception is raised in any of the handlers for a given event,
it will stop the execution of all other registered event handlers.
It can be seen as the ``StopIteration`` in a for loop but for events.
Example usage:
2018-04-05 21:14:22 +03:00
>>> from telethon import TelegramClient, events
>>> client = TelegramClient(...)
>>>
>>> @client.on(events.NewMessage)
... async def delete(event):
... await event.delete()
... # No other event handler will have a chance to handle this event
... raise StopPropagation
...
>>> @client.on(events.NewMessage)
... async def _(event):
... # Will never be reached, because it is the second handler
... pass
"""
# For some reason Sphinx wants the silly >>> or
# it will show warnings and look bad when generated.
pass