about summary refs log tree commit diff stats
diff options
context:
space:
mode:
authorJames Booth <boothj5@gmail.com>2012-11-08 23:44:09 +0000
committerJames Booth <boothj5@gmail.com>2012-11-08 23:44:09 +0000
commitf167fdd55d68586c4b590e11f28997d4ee906579 (patch)
tree7dda4492c831203eb3c49182c776e63470c92189
parentf90d13bd5e805968dffd7905547f099aeea17e52 (diff)
downloadprofani-tty-f167fdd55d68586c4b590e11f28997d4ee906579.tar.gz
Use stanza module to create groupchat messages
-rw-r--r--src/jabber.c25
-rw-r--r--src/stanza.c2
2 files changed, 5 insertions, 22 deletions
diff --git a/src/jabber.c b/src/jabber.c
index dd86a6e5..9f33bcbd 100644
--- a/src/jabber.c
+++ b/src/jabber.c
@@ -167,28 +167,11 @@ jabber_send(const char * const msg, const char * const recipient)
 void
 jabber_send_groupchat(const char * const msg, const char * const recipient)
 {
-    char *encoded_xml = encode_xml(msg);
+    xmpp_stanza_t *message = stanza_create_message(jabber_conn.ctx, recipient,
+        "groupchat", msg, NULL);
 
-    xmpp_stanza_t *reply, *body, *text;
-
-    reply = xmpp_stanza_new(jabber_conn.ctx);
-    xmpp_stanza_set_name(reply, "message");
-    xmpp_stanza_set_type(reply, "groupchat");
-    xmpp_stanza_set_attribute(reply, "to", recipient);
-
-    body = xmpp_stanza_new(jabber_conn.ctx);
-    xmpp_stanza_set_name(body, "body");
-
-    text = xmpp_stanza_new(jabber_conn.ctx);
-    xmpp_stanza_set_text(text, encoded_xml);
-
-    xmpp_stanza_add_child(body, text);
-    xmpp_stanza_add_child(reply, body);
-
-    xmpp_send(jabber_conn.conn, reply);
-    xmpp_stanza_release(reply);
-
-    free(encoded_xml);
+    xmpp_send(jabber_conn.conn, message);
+    xmpp_stanza_release(message);
 }
 
 void
diff --git a/src/stanza.c b/src/stanza.c
index 2faab652..5cb09d3e 100644
--- a/src/stanza.c
+++ b/src/stanza.c
@@ -54,7 +54,7 @@ stanza_create_message(xmpp_ctx_t *ctx, const char * const recipient,
 
     msg = xmpp_stanza_new(ctx);
     xmpp_stanza_set_name(msg, "message");
-    xmpp_stanza_set_type(msg, "chat");
+    xmpp_stanza_set_type(msg, type);
     xmpp_stanza_set_attribute(msg, "to", recipient);
 
     body = xmpp_stanza_new(ctx);