diff options
| author | illia k <[email protected]> | 2017-05-22 22:49:07 +0300 |
|---|---|---|
| committer | Zeyla Hellyer <[email protected]> | 2017-05-22 12:49:07 -0700 |
| commit | 8f88c6b0613199492ebca8cd9f2bf4dd5c97add7 (patch) | |
| tree | ea2f86a016e8e6a4dc91f8b7492fcb716f946915 /src/model/channel/channel_id.rs | |
| parent | Add support for retrieving invites with counts (diff) | |
| download | serenity-8f88c6b0613199492ebca8cd9f2bf4dd5c97add7.tar.xz serenity-8f88c6b0613199492ebca8cd9f2bf4dd5c97add7.zip | |
Handle message type 7 (member join)
When message type 7 is received from the gateway, transform the content
if the type is 7 to a proper greeting.
Additionally, when the type is 6, provide a proper content notifying that a
user has pinned a message to the channel.
These transformations are not done at REST-level when retrieving messages, and
are instead done in `ChannelId::message` and `ChannelId::messages`.
Diffstat (limited to 'src/model/channel/channel_id.rs')
| -rw-r--r-- | src/model/channel/channel_id.rs | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/src/model/channel/channel_id.rs b/src/model/channel/channel_id.rs index 66bbbf3..46b00c6 100644 --- a/src/model/channel/channel_id.rs +++ b/src/model/channel/channel_id.rs @@ -255,6 +255,11 @@ impl ChannelId { #[inline] pub fn message<M: Into<MessageId>>(&self, message_id: M) -> Result<Message> { rest::get_message(self.0, message_id.into().0) + .map(|mut msg| { + msg.transform_content(); + + msg + }) } /// Gets messages from the channel. @@ -279,6 +284,13 @@ impl ChannelId { } rest::get_messages(self.0, &query) + .map(|msgs| msgs + .into_iter() + .map(|mut msg| { + msg.transform_content(); + + msg + }).collect::<Vec<Message>>()) } /// Pins a [`Message`] to the channel. |