mirror of
https://github.com/profanity-im/profanity.git
synced 2024-11-03 19:37:16 -05:00
Moved room join stanza creation
This commit is contained in:
parent
d2497b2e92
commit
187ea6e8b8
16
src/jabber.c
16
src/jabber.c
@ -234,20 +234,8 @@ jabber_subscribe(const char * const recipient)
|
|||||||
void
|
void
|
||||||
jabber_join(const char * const room_jid, const char * const nick)
|
jabber_join(const char * const room_jid, const char * const nick)
|
||||||
{
|
{
|
||||||
GString *to = g_string_new(room_jid);
|
xmpp_stanza_t *presence = stanza_create_room_presence(jabber_conn.ctx,
|
||||||
g_string_append(to, "/");
|
room_jid, nick);
|
||||||
g_string_append(to, nick);
|
|
||||||
|
|
||||||
xmpp_stanza_t *presence = xmpp_stanza_new(jabber_conn.ctx);
|
|
||||||
xmpp_stanza_set_name(presence, STANZA_NAME_PRESENCE);
|
|
||||||
xmpp_stanza_set_attribute(presence, STANZA_ATTR_TO, to->str);
|
|
||||||
|
|
||||||
xmpp_stanza_t *x = xmpp_stanza_new(jabber_conn.ctx);
|
|
||||||
xmpp_stanza_set_name(x, STANZA_NAME_X);
|
|
||||||
xmpp_stanza_set_ns(x, STANZA_NS_MUC);
|
|
||||||
|
|
||||||
xmpp_stanza_add_child(presence, x);
|
|
||||||
|
|
||||||
xmpp_send(jabber_conn.conn, presence);
|
xmpp_send(jabber_conn.conn, presence);
|
||||||
xmpp_stanza_release(presence);
|
xmpp_stanza_release(presence);
|
||||||
|
|
||||||
|
21
src/stanza.c
21
src/stanza.c
@ -78,3 +78,24 @@ stanza_create_message(xmpp_ctx_t *ctx, const char * const recipient,
|
|||||||
return msg;
|
return msg;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
xmpp_stanza_t *
|
||||||
|
stanza_create_room_presence(xmpp_ctx_t *ctx, const char * const room,
|
||||||
|
const char * const nick)
|
||||||
|
{
|
||||||
|
GString *to = g_string_new(room);
|
||||||
|
g_string_append(to, "/");
|
||||||
|
g_string_append(to, nick);
|
||||||
|
|
||||||
|
xmpp_stanza_t *presence = xmpp_stanza_new(ctx);
|
||||||
|
xmpp_stanza_set_name(presence, STANZA_NAME_PRESENCE);
|
||||||
|
xmpp_stanza_set_attribute(presence, STANZA_ATTR_TO, to->str);
|
||||||
|
|
||||||
|
xmpp_stanza_t *x = xmpp_stanza_new(ctx);
|
||||||
|
xmpp_stanza_set_name(x, STANZA_NAME_X);
|
||||||
|
xmpp_stanza_set_ns(x, STANZA_NS_MUC);
|
||||||
|
|
||||||
|
xmpp_stanza_add_child(presence, x);
|
||||||
|
|
||||||
|
return presence;
|
||||||
|
}
|
||||||
|
|
||||||
|
@ -74,4 +74,7 @@ xmpp_stanza_t* stanza_create_chat_state(xmpp_ctx_t *ctx,
|
|||||||
xmpp_stanza_t* stanza_create_message(xmpp_ctx_t *ctx,
|
xmpp_stanza_t* stanza_create_message(xmpp_ctx_t *ctx,
|
||||||
const char * const recipient, const char * const type,
|
const char * const recipient, const char * const type,
|
||||||
const char * const message, const char * const state);
|
const char * const message, const char * const state);
|
||||||
|
|
||||||
|
xmpp_stanza_t* stanza_create_room_presence(xmpp_ctx_t *ctx,
|
||||||
|
const char * const room, const char * const nick);
|
||||||
#endif
|
#endif
|
||||||
|
Loading…
Reference in New Issue
Block a user