Esempio n. 1
0
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);
    }
}
Esempio n. 2
0
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);
}