Simple parser for CHANNEL_PINS_UPDATE

This commit is contained in:
Ian Salmons 2017-01-09 01:07:28 +00:00 committed by Rapptz
parent b09f25293b
commit c635ce2526
2 changed files with 13 additions and 0 deletions

View File

@ -390,6 +390,11 @@ class ConnectionState:
self.dispatch('channel_create', channel)
def parse_channel_pins_update(self, data):
channel = self.get_channel(int(data['channel_id']))
last_pin = utils.parse_time(data['last_pin_timestamp']) if data['last_pin_timestamp'] else None
self.dispatch('channel_pins_update', channel, last_pin)
def parse_channel_recipient_add(self, data):
channel = self._get_private_channel(int(data['channel_id']))
user = self.store_user(data['user'])

View File

@ -263,6 +263,14 @@ to handle it, which defaults to print a traceback and ignore the exception.
:param before: The :class:`Channel` that got updated with the old info.
:param after: The :class:`Channel` that got updated with the updated info.
.. function:: on_channel_pins_update(channel, last_pin)
Called whenever a message is pinned or unpinned from a channel.
:param channel: The :class:`Channel` that had it's pins updated.
:param last_pin: A ``datetime.datetime`` object representing when the latest message
was pinned or ``None`` if there are no pins.
.. function:: on_member_join(member)
on_member_remove(member)