mirror of
https://github.com/LonamiWebs/Telethon.git
synced 2024-11-27 03:43:45 +03:00
b716c4fe67
- Made the documentation even more friendly towards newbies. - Eased the usage of methods like get history which now set a default empty message for message actions and vice versa. - Fixed some docstring documentations too. - Updated the old normal docs/ to link back and forth RTD. - Fixed the version of the documentation, now auto-loaded.
35 lines
1.3 KiB
Python
35 lines
1.3 KiB
Python
from . import Draft
|
|
from ... import utils
|
|
|
|
|
|
class Dialog:
|
|
"""
|
|
Custom class that encapsulates a dialog (an open "conversation" with
|
|
someone, a group or a channel) providing an abstraction to easily
|
|
access the input version/normal entity/message etc. The library will
|
|
return instances of this class when calling `client.get_dialogs()`.
|
|
"""
|
|
def __init__(self, client, dialog, entities, messages):
|
|
# Both entities and messages being dicts {ID: item}
|
|
self._client = client
|
|
self.dialog = dialog
|
|
self.pinned = bool(dialog.pinned)
|
|
self.message = messages.get(dialog.top_message, None)
|
|
self.date = getattr(self.message, 'date', None)
|
|
|
|
self.entity = entities[utils.get_peer_id(dialog.peer)]
|
|
self.input_entity = utils.get_input_peer(self.entity)
|
|
self.name = utils.get_display_name(self.entity)
|
|
|
|
self.unread_count = dialog.unread_count
|
|
self.unread_mentions_count = dialog.unread_mentions_count
|
|
|
|
self.draft = Draft(client, dialog.peer, dialog.draft)
|
|
|
|
def send_message(self, *args, **kwargs):
|
|
"""
|
|
Sends a message to this dialog. This is just a wrapper around
|
|
client.send_message(dialog.input_entity, *args, **kwargs).
|
|
"""
|
|
return self._client.send_message(self.input_entity, *args, **kwargs)
|