Moved the optionality of the nickname to Agent instead of the lower-level method.

This commit is contained in:
Werner Kroneman 2024-03-03 20:35:27 +01:00
parent 857115d0de
commit ffff9ae618
2 changed files with 6 additions and 5 deletions

View File

@ -36,7 +36,9 @@ impl<C: ServerConnector> Agent<C> {
lang: &str,
status: &str,
) {
muc::room::join_room(self, room, nick, password, lang, status).await
// Use the provided nickname, or the default if none.
let nick = nick.unwrap_or_else(|| self.default_nick.read().unwrap().to_string());
muc::room::join_room(self, room, &nick, password, lang, status).await
}
/// Request to leave a chatroom.

View File

@ -13,19 +13,18 @@ use tokio_xmpp::{
BareJid,
};
use crate::{Agent, RoomNick};
use crate::agent::TokioXmppClient;
use crate::{Agent, RoomNick};
pub async fn join_room<C: ServerConnector>(
agent: &mut Agent<C>,
room: BareJid,
nick: Option<String>,
nick: &String,
password: Option<String>,
lang: &str,
status: &str,
) {
let nick = nick.unwrap_or_else(|| agent.default_nick.read().unwrap().clone());
let presence = create_muc_join_presence_stanza(room, password, lang, status, &nick);
let presence = create_muc_join_presence_stanza(room, password, lang, status, nick);
let _ = agent.client.send_stanza(presence.into()).await;
}