static void _presence_leave_chat_room(const char * const room_jid) { assert(room_jid != NULL); log_debug("Sending room leave presence to: %s", room_jid); xmpp_ctx_t *ctx = connection_get_ctx(); xmpp_conn_t *conn = connection_get_conn(); char *nick = muc_get_room_nick(room_jid); if (nick != NULL) { xmpp_stanza_t *presence = stanza_create_room_leave_presence(ctx, room_jid, nick); xmpp_send(conn, presence); xmpp_stanza_release(presence); } }
void presence_leave_chat_room(const char *const room_jid) { assert(room_jid != NULL); char *nick = muc_nick(room_jid); if (!nick) { log_error("Could not get nickname for room: %s", room_jid); return; } log_debug("Sending room leave presence to: %s", room_jid); xmpp_ctx_t *ctx = connection_get_ctx(); xmpp_stanza_t *presence = stanza_create_room_leave_presence(ctx, room_jid, nick); _send_presence_stanza(presence); xmpp_stanza_release(presence); }