libpurple/protocols/msn/msg.h

Mon, 13 Jul 2009 05:01:42 +0000

author
Elliott Sales de Andrade <qulogic@pidgin.im>
date
Mon, 13 Jul 2009 05:01:42 +0000
changeset 27776
60d79d68cde1
parent 27569
7f08e35e35ac
child 29305
202cb72ed5b0
permissions
-rw-r--r--

On MSN, pop up an "invite message" request similar to oscar, and send that
in the add request. We really should try and move this into the add buddy
dialog instead of an extra prompt.

Fixes #8503.

4542
05a476dec582 [gaim-migrate @ 4821]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1 /**
05a476dec582 [gaim-migrate @ 4821]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
2 * @file msg.h Message functions
05a476dec582 [gaim-migrate @ 4821]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
3 *
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
4 * purple
4542
05a476dec582 [gaim-migrate @ 4821]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
5 *
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
6 * Purple is the legal property of its developers, whose names are too numerous
9198
e8eb6d5eb9eb [gaim-migrate @ 9993]
Christian Hammond <chipx86@chipx86.com>
parents: 9193
diff changeset
7 * to list here. Please refer to the COPYRIGHT file distributed with this
e8eb6d5eb9eb [gaim-migrate @ 9993]
Christian Hammond <chipx86@chipx86.com>
parents: 9193
diff changeset
8 * source distribution.
6701
7e2db9273748 [gaim-migrate @ 7227]
Christian Hammond <chipx86@chipx86.com>
parents: 5506
diff changeset
9 *
4542
05a476dec582 [gaim-migrate @ 4821]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
10 * This program is free software; you can redistribute it and/or modify
05a476dec582 [gaim-migrate @ 4821]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
11 * it under the terms of the GNU General Public License as published by
05a476dec582 [gaim-migrate @ 4821]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
12 * the Free Software Foundation; either version 2 of the License, or
05a476dec582 [gaim-migrate @ 4821]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
13 * (at your option) any later version.
05a476dec582 [gaim-migrate @ 4821]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
14 *
05a476dec582 [gaim-migrate @ 4821]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
15 * This program is distributed in the hope that it will be useful,
05a476dec582 [gaim-migrate @ 4821]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
16 * but WITHOUT ANY WARRANTY; without even the implied warranty of
05a476dec582 [gaim-migrate @ 4821]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
17 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
05a476dec582 [gaim-migrate @ 4821]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
18 * GNU General Public License for more details.
05a476dec582 [gaim-migrate @ 4821]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
19 *
05a476dec582 [gaim-migrate @ 4821]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
20 * You should have received a copy of the GNU General Public License
05a476dec582 [gaim-migrate @ 4821]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
21 * along with this program; if not, write to the Free Software
19859
71d37b57eff2 The FSF changed its address a while ago; our files were out of date.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 15884
diff changeset
22 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA
4542
05a476dec582 [gaim-migrate @ 4821]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
23 */
05a476dec582 [gaim-migrate @ 4821]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
24 #ifndef _MSN_MSG_H_
05a476dec582 [gaim-migrate @ 4821]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
25 #define _MSN_MSG_H_
05a476dec582 [gaim-migrate @ 4821]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
26
5309
3178acad1449 [gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents: 4542
diff changeset
27 typedef struct _MsnMessage MsnMessage;
3178acad1449 [gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents: 4542
diff changeset
28
3178acad1449 [gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents: 4542
diff changeset
29 #include "session.h"
3178acad1449 [gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents: 4542
diff changeset
30 #include "user.h"
3178acad1449 [gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents: 4542
diff changeset
31
9193
6e76f1367896 [gaim-migrate @ 9988]
Felipe Contreras <felipe.contreras@gmail.com>
parents: 9158
diff changeset
32 #include "command.h"
6e76f1367896 [gaim-migrate @ 9988]
Felipe Contreras <felipe.contreras@gmail.com>
parents: 9158
diff changeset
33 #include "transaction.h"
6e76f1367896 [gaim-migrate @ 9988]
Felipe Contreras <felipe.contreras@gmail.com>
parents: 9158
diff changeset
34
10345
7d7f8cfa2b4f [gaim-migrate @ 11556]
Felipe Contreras <felipe.contreras@gmail.com>
parents: 10225
diff changeset
35 typedef void (*MsnMsgCb)(MsnMessage *, void *data);
10225
0dfea1bc8695 [gaim-migrate @ 11357]
Felipe Contreras <felipe.contreras@gmail.com>
parents: 9198
diff changeset
36
13886
e1d21534ecff [gaim-migrate @ 16973]
Ma Yuan <mayuan2006@gmail.com>
parents: 11321
diff changeset
37 #define MSG_BODY_DEM "\r\n\r\n"
e1d21534ecff [gaim-migrate @ 16973]
Ma Yuan <mayuan2006@gmail.com>
parents: 11321
diff changeset
38 #define MSG_LINE_DEM "\r\n"
e1d21534ecff [gaim-migrate @ 16973]
Ma Yuan <mayuan2006@gmail.com>
parents: 11321
diff changeset
39
e1d21534ecff [gaim-migrate @ 16973]
Ma Yuan <mayuan2006@gmail.com>
parents: 11321
diff changeset
40 #define MSG_OIM_BODY_DEM "\n\n"
e1d21534ecff [gaim-migrate @ 16973]
Ma Yuan <mayuan2006@gmail.com>
parents: 11321
diff changeset
41 #define MSG_OIM_LINE_DEM "\n"
e1d21534ecff [gaim-migrate @ 16973]
Ma Yuan <mayuan2006@gmail.com>
parents: 11321
diff changeset
42
10225
0dfea1bc8695 [gaim-migrate @ 11357]
Felipe Contreras <felipe.contreras@gmail.com>
parents: 9198
diff changeset
43 /*
9193
6e76f1367896 [gaim-migrate @ 9988]
Felipe Contreras <felipe.contreras@gmail.com>
parents: 9158
diff changeset
44 typedef enum
6e76f1367896 [gaim-migrate @ 9988]
Felipe Contreras <felipe.contreras@gmail.com>
parents: 9158
diff changeset
45 {
6e76f1367896 [gaim-migrate @ 9988]
Felipe Contreras <felipe.contreras@gmail.com>
parents: 9158
diff changeset
46 MSN_MSG_NORMAL,
6e76f1367896 [gaim-migrate @ 9988]
Felipe Contreras <felipe.contreras@gmail.com>
parents: 9158
diff changeset
47 MSN_MSG_SLP_SB,
6e76f1367896 [gaim-migrate @ 9988]
Felipe Contreras <felipe.contreras@gmail.com>
parents: 9158
diff changeset
48 MSN_MSG_SLP_DC
6e76f1367896 [gaim-migrate @ 9988]
Felipe Contreras <felipe.contreras@gmail.com>
parents: 9158
diff changeset
49
6e76f1367896 [gaim-migrate @ 9988]
Felipe Contreras <felipe.contreras@gmail.com>
parents: 9158
diff changeset
50 } MsnMsgType;
10225
0dfea1bc8695 [gaim-migrate @ 11357]
Felipe Contreras <felipe.contreras@gmail.com>
parents: 9198
diff changeset
51 */
0dfea1bc8695 [gaim-migrate @ 11357]
Felipe Contreras <felipe.contreras@gmail.com>
parents: 9198
diff changeset
52
0dfea1bc8695 [gaim-migrate @ 11357]
Felipe Contreras <felipe.contreras@gmail.com>
parents: 9198
diff changeset
53 typedef enum
0dfea1bc8695 [gaim-migrate @ 11357]
Felipe Contreras <felipe.contreras@gmail.com>
parents: 9198
diff changeset
54 {
0dfea1bc8695 [gaim-migrate @ 11357]
Felipe Contreras <felipe.contreras@gmail.com>
parents: 9198
diff changeset
55 MSN_MSG_UNKNOWN,
0dfea1bc8695 [gaim-migrate @ 11357]
Felipe Contreras <felipe.contreras@gmail.com>
parents: 9198
diff changeset
56 MSN_MSG_TEXT,
0dfea1bc8695 [gaim-migrate @ 11357]
Felipe Contreras <felipe.contreras@gmail.com>
parents: 9198
diff changeset
57 MSN_MSG_TYPING,
0dfea1bc8695 [gaim-migrate @ 11357]
Felipe Contreras <felipe.contreras@gmail.com>
parents: 9198
diff changeset
58 MSN_MSG_CAPS,
11321
a93121c0ea16 [gaim-migrate @ 13525]
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 10451
diff changeset
59 MSN_MSG_SLP,
a93121c0ea16 [gaim-migrate @ 13525]
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 10451
diff changeset
60 MSN_MSG_NUDGE
10225
0dfea1bc8695 [gaim-migrate @ 11357]
Felipe Contreras <felipe.contreras@gmail.com>
parents: 9198
diff changeset
61
0dfea1bc8695 [gaim-migrate @ 11357]
Felipe Contreras <felipe.contreras@gmail.com>
parents: 9198
diff changeset
62 } MsnMsgType;
9193
6e76f1367896 [gaim-migrate @ 9988]
Felipe Contreras <felipe.contreras@gmail.com>
parents: 9158
diff changeset
63
10345
7d7f8cfa2b4f [gaim-migrate @ 11556]
Felipe Contreras <felipe.contreras@gmail.com>
parents: 10225
diff changeset
64 typedef enum
7d7f8cfa2b4f [gaim-migrate @ 11556]
Felipe Contreras <felipe.contreras@gmail.com>
parents: 10225
diff changeset
65 {
7d7f8cfa2b4f [gaim-migrate @ 11556]
Felipe Contreras <felipe.contreras@gmail.com>
parents: 10225
diff changeset
66 MSN_MSG_ERROR_NONE, /**< No error. */
7d7f8cfa2b4f [gaim-migrate @ 11556]
Felipe Contreras <felipe.contreras@gmail.com>
parents: 10225
diff changeset
67 MSN_MSG_ERROR_TIMEOUT, /**< The message timedout. */
7d7f8cfa2b4f [gaim-migrate @ 11556]
Felipe Contreras <felipe.contreras@gmail.com>
parents: 10225
diff changeset
68 MSN_MSG_ERROR_NAK, /**< The message could not be sent. */
7d7f8cfa2b4f [gaim-migrate @ 11556]
Felipe Contreras <felipe.contreras@gmail.com>
parents: 10225
diff changeset
69 MSN_MSG_ERROR_SB, /**< The error comes from the switchboard. */
10451
2df35a139363 [gaim-migrate @ 11717]
Felipe Contreras <felipe.contreras@gmail.com>
parents: 10346
diff changeset
70 MSN_MSG_ERROR_UNKNOWN /**< An unknown error occurred. */
10345
7d7f8cfa2b4f [gaim-migrate @ 11556]
Felipe Contreras <felipe.contreras@gmail.com>
parents: 10225
diff changeset
71
7d7f8cfa2b4f [gaim-migrate @ 11556]
Felipe Contreras <felipe.contreras@gmail.com>
parents: 10225
diff changeset
72 } MsnMsgErrorType;
7d7f8cfa2b4f [gaim-migrate @ 11556]
Felipe Contreras <felipe.contreras@gmail.com>
parents: 10225
diff changeset
73
6786
096ebddea1f3 [gaim-migrate @ 7325]
Christian Hammond <chipx86@chipx86.com>
parents: 6701
diff changeset
74 typedef struct
096ebddea1f3 [gaim-migrate @ 7325]
Christian Hammond <chipx86@chipx86.com>
parents: 6701
diff changeset
75 {
9158
f8dab42adeaf [gaim-migrate @ 9942]
Felipe Contreras <felipe.contreras@gmail.com>
parents: 8646
diff changeset
76 guint32 session_id;
f8dab42adeaf [gaim-migrate @ 9942]
Felipe Contreras <felipe.contreras@gmail.com>
parents: 8646
diff changeset
77 guint32 id;
f8dab42adeaf [gaim-migrate @ 9942]
Felipe Contreras <felipe.contreras@gmail.com>
parents: 8646
diff changeset
78 guint64 offset;
f8dab42adeaf [gaim-migrate @ 9942]
Felipe Contreras <felipe.contreras@gmail.com>
parents: 8646
diff changeset
79 guint64 total_size;
f8dab42adeaf [gaim-migrate @ 9942]
Felipe Contreras <felipe.contreras@gmail.com>
parents: 8646
diff changeset
80 guint32 length;
f8dab42adeaf [gaim-migrate @ 9942]
Felipe Contreras <felipe.contreras@gmail.com>
parents: 8646
diff changeset
81 guint32 flags;
f8dab42adeaf [gaim-migrate @ 9942]
Felipe Contreras <felipe.contreras@gmail.com>
parents: 8646
diff changeset
82 guint32 ack_id;
f8dab42adeaf [gaim-migrate @ 9942]
Felipe Contreras <felipe.contreras@gmail.com>
parents: 8646
diff changeset
83 guint32 ack_sub_id;
f8dab42adeaf [gaim-migrate @ 9942]
Felipe Contreras <felipe.contreras@gmail.com>
parents: 8646
diff changeset
84 guint64 ack_size;
6786
096ebddea1f3 [gaim-migrate @ 7325]
Christian Hammond <chipx86@chipx86.com>
parents: 6701
diff changeset
85
096ebddea1f3 [gaim-migrate @ 7325]
Christian Hammond <chipx86@chipx86.com>
parents: 6701
diff changeset
86 } MsnSlpHeader;
096ebddea1f3 [gaim-migrate @ 7325]
Christian Hammond <chipx86@chipx86.com>
parents: 6701
diff changeset
87
096ebddea1f3 [gaim-migrate @ 7325]
Christian Hammond <chipx86@chipx86.com>
parents: 6701
diff changeset
88 typedef struct
096ebddea1f3 [gaim-migrate @ 7325]
Christian Hammond <chipx86@chipx86.com>
parents: 6701
diff changeset
89 {
9158
f8dab42adeaf [gaim-migrate @ 9942]
Felipe Contreras <felipe.contreras@gmail.com>
parents: 8646
diff changeset
90 guint32 value;
6786
096ebddea1f3 [gaim-migrate @ 7325]
Christian Hammond <chipx86@chipx86.com>
parents: 6701
diff changeset
91
096ebddea1f3 [gaim-migrate @ 7325]
Christian Hammond <chipx86@chipx86.com>
parents: 6701
diff changeset
92 } MsnSlpFooter;
096ebddea1f3 [gaim-migrate @ 7325]
Christian Hammond <chipx86@chipx86.com>
parents: 6701
diff changeset
93
4542
05a476dec582 [gaim-migrate @ 4821]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
94 /**
5309
3178acad1449 [gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents: 4542
diff changeset
95 * A message.
3178acad1449 [gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents: 4542
diff changeset
96 */
3178acad1449 [gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents: 4542
diff changeset
97 struct _MsnMessage
3178acad1449 [gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents: 4542
diff changeset
98 {
5506
b53a1acacefe [gaim-migrate @ 5905]
Christian Hammond <chipx86@chipx86.com>
parents: 5309
diff changeset
99 size_t ref_count; /**< The reference count. */
b53a1acacefe [gaim-migrate @ 5905]
Christian Hammond <chipx86@chipx86.com>
parents: 5309
diff changeset
100
9193
6e76f1367896 [gaim-migrate @ 9988]
Felipe Contreras <felipe.contreras@gmail.com>
parents: 9158
diff changeset
101 MsnMsgType type;
6e76f1367896 [gaim-migrate @ 9988]
Felipe Contreras <felipe.contreras@gmail.com>
parents: 9158
diff changeset
102
6701
7e2db9273748 [gaim-migrate @ 7227]
Christian Hammond <chipx86@chipx86.com>
parents: 5506
diff changeset
103 gboolean msnslp_message;
7e2db9273748 [gaim-migrate @ 7227]
Christian Hammond <chipx86@chipx86.com>
parents: 5506
diff changeset
104
9193
6e76f1367896 [gaim-migrate @ 9988]
Felipe Contreras <felipe.contreras@gmail.com>
parents: 9158
diff changeset
105 char *remote_user;
5309
3178acad1449 [gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents: 4542
diff changeset
106 char flag;
3178acad1449 [gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents: 4542
diff changeset
107
3178acad1449 [gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents: 4542
diff changeset
108 char *content_type;
3178acad1449 [gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents: 4542
diff changeset
109 char *charset;
3178acad1449 [gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents: 4542
diff changeset
110 char *body;
9193
6e76f1367896 [gaim-migrate @ 9988]
Felipe Contreras <felipe.contreras@gmail.com>
parents: 9158
diff changeset
111 gsize body_len;
25469
d3a7fa855992 Re-combine large (multi-part) messages on MSN since we seem to say that we
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 24420
diff changeset
112 guint total_chunks; /**< How many chunks in this multi-part message */
d3a7fa855992 Re-combine large (multi-part) messages on MSN since we seem to say that we
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 24420
diff changeset
113 guint received_chunks; /**< How many chunks we've received so far */
5309
3178acad1449 [gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents: 4542
diff changeset
114
6701
7e2db9273748 [gaim-migrate @ 7227]
Christian Hammond <chipx86@chipx86.com>
parents: 5506
diff changeset
115 MsnSlpHeader msnslp_header;
7e2db9273748 [gaim-migrate @ 7227]
Christian Hammond <chipx86@chipx86.com>
parents: 5506
diff changeset
116 MsnSlpFooter msnslp_footer;
7604
0800df4e5045 [gaim-migrate @ 8227]
Christian Hammond <chipx86@chipx86.com>
parents: 6868
diff changeset
117
5309
3178acad1449 [gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents: 4542
diff changeset
118 GHashTable *attr_table;
3178acad1449 [gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents: 4542
diff changeset
119 GList *attr_list;
9193
6e76f1367896 [gaim-migrate @ 9988]
Felipe Contreras <felipe.contreras@gmail.com>
parents: 9158
diff changeset
120
10346
9c65a007b4a5 [gaim-migrate @ 11560]
Felipe Contreras <felipe.contreras@gmail.com>
parents: 10345
diff changeset
121 gboolean ack_ref; /**< A flag that states if this message has
9c65a007b4a5 [gaim-migrate @ 11560]
Felipe Contreras <felipe.contreras@gmail.com>
parents: 10345
diff changeset
122 been ref'ed for using it in a callback. */
9c65a007b4a5 [gaim-migrate @ 11560]
Felipe Contreras <felipe.contreras@gmail.com>
parents: 10345
diff changeset
123
9193
6e76f1367896 [gaim-migrate @ 9988]
Felipe Contreras <felipe.contreras@gmail.com>
parents: 9158
diff changeset
124 MsnCommand *cmd;
6e76f1367896 [gaim-migrate @ 9988]
Felipe Contreras <felipe.contreras@gmail.com>
parents: 9158
diff changeset
125 MsnTransaction *trans;
5309
3178acad1449 [gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents: 4542
diff changeset
126
10345
7d7f8cfa2b4f [gaim-migrate @ 11556]
Felipe Contreras <felipe.contreras@gmail.com>
parents: 10225
diff changeset
127 MsnMsgCb ack_cb; /**< The callback to call when we receive an ACK of this
10346
9c65a007b4a5 [gaim-migrate @ 11560]
Felipe Contreras <felipe.contreras@gmail.com>
parents: 10345
diff changeset
128 message. */
10345
7d7f8cfa2b4f [gaim-migrate @ 11556]
Felipe Contreras <felipe.contreras@gmail.com>
parents: 10225
diff changeset
129 MsnMsgCb nak_cb; /**< The callback to call when we receive a NAK of this
10346
9c65a007b4a5 [gaim-migrate @ 11560]
Felipe Contreras <felipe.contreras@gmail.com>
parents: 10345
diff changeset
130 message. */
10345
7d7f8cfa2b4f [gaim-migrate @ 11556]
Felipe Contreras <felipe.contreras@gmail.com>
parents: 10225
diff changeset
131 void *ack_data; /**< The data used by callbacks. */
7d7f8cfa2b4f [gaim-migrate @ 11556]
Felipe Contreras <felipe.contreras@gmail.com>
parents: 10225
diff changeset
132
7d7f8cfa2b4f [gaim-migrate @ 11556]
Felipe Contreras <felipe.contreras@gmail.com>
parents: 10225
diff changeset
133 MsnMsgErrorType error; /**< The error of the message. */
24420
e83317602b22 attempts to resend message on switchboard error once, tested by maually
Ka-Hing Cheung <khc@pidgin.im>
parents: 20597
diff changeset
134
e83317602b22 attempts to resend message on switchboard error once, tested by maually
Ka-Hing Cheung <khc@pidgin.im>
parents: 20597
diff changeset
135 guint32 retries;
9193
6e76f1367896 [gaim-migrate @ 9988]
Felipe Contreras <felipe.contreras@gmail.com>
parents: 9158
diff changeset
136 };
6701
7e2db9273748 [gaim-migrate @ 7227]
Christian Hammond <chipx86@chipx86.com>
parents: 5506
diff changeset
137
5309
3178acad1449 [gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents: 4542
diff changeset
138 /**
3178acad1449 [gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents: 4542
diff changeset
139 * Creates a new, empty message.
3178acad1449 [gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents: 4542
diff changeset
140 *
3178acad1449 [gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents: 4542
diff changeset
141 * @return A new message.
3178acad1449 [gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents: 4542
diff changeset
142 */
10225
0dfea1bc8695 [gaim-migrate @ 11357]
Felipe Contreras <felipe.contreras@gmail.com>
parents: 9198
diff changeset
143 MsnMessage *msn_message_new(MsnMsgType type);
5309
3178acad1449 [gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents: 4542
diff changeset
144
3178acad1449 [gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents: 4542
diff changeset
145 /**
6800
8f99c220b503 [gaim-migrate @ 7340]
Christian Hammond <chipx86@chipx86.com>
parents: 6786
diff changeset
146 * Creates a new, empty MSNSLP message.
8f99c220b503 [gaim-migrate @ 7340]
Christian Hammond <chipx86@chipx86.com>
parents: 6786
diff changeset
147 *
8f99c220b503 [gaim-migrate @ 7340]
Christian Hammond <chipx86@chipx86.com>
parents: 6786
diff changeset
148 * @return A new MSNSLP message.
8f99c220b503 [gaim-migrate @ 7340]
Christian Hammond <chipx86@chipx86.com>
parents: 6786
diff changeset
149 */
8f99c220b503 [gaim-migrate @ 7340]
Christian Hammond <chipx86@chipx86.com>
parents: 6786
diff changeset
150 MsnMessage *msn_message_new_msnslp(void);
8f99c220b503 [gaim-migrate @ 7340]
Christian Hammond <chipx86@chipx86.com>
parents: 6786
diff changeset
151
11321
a93121c0ea16 [gaim-migrate @ 13525]
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 10451
diff changeset
152 /**
a93121c0ea16 [gaim-migrate @ 13525]
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 10451
diff changeset
153 * Creates a new nudge message.
a93121c0ea16 [gaim-migrate @ 13525]
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 10451
diff changeset
154 *
a93121c0ea16 [gaim-migrate @ 13525]
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 10451
diff changeset
155 * @return A new nudge message.
a93121c0ea16 [gaim-migrate @ 13525]
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 10451
diff changeset
156 */
a93121c0ea16 [gaim-migrate @ 13525]
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 10451
diff changeset
157 MsnMessage *msn_message_new_nudge(void);
a93121c0ea16 [gaim-migrate @ 13525]
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 10451
diff changeset
158
a93121c0ea16 [gaim-migrate @ 13525]
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 10451
diff changeset
159 /**
a93121c0ea16 [gaim-migrate @ 13525]
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 10451
diff changeset
160 * Creates a new plain message.
a93121c0ea16 [gaim-migrate @ 13525]
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 10451
diff changeset
161 *
a93121c0ea16 [gaim-migrate @ 13525]
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 10451
diff changeset
162 * @return A new plain message.
a93121c0ea16 [gaim-migrate @ 13525]
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 10451
diff changeset
163 */
9193
6e76f1367896 [gaim-migrate @ 9988]
Felipe Contreras <felipe.contreras@gmail.com>
parents: 9158
diff changeset
164 MsnMessage *msn_message_new_plain(const char *message);
6e76f1367896 [gaim-migrate @ 9988]
Felipe Contreras <felipe.contreras@gmail.com>
parents: 9158
diff changeset
165
6800
8f99c220b503 [gaim-migrate @ 7340]
Christian Hammond <chipx86@chipx86.com>
parents: 6786
diff changeset
166 /**
6868
b9cc0730e11c [gaim-migrate @ 7414]
Christian Hammond <chipx86@chipx86.com>
parents: 6826
diff changeset
167 * Creates a MSNSLP ack message.
b9cc0730e11c [gaim-migrate @ 7414]
Christian Hammond <chipx86@chipx86.com>
parents: 6826
diff changeset
168 *
b9cc0730e11c [gaim-migrate @ 7414]
Christian Hammond <chipx86@chipx86.com>
parents: 6826
diff changeset
169 * @param acked_msg The message to acknowledge.
b9cc0730e11c [gaim-migrate @ 7414]
Christian Hammond <chipx86@chipx86.com>
parents: 6826
diff changeset
170 *
b9cc0730e11c [gaim-migrate @ 7414]
Christian Hammond <chipx86@chipx86.com>
parents: 6826
diff changeset
171 * @return A new MSNSLP ack message.
b9cc0730e11c [gaim-migrate @ 7414]
Christian Hammond <chipx86@chipx86.com>
parents: 6826
diff changeset
172 */
b9cc0730e11c [gaim-migrate @ 7414]
Christian Hammond <chipx86@chipx86.com>
parents: 6826
diff changeset
173 MsnMessage *msn_message_new_msnslp_ack(MsnMessage *acked_msg);
b9cc0730e11c [gaim-migrate @ 7414]
Christian Hammond <chipx86@chipx86.com>
parents: 6826
diff changeset
174
b9cc0730e11c [gaim-migrate @ 7414]
Christian Hammond <chipx86@chipx86.com>
parents: 6826
diff changeset
175 /**
9193
6e76f1367896 [gaim-migrate @ 9988]
Felipe Contreras <felipe.contreras@gmail.com>
parents: 9158
diff changeset
176 * Creates a new message based off a command.
6e76f1367896 [gaim-migrate @ 9988]
Felipe Contreras <felipe.contreras@gmail.com>
parents: 9158
diff changeset
177 *
6e76f1367896 [gaim-migrate @ 9988]
Felipe Contreras <felipe.contreras@gmail.com>
parents: 9158
diff changeset
178 * @param session The MSN session.
6e76f1367896 [gaim-migrate @ 9988]
Felipe Contreras <felipe.contreras@gmail.com>
parents: 9158
diff changeset
179 * @param cmd The command.
6e76f1367896 [gaim-migrate @ 9988]
Felipe Contreras <felipe.contreras@gmail.com>
parents: 9158
diff changeset
180 *
6e76f1367896 [gaim-migrate @ 9988]
Felipe Contreras <felipe.contreras@gmail.com>
parents: 9158
diff changeset
181 * @return The new message.
6e76f1367896 [gaim-migrate @ 9988]
Felipe Contreras <felipe.contreras@gmail.com>
parents: 9158
diff changeset
182 */
6e76f1367896 [gaim-migrate @ 9988]
Felipe Contreras <felipe.contreras@gmail.com>
parents: 9158
diff changeset
183 MsnMessage *msn_message_new_from_cmd(MsnSession *session, MsnCommand *cmd);
6e76f1367896 [gaim-migrate @ 9988]
Felipe Contreras <felipe.contreras@gmail.com>
parents: 9158
diff changeset
184
6e76f1367896 [gaim-migrate @ 9988]
Felipe Contreras <felipe.contreras@gmail.com>
parents: 9158
diff changeset
185 /**
6e76f1367896 [gaim-migrate @ 9988]
Felipe Contreras <felipe.contreras@gmail.com>
parents: 9158
diff changeset
186 * Parses the payload of a message.
5309
3178acad1449 [gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents: 4542
diff changeset
187 *
8646
74d0e7406e3b [gaim-migrate @ 9398]
Felipe Contreras <felipe.contreras@gmail.com>
parents: 8475
diff changeset
188 * @param msg The message.
74d0e7406e3b [gaim-migrate @ 9398]
Felipe Contreras <felipe.contreras@gmail.com>
parents: 8475
diff changeset
189 * @param payload The payload.
9158
f8dab42adeaf [gaim-migrate @ 9942]
Felipe Contreras <felipe.contreras@gmail.com>
parents: 8646
diff changeset
190 * @param payload_len The length of the payload.
5309
3178acad1449 [gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents: 4542
diff changeset
191 */
9158
f8dab42adeaf [gaim-migrate @ 9942]
Felipe Contreras <felipe.contreras@gmail.com>
parents: 8646
diff changeset
192 void msn_message_parse_payload(MsnMessage *msg, const char *payload,
13886
e1d21534ecff [gaim-migrate @ 16973]
Ma Yuan <mayuan2006@gmail.com>
parents: 11321
diff changeset
193 size_t payload_len,
e1d21534ecff [gaim-migrate @ 16973]
Ma Yuan <mayuan2006@gmail.com>
parents: 11321
diff changeset
194 const char *line_dem,const char *body_dem);
5309
3178acad1449 [gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents: 4542
diff changeset
195
3178acad1449 [gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents: 4542
diff changeset
196 /**
3178acad1449 [gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents: 4542
diff changeset
197 * Destroys a message.
6701
7e2db9273748 [gaim-migrate @ 7227]
Christian Hammond <chipx86@chipx86.com>
parents: 5506
diff changeset
198 *
7e2db9273748 [gaim-migrate @ 7227]
Christian Hammond <chipx86@chipx86.com>
parents: 5506
diff changeset
199 * @param msg The message to destroy.
5309
3178acad1449 [gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents: 4542
diff changeset
200 */
3178acad1449 [gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents: 4542
diff changeset
201 void msn_message_destroy(MsnMessage *msg);
3178acad1449 [gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents: 4542
diff changeset
202
3178acad1449 [gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents: 4542
diff changeset
203 /**
5506
b53a1acacefe [gaim-migrate @ 5905]
Christian Hammond <chipx86@chipx86.com>
parents: 5309
diff changeset
204 * Increments the reference count on a message.
b53a1acacefe [gaim-migrate @ 5905]
Christian Hammond <chipx86@chipx86.com>
parents: 5309
diff changeset
205 *
b53a1acacefe [gaim-migrate @ 5905]
Christian Hammond <chipx86@chipx86.com>
parents: 5309
diff changeset
206 * @param msg The message.
b53a1acacefe [gaim-migrate @ 5905]
Christian Hammond <chipx86@chipx86.com>
parents: 5309
diff changeset
207 *
b53a1acacefe [gaim-migrate @ 5905]
Christian Hammond <chipx86@chipx86.com>
parents: 5309
diff changeset
208 * @return @a msg
b53a1acacefe [gaim-migrate @ 5905]
Christian Hammond <chipx86@chipx86.com>
parents: 5309
diff changeset
209 */
b53a1acacefe [gaim-migrate @ 5905]
Christian Hammond <chipx86@chipx86.com>
parents: 5309
diff changeset
210 MsnMessage *msn_message_ref(MsnMessage *msg);
b53a1acacefe [gaim-migrate @ 5905]
Christian Hammond <chipx86@chipx86.com>
parents: 5309
diff changeset
211
b53a1acacefe [gaim-migrate @ 5905]
Christian Hammond <chipx86@chipx86.com>
parents: 5309
diff changeset
212 /**
b53a1acacefe [gaim-migrate @ 5905]
Christian Hammond <chipx86@chipx86.com>
parents: 5309
diff changeset
213 * Decrements the reference count on a message.
b53a1acacefe [gaim-migrate @ 5905]
Christian Hammond <chipx86@chipx86.com>
parents: 5309
diff changeset
214 *
b53a1acacefe [gaim-migrate @ 5905]
Christian Hammond <chipx86@chipx86.com>
parents: 5309
diff changeset
215 * This will destroy the structure if the count hits 0.
b53a1acacefe [gaim-migrate @ 5905]
Christian Hammond <chipx86@chipx86.com>
parents: 5309
diff changeset
216 *
b53a1acacefe [gaim-migrate @ 5905]
Christian Hammond <chipx86@chipx86.com>
parents: 5309
diff changeset
217 * @param msg The message.
b53a1acacefe [gaim-migrate @ 5905]
Christian Hammond <chipx86@chipx86.com>
parents: 5309
diff changeset
218 *
b53a1acacefe [gaim-migrate @ 5905]
Christian Hammond <chipx86@chipx86.com>
parents: 5309
diff changeset
219 * @return @a msg, or @c NULL if the new count is 0.
b53a1acacefe [gaim-migrate @ 5905]
Christian Hammond <chipx86@chipx86.com>
parents: 5309
diff changeset
220 */
b53a1acacefe [gaim-migrate @ 5905]
Christian Hammond <chipx86@chipx86.com>
parents: 5309
diff changeset
221 MsnMessage *msn_message_unref(MsnMessage *msg);
b53a1acacefe [gaim-migrate @ 5905]
Christian Hammond <chipx86@chipx86.com>
parents: 5309
diff changeset
222
b53a1acacefe [gaim-migrate @ 5905]
Christian Hammond <chipx86@chipx86.com>
parents: 5309
diff changeset
223 /**
8646
74d0e7406e3b [gaim-migrate @ 9398]
Felipe Contreras <felipe.contreras@gmail.com>
parents: 8475
diff changeset
224 * Generates the payload data of a message.
5309
3178acad1449 [gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents: 4542
diff changeset
225 *
6826
986589449e69 [gaim-migrate @ 7371]
Christian Hammond <chipx86@chipx86.com>
parents: 6800
diff changeset
226 * @param msg The message.
8646
74d0e7406e3b [gaim-migrate @ 9398]
Felipe Contreras <felipe.contreras@gmail.com>
parents: 8475
diff changeset
227 * @param ret_size The returned size of the payload.
5309
3178acad1449 [gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents: 4542
diff changeset
228 *
8646
74d0e7406e3b [gaim-migrate @ 9398]
Felipe Contreras <felipe.contreras@gmail.com>
parents: 8475
diff changeset
229 * @return The payload data of the message.
5309
3178acad1449 [gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents: 4542
diff changeset
230 */
9193
6e76f1367896 [gaim-migrate @ 9988]
Felipe Contreras <felipe.contreras@gmail.com>
parents: 9158
diff changeset
231 char *msn_message_gen_payload(MsnMessage *msg, size_t *ret_size);
5309
3178acad1449 [gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents: 4542
diff changeset
232
3178acad1449 [gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents: 4542
diff changeset
233 /**
3178acad1449 [gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents: 4542
diff changeset
234 * Sets the flag for an outgoing message.
3178acad1449 [gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents: 4542
diff changeset
235 *
3178acad1449 [gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents: 4542
diff changeset
236 * @param msg The message.
3178acad1449 [gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents: 4542
diff changeset
237 * @param flag The flag.
3178acad1449 [gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents: 4542
diff changeset
238 */
3178acad1449 [gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents: 4542
diff changeset
239 void msn_message_set_flag(MsnMessage *msg, char flag);
3178acad1449 [gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents: 4542
diff changeset
240
3178acad1449 [gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents: 4542
diff changeset
241 /**
3178acad1449 [gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents: 4542
diff changeset
242 * Returns the flag for an outgoing message.
3178acad1449 [gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents: 4542
diff changeset
243 *
3178acad1449 [gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents: 4542
diff changeset
244 * @param msg The message.
3178acad1449 [gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents: 4542
diff changeset
245 *
3178acad1449 [gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents: 4542
diff changeset
246 * @return The flag.
3178acad1449 [gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents: 4542
diff changeset
247 */
3178acad1449 [gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents: 4542
diff changeset
248 char msn_message_get_flag(const MsnMessage *msg);
3178acad1449 [gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents: 4542
diff changeset
249
3178acad1449 [gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents: 4542
diff changeset
250 /**
6868
b9cc0730e11c [gaim-migrate @ 7414]
Christian Hammond <chipx86@chipx86.com>
parents: 6826
diff changeset
251 * Sets the binary content of the message.
b9cc0730e11c [gaim-migrate @ 7414]
Christian Hammond <chipx86@chipx86.com>
parents: 6826
diff changeset
252 *
b9cc0730e11c [gaim-migrate @ 7414]
Christian Hammond <chipx86@chipx86.com>
parents: 6826
diff changeset
253 * @param msg The message.
b9cc0730e11c [gaim-migrate @ 7414]
Christian Hammond <chipx86@chipx86.com>
parents: 6826
diff changeset
254 * @param data The binary data.
b9cc0730e11c [gaim-migrate @ 7414]
Christian Hammond <chipx86@chipx86.com>
parents: 6826
diff changeset
255 * @param len The length of the data.
b9cc0730e11c [gaim-migrate @ 7414]
Christian Hammond <chipx86@chipx86.com>
parents: 6826
diff changeset
256 */
b9cc0730e11c [gaim-migrate @ 7414]
Christian Hammond <chipx86@chipx86.com>
parents: 6826
diff changeset
257 void msn_message_set_bin_data(MsnMessage *msg, const void *data, size_t len);
b9cc0730e11c [gaim-migrate @ 7414]
Christian Hammond <chipx86@chipx86.com>
parents: 6826
diff changeset
258
b9cc0730e11c [gaim-migrate @ 7414]
Christian Hammond <chipx86@chipx86.com>
parents: 6826
diff changeset
259 /**
b9cc0730e11c [gaim-migrate @ 7414]
Christian Hammond <chipx86@chipx86.com>
parents: 6826
diff changeset
260 * Returns the binary content of the message.
b9cc0730e11c [gaim-migrate @ 7414]
Christian Hammond <chipx86@chipx86.com>
parents: 6826
diff changeset
261 *
b9cc0730e11c [gaim-migrate @ 7414]
Christian Hammond <chipx86@chipx86.com>
parents: 6826
diff changeset
262 * @param msg The message.
b9cc0730e11c [gaim-migrate @ 7414]
Christian Hammond <chipx86@chipx86.com>
parents: 6826
diff changeset
263 * @param len The returned length of the data.
b9cc0730e11c [gaim-migrate @ 7414]
Christian Hammond <chipx86@chipx86.com>
parents: 6826
diff changeset
264 *
b9cc0730e11c [gaim-migrate @ 7414]
Christian Hammond <chipx86@chipx86.com>
parents: 6826
diff changeset
265 * @return The binary data.
b9cc0730e11c [gaim-migrate @ 7414]
Christian Hammond <chipx86@chipx86.com>
parents: 6826
diff changeset
266 */
b9cc0730e11c [gaim-migrate @ 7414]
Christian Hammond <chipx86@chipx86.com>
parents: 6826
diff changeset
267 const void *msn_message_get_bin_data(const MsnMessage *msg, size_t *len);
b9cc0730e11c [gaim-migrate @ 7414]
Christian Hammond <chipx86@chipx86.com>
parents: 6826
diff changeset
268
b9cc0730e11c [gaim-migrate @ 7414]
Christian Hammond <chipx86@chipx86.com>
parents: 6826
diff changeset
269 /**
5309
3178acad1449 [gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents: 4542
diff changeset
270 * Sets the content type in a message.
4542
05a476dec582 [gaim-migrate @ 4821]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
271 *
5309
3178acad1449 [gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents: 4542
diff changeset
272 * @param msg The message.
3178acad1449 [gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents: 4542
diff changeset
273 * @param type The content-type.
3178acad1449 [gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents: 4542
diff changeset
274 */
3178acad1449 [gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents: 4542
diff changeset
275 void msn_message_set_content_type(MsnMessage *msg, const char *type);
3178acad1449 [gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents: 4542
diff changeset
276
3178acad1449 [gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents: 4542
diff changeset
277 /**
3178acad1449 [gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents: 4542
diff changeset
278 * Returns the content type in a message.
3178acad1449 [gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents: 4542
diff changeset
279 *
3178acad1449 [gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents: 4542
diff changeset
280 * @param msg The message.
3178acad1449 [gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents: 4542
diff changeset
281 *
3178acad1449 [gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents: 4542
diff changeset
282 * @return The content-type.
3178acad1449 [gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents: 4542
diff changeset
283 */
3178acad1449 [gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents: 4542
diff changeset
284 const char *msn_message_get_content_type(const MsnMessage *msg);
3178acad1449 [gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents: 4542
diff changeset
285
3178acad1449 [gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents: 4542
diff changeset
286 /**
3178acad1449 [gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents: 4542
diff changeset
287 * Sets the charset in a message.
3178acad1449 [gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents: 4542
diff changeset
288 *
3178acad1449 [gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents: 4542
diff changeset
289 * @param msg The message.
3178acad1449 [gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents: 4542
diff changeset
290 * @param charset The charset.
3178acad1449 [gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents: 4542
diff changeset
291 */
3178acad1449 [gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents: 4542
diff changeset
292 void msn_message_set_charset(MsnMessage *msg, const char *charset);
3178acad1449 [gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents: 4542
diff changeset
293
3178acad1449 [gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents: 4542
diff changeset
294 /**
3178acad1449 [gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents: 4542
diff changeset
295 * Returns the charset in a message.
3178acad1449 [gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents: 4542
diff changeset
296 *
3178acad1449 [gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents: 4542
diff changeset
297 * @param msg The message.
3178acad1449 [gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents: 4542
diff changeset
298 *
3178acad1449 [gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents: 4542
diff changeset
299 * @return The charset.
4542
05a476dec582 [gaim-migrate @ 4821]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
300 */
5309
3178acad1449 [gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents: 4542
diff changeset
301 const char *msn_message_get_charset(const MsnMessage *msg);
3178acad1449 [gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents: 4542
diff changeset
302
3178acad1449 [gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents: 4542
diff changeset
303 /**
3178acad1449 [gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents: 4542
diff changeset
304 * Sets an attribute in a message.
3178acad1449 [gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents: 4542
diff changeset
305 *
3178acad1449 [gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents: 4542
diff changeset
306 * @param msg The message.
3178acad1449 [gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents: 4542
diff changeset
307 * @param attr The attribute name.
3178acad1449 [gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents: 4542
diff changeset
308 * @param value The attribute value.
3178acad1449 [gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents: 4542
diff changeset
309 */
3178acad1449 [gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents: 4542
diff changeset
310 void msn_message_set_attr(MsnMessage *msg, const char *attr,
3178acad1449 [gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents: 4542
diff changeset
311 const char *value);
3178acad1449 [gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents: 4542
diff changeset
312
3178acad1449 [gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents: 4542
diff changeset
313 /**
3178acad1449 [gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents: 4542
diff changeset
314 * Returns an attribute from a message.
3178acad1449 [gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents: 4542
diff changeset
315 *
3178acad1449 [gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents: 4542
diff changeset
316 * @param msg The message.
3178acad1449 [gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents: 4542
diff changeset
317 * @param attr The attribute.
3178acad1449 [gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents: 4542
diff changeset
318 *
3178acad1449 [gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents: 4542
diff changeset
319 * @return The value, or @c NULL if not found.
3178acad1449 [gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents: 4542
diff changeset
320 */
3178acad1449 [gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents: 4542
diff changeset
321 const char *msn_message_get_attr(const MsnMessage *msg, const char *attr);
3178acad1449 [gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents: 4542
diff changeset
322
3178acad1449 [gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents: 4542
diff changeset
323 /**
3178acad1449 [gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents: 4542
diff changeset
324 * Parses the body and returns it in the form of a hashtable.
3178acad1449 [gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents: 4542
diff changeset
325 *
3178acad1449 [gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents: 4542
diff changeset
326 * @param msg The message.
3178acad1449 [gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents: 4542
diff changeset
327 *
3178acad1449 [gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents: 4542
diff changeset
328 * @return The resulting hashtable.
3178acad1449 [gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents: 4542
diff changeset
329 */
3178acad1449 [gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents: 4542
diff changeset
330 GHashTable *msn_message_get_hashtable_from_body(const MsnMessage *msg);
4542
05a476dec582 [gaim-migrate @ 4821]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
331
9193
6e76f1367896 [gaim-migrate @ 9988]
Felipe Contreras <felipe.contreras@gmail.com>
parents: 9158
diff changeset
332 void msn_message_show_readable(MsnMessage *msg, const char *info,
6e76f1367896 [gaim-migrate @ 9988]
Felipe Contreras <felipe.contreras@gmail.com>
parents: 9158
diff changeset
333 gboolean text_body);
6e76f1367896 [gaim-migrate @ 9988]
Felipe Contreras <felipe.contreras@gmail.com>
parents: 9158
diff changeset
334
6e76f1367896 [gaim-migrate @ 9988]
Felipe Contreras <felipe.contreras@gmail.com>
parents: 9158
diff changeset
335 void msn_message_parse_slp_body(MsnMessage *msg, const char *body,
6e76f1367896 [gaim-migrate @ 9988]
Felipe Contreras <felipe.contreras@gmail.com>
parents: 9158
diff changeset
336 size_t len);
6e76f1367896 [gaim-migrate @ 9988]
Felipe Contreras <felipe.contreras@gmail.com>
parents: 9158
diff changeset
337
6e76f1367896 [gaim-migrate @ 9988]
Felipe Contreras <felipe.contreras@gmail.com>
parents: 9158
diff changeset
338 char *msn_message_gen_slp_body(MsnMessage *msg, size_t *ret_size);
6e76f1367896 [gaim-migrate @ 9988]
Felipe Contreras <felipe.contreras@gmail.com>
parents: 9158
diff changeset
339
10225
0dfea1bc8695 [gaim-migrate @ 11357]
Felipe Contreras <felipe.contreras@gmail.com>
parents: 9198
diff changeset
340 char *msn_message_to_string(MsnMessage *msg);
9193
6e76f1367896 [gaim-migrate @ 9988]
Felipe Contreras <felipe.contreras@gmail.com>
parents: 9158
diff changeset
341
25538
22182aef4300 Move some MSN message handlers from switchboard to general msg.c.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 25469
diff changeset
342 void msn_plain_msg(MsnCmdProc *cmdproc, MsnMessage *msg);
22182aef4300 Move some MSN message handlers from switchboard to general msg.c.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 25469
diff changeset
343
22182aef4300 Move some MSN message handlers from switchboard to general msg.c.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 25469
diff changeset
344 void msn_control_msg(MsnCmdProc *cmdproc, MsnMessage *msg);
22182aef4300 Move some MSN message handlers from switchboard to general msg.c.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 25469
diff changeset
345
22182aef4300 Move some MSN message handlers from switchboard to general msg.c.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 25469
diff changeset
346 void msn_datacast_msg(MsnCmdProc *cmdproc, MsnMessage *msg);
22182aef4300 Move some MSN message handlers from switchboard to general msg.c.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 25469
diff changeset
347
27569
7f08e35e35ac Add support for receiving handwritten (Ink) messages from MSN buddies.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 25538
diff changeset
348 void msn_handwritten_msg(MsnCmdProc *cmdproc, MsnMessage *msg);
7f08e35e35ac Add support for receiving handwritten (Ink) messages from MSN buddies.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 25538
diff changeset
349
4542
05a476dec582 [gaim-migrate @ 4821]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
350 #endif /* _MSN_MSG_H_ */

mercurial