void version_init(void) { disco_add_feature(XMLNS_VERSION); settings_add_bool("xmpp", "xmpp_send_version", TRUE); command_bind_xmpp("ver", NULL, (SIGNAL_FUNC)cmd_ver); signal_add("xmpp recv iq", sig_recv_iq); }
void vcard_init(void) { disco_add_feature(XMLNS_VCARD); command_bind_xmpp("vcard", NULL, (SIGNAL_FUNC)cmd_vcard); command_bind_xmpp("whois", NULL, (SIGNAL_FUNC)cmd_vcard); signal_add("xmpp recv iq", sig_recv_iq); }
void disco_init(void) { my_features = NULL; disco_add_feature(XMLNS_DISCO); signal_add("server connected", sig_connected); signal_add("server disconnected", sig_disconnected); signal_add("xmpp recv iq", sig_recv_iq); }
void registration_init(void) { register_data = NULL; command_bind("xmppregister", NULL, (SIGNAL_FUNC)cmd_xmppregister); command_bind("xmppunregister", NULL, (SIGNAL_FUNC)cmd_xmppunregister); command_set_options("xmppunregister", "yes"); command_bind("xmpppasswd", NULL, (SIGNAL_FUNC)cmd_xmpppasswd); command_set_options("xmpppasswd", "yes"); disco_add_feature(XMLNS_REGISTRATION); }
void composing_init(void) { composings = datalist_new(freedata_func); disco_add_feature(XMLNS_EVENT); signal_add("xmpp composing start", sig_composing_start); signal_add("xmpp composing stop", sig_composing_stop); signal_add("xmpp composing show", sig_composing_show); signal_add("xmpp composing hide", sig_composing_hide); signal_add("xmpp recv message", sig_recv_message); signal_add("xmpp send message", sig_send_message); signal_add("xmpp presence offline", sig_offline); signal_add("server disconnected", sig_disconnected); }
void api_disco_add_feature(char *plugin_name, char *feature) { if (feature == NULL) { return; } disco_add_feature(plugin_name, feature); caps_reset_ver(); // resend presence to update server's disco info data for this client if (connection_get_status() == JABBER_CONNECTED) { resource_presence_t last_presence = accounts_get_last_presence(session_get_account_name()); cl_ev_presence_send(last_presence, connection_get_presence_msg(), 0); } }
void muc_init(void) { CHAT_PROTOCOL_REC *chat; if ((chat = chat_protocol_find(XMPP_PROTOCOL_NAME)) != NULL) chat->channel_create = (CHANNEL_REC *(*) (SERVER_REC *, const char *, const char *, int))muc_create; disco_add_feature(XMLNS_MUC); muc_commands_init(); muc_events_init(); muc_nicklist_init(); muc_reconnect_init(); signal_add("xmpp features", sig_features); signal_add("channel created", sig_channel_created); signal_add("channel destroyed", sig_channel_destroyed); signal_add("server connected", sig_connected); signal_add("xmpp set presence", sig_set_presence); settings_add_int("xmpp_lookandfeel", "xmpp_history_maxstanzas", 30); }
void delay_init(void) { disco_add_feature(XMLNS_DELAY); signal_add_first("xmpp recv message", sig_recv_message); }