* @file buddy.h Buddy handlers * Purple is the legal property of its developers, whose names are too numerous * to list here. Please refer to the COPYRIGHT file distributed with this * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or * (at your option) any later version. * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA #ifndef PURPLE_JABBER_BUDDY_H #define PURPLE_JABBER_BUDDY_H typedef struct _JabberBuddy JabberBuddy; * A sorted list of resources in priority descending order. * This means that the first resource in the list is the * "most available" (see resource_compare_cb in buddy.c for * details). Don't play with this yourself, let * jabber_buddy_track_resource and jabber_buddy_remove_resource do it. JABBER_INVISIBLE_NONE = 0, JABBER_INVISIBLE_SERVER = 1 << 1, JABBER_INVIS_BUDDY = 1 << 2 JABBER_SUB_PENDING = 1 << 1, JABBER_SUB_FROM = 1 << 3, JABBER_SUB_BOTH = (JABBER_SUB_TO | JABBER_SUB_FROM), JABBER_SUB_REMOVE = 1 << 4 JabberCapabilities capabilities; JABBER_CHAT_STATES_UNKNOWN, JABBER_CHAT_STATES_UNSUPPORTED, JABBER_CHAT_STATES_SUPPORTED /* tz_off == PURPLE_NO_TZ_OFF when unset */ JabberCapsClientInfo *info; gboolean commands_fetched; void jabber_adhoc_commands_free(JabberAdHocCommands *cmd); void jabber_buddy_free(JabberBuddy *jb); JabberBuddy *jabber_buddy_find(JabberStream *js, const char *name, JabberBuddyResource *jabber_buddy_find_resource(JabberBuddy *jb, JabberBuddyResource *jabber_buddy_track_resource(JabberBuddy *jb, const char *resource, int priority, JabberBuddyState state, const char *status); void jabber_buddy_remove_resource(JabberBuddy *jb, const char *resource); void jabber_buddy_get_info(PurpleConnection *gc, const char *who); GList *jabber_blist_node_menu(PurpleBlistNode *node); void jabber_set_info(PurpleConnection *gc, const char *info); void jabber_setup_set_info(PurpleProtocolAction *action); void jabber_set_buddy_icon(PurpleConnection *gc, PurpleImage *img); void jabber_user_search(JabberStream *js, const char *directory); void jabber_user_search_begin(PurpleProtocolAction *); void jabber_buddy_remove_all_pending_buddy_info_requests(JabberStream *js); void jabber_vcard_fetch_mine(JabberStream *js); gboolean jabber_resource_know_capabilities(const JabberBuddyResource *jbr); gboolean jabber_resource_has_capability(const JabberBuddyResource *jbr, gboolean jabber_buddy_has_capability(const JabberBuddy *jb, const gchar *cap); jabber_resource_get_identity_category_type(const JabberBuddyResource *jbr, #endif /* PURPLE_JABBER_BUDDY_H */