libpurple/protocols/jabber/data.h

Tue, 13 Jan 2009 19:23:07 +0000

author
Marcus Lundblad <malu@pidgin.im>
date
Tue, 13 Jan 2009 19:23:07 +0000
branch
cpw.malu.xmpp.attention
changeset 25971
96c54b083cb5
parent 24386
0710eb7a41c5
child 25565
56a46adbfa53
child 26042
4dabdb5fe213
permissions
-rw-r--r--

Change error message shown when trying to buzz a buddy who doesn't announce
support to reflect the fact that disabling "attention" also implies the client
should not advertize support, or as we do in libpurple, don't announce support
when the status is set to "Busy".

23629
05adde07702c New files used for custom smileys.
Marcus Lundblad <malu@pidgin.im>
parents:
diff changeset
1 /*
05adde07702c New files used for custom smileys.
Marcus Lundblad <malu@pidgin.im>
parents:
diff changeset
2 * This program is free software; you can redistribute it and/or modify
05adde07702c New files used for custom smileys.
Marcus Lundblad <malu@pidgin.im>
parents:
diff changeset
3 * it under the terms of the GNU General Public License as published by
05adde07702c New files used for custom smileys.
Marcus Lundblad <malu@pidgin.im>
parents:
diff changeset
4 * the Free Software Foundation; either version 2 of the License, or
05adde07702c New files used for custom smileys.
Marcus Lundblad <malu@pidgin.im>
parents:
diff changeset
5 * (at your option) any later version.
05adde07702c New files used for custom smileys.
Marcus Lundblad <malu@pidgin.im>
parents:
diff changeset
6 *
05adde07702c New files used for custom smileys.
Marcus Lundblad <malu@pidgin.im>
parents:
diff changeset
7 * This program is distributed in the hope that it will be useful,
05adde07702c New files used for custom smileys.
Marcus Lundblad <malu@pidgin.im>
parents:
diff changeset
8 * but WITHOUT ANY WARRANTY; without even the implied warranty of
05adde07702c New files used for custom smileys.
Marcus Lundblad <malu@pidgin.im>
parents:
diff changeset
9 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
05adde07702c New files used for custom smileys.
Marcus Lundblad <malu@pidgin.im>
parents:
diff changeset
10 * GNU Library General Public License for more details.
05adde07702c New files used for custom smileys.
Marcus Lundblad <malu@pidgin.im>
parents:
diff changeset
11 *
05adde07702c New files used for custom smileys.
Marcus Lundblad <malu@pidgin.im>
parents:
diff changeset
12 * You should have received a copy of the GNU General Public License
05adde07702c New files used for custom smileys.
Marcus Lundblad <malu@pidgin.im>
parents:
diff changeset
13 * along with this program; if not, write to the Free Software
05adde07702c New files used for custom smileys.
Marcus Lundblad <malu@pidgin.im>
parents:
diff changeset
14 * Foundation, Inc., 51 Franklin Street, Fifth Floor Boston, MA 02110-1301, USA
05adde07702c New files used for custom smileys.
Marcus Lundblad <malu@pidgin.im>
parents:
diff changeset
15 */
05adde07702c New files used for custom smileys.
Marcus Lundblad <malu@pidgin.im>
parents:
diff changeset
16
05adde07702c New files used for custom smileys.
Marcus Lundblad <malu@pidgin.im>
parents:
diff changeset
17 #ifndef JABBER_DATA_H
05adde07702c New files used for custom smileys.
Marcus Lundblad <malu@pidgin.im>
parents:
diff changeset
18 #define JABBER_DATA_H
05adde07702c New files used for custom smileys.
Marcus Lundblad <malu@pidgin.im>
parents:
diff changeset
19
05adde07702c New files used for custom smileys.
Marcus Lundblad <malu@pidgin.im>
parents:
diff changeset
20 #include "xmlnode.h"
05adde07702c New files used for custom smileys.
Marcus Lundblad <malu@pidgin.im>
parents:
diff changeset
21 #include "jabber.h"
05adde07702c New files used for custom smileys.
Marcus Lundblad <malu@pidgin.im>
parents:
diff changeset
22
24254
2d990726bf92 Updated to use latest spec. in XEP-0231
Marcus Lundblad <malu@pidgin.im>
parents: 23629
diff changeset
23 #define XEP_0231_NAMESPACE "urn:xmpp:bob"
23629
05adde07702c New files used for custom smileys.
Marcus Lundblad <malu@pidgin.im>
parents:
diff changeset
24
05adde07702c New files used for custom smileys.
Marcus Lundblad <malu@pidgin.im>
parents:
diff changeset
25 #include <glib.h>
05adde07702c New files used for custom smileys.
Marcus Lundblad <malu@pidgin.im>
parents:
diff changeset
26
05adde07702c New files used for custom smileys.
Marcus Lundblad <malu@pidgin.im>
parents:
diff changeset
27 typedef struct {
05adde07702c New files used for custom smileys.
Marcus Lundblad <malu@pidgin.im>
parents:
diff changeset
28 char *cid;
05adde07702c New files used for custom smileys.
Marcus Lundblad <malu@pidgin.im>
parents:
diff changeset
29 char *type;
05adde07702c New files used for custom smileys.
Marcus Lundblad <malu@pidgin.im>
parents:
diff changeset
30 gsize size;
05adde07702c New files used for custom smileys.
Marcus Lundblad <malu@pidgin.im>
parents:
diff changeset
31 gpointer data;
05adde07702c New files used for custom smileys.
Marcus Lundblad <malu@pidgin.im>
parents:
diff changeset
32 } JabberData;
05adde07702c New files used for custom smileys.
Marcus Lundblad <malu@pidgin.im>
parents:
diff changeset
33
05adde07702c New files used for custom smileys.
Marcus Lundblad <malu@pidgin.im>
parents:
diff changeset
34 /* creates a JabberData instance from raw data */
05adde07702c New files used for custom smileys.
Marcus Lundblad <malu@pidgin.im>
parents:
diff changeset
35 JabberData *jabber_data_create_from_data(gconstpointer data, gsize size,
24254
2d990726bf92 Updated to use latest spec. in XEP-0231
Marcus Lundblad <malu@pidgin.im>
parents: 23629
diff changeset
36 const char *type, JabberStream *js);
23629
05adde07702c New files used for custom smileys.
Marcus Lundblad <malu@pidgin.im>
parents:
diff changeset
37
05adde07702c New files used for custom smileys.
Marcus Lundblad <malu@pidgin.im>
parents:
diff changeset
38 /* create a JabberData instance from an XML "data" element (as defined by
05adde07702c New files used for custom smileys.
Marcus Lundblad <malu@pidgin.im>
parents:
diff changeset
39 XEP 0231 */
05adde07702c New files used for custom smileys.
Marcus Lundblad <malu@pidgin.im>
parents:
diff changeset
40 JabberData *jabber_data_create_from_xml(xmlnode *tag);
05adde07702c New files used for custom smileys.
Marcus Lundblad <malu@pidgin.im>
parents:
diff changeset
41
05adde07702c New files used for custom smileys.
Marcus Lundblad <malu@pidgin.im>
parents:
diff changeset
42 const char *jabber_data_get_cid(const JabberData *data);
05adde07702c New files used for custom smileys.
Marcus Lundblad <malu@pidgin.im>
parents:
diff changeset
43 const char *jabber_data_get_type(const JabberData *data);
05adde07702c New files used for custom smileys.
Marcus Lundblad <malu@pidgin.im>
parents:
diff changeset
44
05adde07702c New files used for custom smileys.
Marcus Lundblad <malu@pidgin.im>
parents:
diff changeset
45 gsize jabber_data_get_size(const JabberData *data);
05adde07702c New files used for custom smileys.
Marcus Lundblad <malu@pidgin.im>
parents:
diff changeset
46 gpointer jabber_data_get_data(const JabberData *data);
05adde07702c New files used for custom smileys.
Marcus Lundblad <malu@pidgin.im>
parents:
diff changeset
47
05adde07702c New files used for custom smileys.
Marcus Lundblad <malu@pidgin.im>
parents:
diff changeset
48 /* returns the XML definition for the data element */
05adde07702c New files used for custom smileys.
Marcus Lundblad <malu@pidgin.im>
parents:
diff changeset
49 xmlnode *jabber_data_get_xml_definition(const JabberData *data);
05adde07702c New files used for custom smileys.
Marcus Lundblad <malu@pidgin.im>
parents:
diff changeset
50
05adde07702c New files used for custom smileys.
Marcus Lundblad <malu@pidgin.im>
parents:
diff changeset
51 /* returns an XHTML-IM "img" tag given a data instance */
24254
2d990726bf92 Updated to use latest spec. in XEP-0231
Marcus Lundblad <malu@pidgin.im>
parents: 23629
diff changeset
52 xmlnode *jabber_data_get_xhtml_im(const JabberData *data, const gchar *alt);
23629
05adde07702c New files used for custom smileys.
Marcus Lundblad <malu@pidgin.im>
parents:
diff changeset
53
05adde07702c New files used for custom smileys.
Marcus Lundblad <malu@pidgin.im>
parents:
diff changeset
54 /* returns a data request element (to be included in an iq stanza) for requesting
05adde07702c New files used for custom smileys.
Marcus Lundblad <malu@pidgin.im>
parents:
diff changeset
55 data */
05adde07702c New files used for custom smileys.
Marcus Lundblad <malu@pidgin.im>
parents:
diff changeset
56 xmlnode *jabber_data_get_xml_request(const gchar *cid);
05adde07702c New files used for custom smileys.
Marcus Lundblad <malu@pidgin.im>
parents:
diff changeset
57
05adde07702c New files used for custom smileys.
Marcus Lundblad <malu@pidgin.im>
parents:
diff changeset
58 /* lookup functions */
24254
2d990726bf92 Updated to use latest spec. in XEP-0231
Marcus Lundblad <malu@pidgin.im>
parents: 23629
diff changeset
59 const JabberData *jabber_data_find_local_by_alt(const gchar *alt);
2d990726bf92 Updated to use latest spec. in XEP-0231
Marcus Lundblad <malu@pidgin.im>
parents: 23629
diff changeset
60 const JabberData *jabber_data_find_local_by_cid(const gchar *cid);
2d990726bf92 Updated to use latest spec. in XEP-0231
Marcus Lundblad <malu@pidgin.im>
parents: 23629
diff changeset
61 const JabberData *jabber_data_find_remote_by_cid(const gchar *cid);
24386
0710eb7a41c5 A couple of compile warning fixes, a couple of memory leak plugs.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 24255
diff changeset
62
24254
2d990726bf92 Updated to use latest spec. in XEP-0231
Marcus Lundblad <malu@pidgin.im>
parents: 23629
diff changeset
63 /* store data objects */
2d990726bf92 Updated to use latest spec. in XEP-0231
Marcus Lundblad <malu@pidgin.im>
parents: 23629
diff changeset
64 void jabber_data_associate_local(JabberData *data, const gchar *alt);
2d990726bf92 Updated to use latest spec. in XEP-0231
Marcus Lundblad <malu@pidgin.im>
parents: 23629
diff changeset
65 void jabber_data_associate_remote(JabberData *data);
23629
05adde07702c New files used for custom smileys.
Marcus Lundblad <malu@pidgin.im>
parents:
diff changeset
66
05adde07702c New files used for custom smileys.
Marcus Lundblad <malu@pidgin.im>
parents:
diff changeset
67 /* handles iq requests */
05adde07702c New files used for custom smileys.
Marcus Lundblad <malu@pidgin.im>
parents:
diff changeset
68 void jabber_data_parse(JabberStream *js, xmlnode *packet);
05adde07702c New files used for custom smileys.
Marcus Lundblad <malu@pidgin.im>
parents:
diff changeset
69
24254
2d990726bf92 Updated to use latest spec. in XEP-0231
Marcus Lundblad <malu@pidgin.im>
parents: 23629
diff changeset
70 void jabber_data_init(void);
2d990726bf92 Updated to use latest spec. in XEP-0231
Marcus Lundblad <malu@pidgin.im>
parents: 23629
diff changeset
71 void jabber_data_uninit(void);
23629
05adde07702c New files used for custom smileys.
Marcus Lundblad <malu@pidgin.im>
parents:
diff changeset
72
05adde07702c New files used for custom smileys.
Marcus Lundblad <malu@pidgin.im>
parents:
diff changeset
73 #endif /* JABBER_DATA_H */

mercurial