Jabber Signals

Signals:


jabber-receiving-iq

gboolean (*iq_received)(PurpleConnection *gc, const char *type, const char *id,
                     const char *from, xmlnode *iq);
Description:
Emitted when an XMPP IQ stanza is received. Allows a plugin to process IQ stanzas.
Parameters:
gc The connection on which the stanza is received
type The IQ type ('get', 'set', 'result', or 'error')
id The ID attribute from the stanza. MUST NOT be NULL.
from The originator of the stanza. MAY BE NULL if the stanza originated from the user's server.
iq The full stanza received.
Returns:
TRUE if the plugin processed this stanza and *nobody else* should process it. FALSE otherwise.

jabber-receiving-message

gboolean (*message_received)(PurpleConnection *gc, const char *type,
                              const char *id, const char *from, const char *to,
                              xmlnode *message);
Description:
Emitted when an XMPP message stanza is received. Allows a plugin to process message stanzas.
Parameters:
gc The connection on which the stanza is received
type The message type (see rfc3921 or rfc3921bis)
id The ID attribute from the stanza. MAY BE NULL.
from The originator of the stanza. MAY BE NULL if the stanza originated from the user's server.
to The destination of the stanza. This is probably either the full JID of the receiver or the receiver's bare JID.
message The full stanza received.
Returns:
TRUE if the plugin processed this stanza and *nobody else* should process it. FALSE otherwise.

jabber-receiving-presence

gboolean (*presence_received)(PurpleConnection *gc, const char *type,
                               const char *from, xmlnode *presence);
Description:
Emitted when an XMPP presence stanza is received. Allows a plugin to process presence stanzas.
Parameters:
gc The connection on which the stanza is received
type The presence type (see rfc3921 or rfc3921bis). NULL indicates this is an "available" (i.e. online) presence.
from The originator of the stanza. MAY BE NULL if the stanza originated from the user's server.
presence The full stanza received.
Returns:
TRUE if the plugin processed this stanza and *nobody else* should process it. FALSE otherwise.

jabber-watched-iq

gboolean (*watched_iq)(PurpleConnection *gc, const char *type, const char *id,
                       const char *from, xmlnode *child);
Description:
Emitted when an IQ with a watched (child, namespace) pair is received. See jabber-register-namespace-watcher and jabber-unregister-namespace-watcher.
Parameters:
gc The connection on which the stanza is received
type The IQ type ('get', 'set', 'result', or 'error')
id The ID attribute from the stanza. MUST NOT be NULL.
from The originator of the stanza. MAY BE NULL if the stanza originated from the user's server.
child The child node with namespace.
Returns:
TRUE if the plugin processed this stanza and *nobody else* should process it. FALSE otherwise.

jabber-register-namespace-watcher

void (register_namespace_watcher)(const char *node, const char *namespace);
Description:
Emit this signal to register your desire to have specific IQ stanzas to be emitted via the jabber-watched-iq signal when received.
Parameters:
node The IQ child name to longer watch.
namespace The IQ child namespace to longer watch.

jabber-unregister-namespace-watcher

void (unregister_namespace_watcher)(const char *node, const char *namespace);
Description:
Emit this signal to unregister your desire to have specific IQ stanzas to be emitted via the jabber-watched-iq signal when received.
Parameters:
node The IQ child name to no longer watch.
namespace The IQ child namespace to no longer watch.

jabber-sending-xmlnode

void (sending_xmlnode)(PurpleConnection *gc, xmlnode **stanza);
Description:
Emit this signal (purple_signal_emit) to send a stanza. It is preferred to use this instead of prpl_info->send_raw.
Parameters:
gc The connection on which to send the stanza.
stanza The stanza to send. If stanza is not NULL after being sent, the emitter should free it.

jabber-receiving-xmlnode

void (receiving_xmlnode)(PurpleConnection *gc, xmlnode **stanza);
Description:
Emitted when an XMPP stanza is received. Allows a plugin to process any stanza.
Parameters:
gc The connection on which the stanza was received.
stanza The received stanza. Set stanza to NULL (and free it) to stop processing the stanza.