aboutsummaryrefslogtreecommitdiff
path: root/src/model/channel/channel_id.rs
diff options
context:
space:
mode:
authorillia k <[email protected]>2017-05-22 22:49:07 +0300
committerZeyla Hellyer <[email protected]>2017-05-22 12:49:07 -0700
commit8f88c6b0613199492ebca8cd9f2bf4dd5c97add7 (patch)
treeea2f86a016e8e6a4dc91f8b7492fcb716f946915 /src/model/channel/channel_id.rs
parentAdd support for retrieving invites with counts (diff)
downloadserenity-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.rs12
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.