diff options
author | Ashelyn Rose <git@ashen.earth> | 2024-11-10 12:52:02 -0700 |
---|---|---|
committer | Ashelyn Rose <git@ashen.earth> | 2024-11-10 12:52:02 -0700 |
commit | 66208d1d9fcd32a88dcd9ecba13e87723812028a (patch) | |
tree | a3a080fa136c50e7d160f79c1b83a58e5d3e418d /src/system/bot/client.rs | |
parent | 058fb241e4373e083f1ab706904bd601abbf509a (diff) |
Implement nick command
Diffstat (limited to 'src/system/bot/client.rs')
-rw-r--r-- | src/system/bot/client.rs | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/src/system/bot/client.rs b/src/system/bot/client.rs index a2d1b28..19fcbe6 100644 --- a/src/system/bot/client.rs +++ b/src/system/bot/client.rs @@ -23,6 +23,20 @@ impl Client { } } + pub async fn set_nick<'a>(&self, server_id: ServerId, nick: &'a str) -> Result<(), TwiError> { + let client = self.client.lock().await; + + let current_user = client.current_user() + .await?.model().await.expect("Could not retrieve current user"); + + client + .update_guild_member(server_id, current_user.id) + .nick(Some(nick)).expect("Invalid nick") + .await?; + + Ok(()) + } + pub async fn fetch_message(&self, message_id: MessageId, channel_id: ChannelId) -> FullMessage { let client = self.client.lock().await; |