about summary refs log tree commit diff stats
path: root/src/jabber.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/jabber.c')
-rw-r--r--src/jabber.c15
1 files changed, 15 insertions, 0 deletions
diff --git a/src/jabber.c b/src/jabber.c
index 766c78bf..2df36417 100644
--- a/src/jabber.c
+++ b/src/jabber.c
@@ -280,6 +280,21 @@ jabber_subscribe(const char * const recipient)
 }
 
 void
+jabber_join(const char * const room_jid, const char * const nick)
+{
+    xmpp_stanza_t *presence = xmpp_stanza_new(jabber_conn.ctx);
+    xmpp_stanza_set_name(presence, "presence");
+
+    GString *to = g_string_new(room_jid);
+    g_string_append(to, "/");
+    g_string_append(to, nick);
+
+    xmpp_stanza_set_attribute(presence, "to", to->str);
+    xmpp_send(jabber_conn.conn, presence);
+    xmpp_stanza_release(presence);
+}
+
+void
 jabber_update_presence(jabber_presence_t status, const char * const msg)
 {
     jabber_conn.presence = status;