Wed, 13 May 2009 20:29:03 +0000
Support custom smileys in MUCs (when all participants support BoB and a maximum
of 10 participants are in the chat).
Always announce support for BoB, since disable custom smileys will still turn
off fetching them, and BoB can be used for other purposes further on.
|
21481
d52b697eaae7
Add MSNP9 back as an alternative alongside the existing MSN prpl. Cowardly
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
diff
changeset
|
1 | /** |
|
d52b697eaae7
Add MSNP9 back as an alternative alongside the existing MSN prpl. Cowardly
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
diff
changeset
|
2 | * @file cmdproc.h MSN command processor functions |
|
d52b697eaae7
Add MSNP9 back as an alternative alongside the existing MSN prpl. Cowardly
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
diff
changeset
|
3 | * |
|
d52b697eaae7
Add MSNP9 back as an alternative alongside the existing MSN prpl. Cowardly
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
diff
changeset
|
4 | * purple |
|
d52b697eaae7
Add MSNP9 back as an alternative alongside the existing MSN prpl. Cowardly
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
diff
changeset
|
5 | * |
|
d52b697eaae7
Add MSNP9 back as an alternative alongside the existing MSN prpl. Cowardly
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
diff
changeset
|
6 | * Purple is the legal property of its developers, whose names are too numerous |
|
d52b697eaae7
Add MSNP9 back as an alternative alongside the existing MSN prpl. Cowardly
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
diff
changeset
|
7 | * to list here. Please refer to the COPYRIGHT file distributed with this |
|
d52b697eaae7
Add MSNP9 back as an alternative alongside the existing MSN prpl. Cowardly
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
diff
changeset
|
8 | * source distribution. |
|
d52b697eaae7
Add MSNP9 back as an alternative alongside the existing MSN prpl. Cowardly
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
diff
changeset
|
9 | * |
|
d52b697eaae7
Add MSNP9 back as an alternative alongside the existing MSN prpl. Cowardly
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
diff
changeset
|
10 | * This program is free software; you can redistribute it and/or modify |
|
d52b697eaae7
Add MSNP9 back as an alternative alongside the existing MSN prpl. Cowardly
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
diff
changeset
|
11 | * it under the terms of the GNU General Public License as published by |
|
d52b697eaae7
Add MSNP9 back as an alternative alongside the existing MSN prpl. Cowardly
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
diff
changeset
|
12 | * the Free Software Foundation; either version 2 of the License, or |
|
d52b697eaae7
Add MSNP9 back as an alternative alongside the existing MSN prpl. Cowardly
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
diff
changeset
|
13 | * (at your option) any later version. |
|
d52b697eaae7
Add MSNP9 back as an alternative alongside the existing MSN prpl. Cowardly
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
diff
changeset
|
14 | * |
|
d52b697eaae7
Add MSNP9 back as an alternative alongside the existing MSN prpl. Cowardly
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
diff
changeset
|
15 | * This program is distributed in the hope that it will be useful, |
|
d52b697eaae7
Add MSNP9 back as an alternative alongside the existing MSN prpl. Cowardly
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
diff
changeset
|
16 | * but WITHOUT ANY WARRANTY; without even the implied warranty of |
|
d52b697eaae7
Add MSNP9 back as an alternative alongside the existing MSN prpl. Cowardly
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
diff
changeset
|
17 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|
d52b697eaae7
Add MSNP9 back as an alternative alongside the existing MSN prpl. Cowardly
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
diff
changeset
|
18 | * GNU General Public License for more details. |
|
d52b697eaae7
Add MSNP9 back as an alternative alongside the existing MSN prpl. Cowardly
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
diff
changeset
|
19 | * |
|
d52b697eaae7
Add MSNP9 back as an alternative alongside the existing MSN prpl. Cowardly
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
diff
changeset
|
20 | * You should have received a copy of the GNU General Public License |
|
d52b697eaae7
Add MSNP9 back as an alternative alongside the existing MSN prpl. Cowardly
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
diff
changeset
|
21 | * along with this program; if not, write to the Free Software |
|
d52b697eaae7
Add MSNP9 back as an alternative alongside the existing MSN prpl. Cowardly
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
diff
changeset
|
22 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA |
|
d52b697eaae7
Add MSNP9 back as an alternative alongside the existing MSN prpl. Cowardly
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
diff
changeset
|
23 | */ |
|
d52b697eaae7
Add MSNP9 back as an alternative alongside the existing MSN prpl. Cowardly
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
diff
changeset
|
24 | #ifndef _MSN_CMDPROC_H_ |
|
d52b697eaae7
Add MSNP9 back as an alternative alongside the existing MSN prpl. Cowardly
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
diff
changeset
|
25 | #define _MSN_CMDPROC_H_ |
|
d52b697eaae7
Add MSNP9 back as an alternative alongside the existing MSN prpl. Cowardly
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
diff
changeset
|
26 | |
|
d52b697eaae7
Add MSNP9 back as an alternative alongside the existing MSN prpl. Cowardly
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
diff
changeset
|
27 | typedef struct _MsnCmdProc MsnCmdProc; |
|
d52b697eaae7
Add MSNP9 back as an alternative alongside the existing MSN prpl. Cowardly
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
diff
changeset
|
28 | |
|
d52b697eaae7
Add MSNP9 back as an alternative alongside the existing MSN prpl. Cowardly
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
diff
changeset
|
29 | #include "session.h" |
|
d52b697eaae7
Add MSNP9 back as an alternative alongside the existing MSN prpl. Cowardly
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
diff
changeset
|
30 | #include "servconn.h" |
|
d52b697eaae7
Add MSNP9 back as an alternative alongside the existing MSN prpl. Cowardly
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
diff
changeset
|
31 | #include "error.h" |
|
d52b697eaae7
Add MSNP9 back as an alternative alongside the existing MSN prpl. Cowardly
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
diff
changeset
|
32 | #include "command.h" |
|
d52b697eaae7
Add MSNP9 back as an alternative alongside the existing MSN prpl. Cowardly
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
diff
changeset
|
33 | #include "table.h" |
|
d52b697eaae7
Add MSNP9 back as an alternative alongside the existing MSN prpl. Cowardly
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
diff
changeset
|
34 | #include "history.h" |
|
d52b697eaae7
Add MSNP9 back as an alternative alongside the existing MSN prpl. Cowardly
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
diff
changeset
|
35 | |
|
d52b697eaae7
Add MSNP9 back as an alternative alongside the existing MSN prpl. Cowardly
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
diff
changeset
|
36 | struct _MsnCmdProc |
|
d52b697eaae7
Add MSNP9 back as an alternative alongside the existing MSN prpl. Cowardly
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
diff
changeset
|
37 | { |
|
d52b697eaae7
Add MSNP9 back as an alternative alongside the existing MSN prpl. Cowardly
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
diff
changeset
|
38 | MsnSession *session; |
|
d52b697eaae7
Add MSNP9 back as an alternative alongside the existing MSN prpl. Cowardly
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
diff
changeset
|
39 | MsnServConn *servconn; |
|
d52b697eaae7
Add MSNP9 back as an alternative alongside the existing MSN prpl. Cowardly
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
diff
changeset
|
40 | |
|
d52b697eaae7
Add MSNP9 back as an alternative alongside the existing MSN prpl. Cowardly
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
diff
changeset
|
41 | GQueue *txqueue; |
|
d52b697eaae7
Add MSNP9 back as an alternative alongside the existing MSN prpl. Cowardly
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
diff
changeset
|
42 | |
|
d52b697eaae7
Add MSNP9 back as an alternative alongside the existing MSN prpl. Cowardly
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
diff
changeset
|
43 | MsnCommand *last_cmd; |
|
d52b697eaae7
Add MSNP9 back as an alternative alongside the existing MSN prpl. Cowardly
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
diff
changeset
|
44 | |
|
d52b697eaae7
Add MSNP9 back as an alternative alongside the existing MSN prpl. Cowardly
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
diff
changeset
|
45 | MsnTable *cbs_table; |
|
d52b697eaae7
Add MSNP9 back as an alternative alongside the existing MSN prpl. Cowardly
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
diff
changeset
|
46 | |
|
d52b697eaae7
Add MSNP9 back as an alternative alongside the existing MSN prpl. Cowardly
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
diff
changeset
|
47 | MsnHistory *history; |
|
d52b697eaae7
Add MSNP9 back as an alternative alongside the existing MSN prpl. Cowardly
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
diff
changeset
|
48 | |
|
d52b697eaae7
Add MSNP9 back as an alternative alongside the existing MSN prpl. Cowardly
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
diff
changeset
|
49 | void *data; /**< Extra data, like the switchboard. */ |
|
d52b697eaae7
Add MSNP9 back as an alternative alongside the existing MSN prpl. Cowardly
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
diff
changeset
|
50 | }; |
|
d52b697eaae7
Add MSNP9 back as an alternative alongside the existing MSN prpl. Cowardly
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
diff
changeset
|
51 | |
|
d52b697eaae7
Add MSNP9 back as an alternative alongside the existing MSN prpl. Cowardly
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
diff
changeset
|
52 | MsnCmdProc *msn_cmdproc_new(MsnSession *session); |
|
d52b697eaae7
Add MSNP9 back as an alternative alongside the existing MSN prpl. Cowardly
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
diff
changeset
|
53 | void msn_cmdproc_destroy(MsnCmdProc *cmdproc); |
|
d52b697eaae7
Add MSNP9 back as an alternative alongside the existing MSN prpl. Cowardly
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
diff
changeset
|
54 | |
|
d52b697eaae7
Add MSNP9 back as an alternative alongside the existing MSN prpl. Cowardly
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
diff
changeset
|
55 | void msn_cmdproc_process_queue(MsnCmdProc *cmdproc); |
|
d52b697eaae7
Add MSNP9 back as an alternative alongside the existing MSN prpl. Cowardly
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
diff
changeset
|
56 | |
|
d52b697eaae7
Add MSNP9 back as an alternative alongside the existing MSN prpl. Cowardly
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
diff
changeset
|
57 | void msn_cmdproc_send_trans(MsnCmdProc *cmdproc, MsnTransaction *trans); |
|
d52b697eaae7
Add MSNP9 back as an alternative alongside the existing MSN prpl. Cowardly
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
diff
changeset
|
58 | void msn_cmdproc_queue_trans(MsnCmdProc *cmdproc, |
|
d52b697eaae7
Add MSNP9 back as an alternative alongside the existing MSN prpl. Cowardly
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
diff
changeset
|
59 | MsnTransaction *trans); |
|
d52b697eaae7
Add MSNP9 back as an alternative alongside the existing MSN prpl. Cowardly
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
diff
changeset
|
60 | void msn_cmdproc_send(MsnCmdProc *cmdproc, const char *command, |
|
d52b697eaae7
Add MSNP9 back as an alternative alongside the existing MSN prpl. Cowardly
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
diff
changeset
|
61 | const char *format, ...); |
|
d52b697eaae7
Add MSNP9 back as an alternative alongside the existing MSN prpl. Cowardly
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
diff
changeset
|
62 | void msn_cmdproc_send_quick(MsnCmdProc *cmdproc, const char *command, |
|
d52b697eaae7
Add MSNP9 back as an alternative alongside the existing MSN prpl. Cowardly
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
diff
changeset
|
63 | const char *format, ...); |
|
d52b697eaae7
Add MSNP9 back as an alternative alongside the existing MSN prpl. Cowardly
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
diff
changeset
|
64 | |
|
d52b697eaae7
Add MSNP9 back as an alternative alongside the existing MSN prpl. Cowardly
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
diff
changeset
|
65 | void msn_cmdproc_process_msg(MsnCmdProc *cmdproc, |
|
d52b697eaae7
Add MSNP9 back as an alternative alongside the existing MSN prpl. Cowardly
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
diff
changeset
|
66 | MsnMessage *msg); |
|
d52b697eaae7
Add MSNP9 back as an alternative alongside the existing MSN prpl. Cowardly
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
diff
changeset
|
67 | void msn_cmdproc_process_cmd(MsnCmdProc *cmdproc, MsnCommand *cmd); |
|
d52b697eaae7
Add MSNP9 back as an alternative alongside the existing MSN prpl. Cowardly
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
diff
changeset
|
68 | void msn_cmdproc_process_cmd_text(MsnCmdProc *cmdproc, const char *command); |
|
d52b697eaae7
Add MSNP9 back as an alternative alongside the existing MSN prpl. Cowardly
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
diff
changeset
|
69 | void msn_cmdproc_process_payload(MsnCmdProc *cmdproc, |
|
d52b697eaae7
Add MSNP9 back as an alternative alongside the existing MSN prpl. Cowardly
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
diff
changeset
|
70 | char *payload, int payload_len); |
|
d52b697eaae7
Add MSNP9 back as an alternative alongside the existing MSN prpl. Cowardly
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
diff
changeset
|
71 | |
|
d52b697eaae7
Add MSNP9 back as an alternative alongside the existing MSN prpl. Cowardly
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
diff
changeset
|
72 | void msn_cmdproc_disconnect(MsnCmdProc *cmdproc); |
|
d52b697eaae7
Add MSNP9 back as an alternative alongside the existing MSN prpl. Cowardly
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
diff
changeset
|
73 | |
|
d52b697eaae7
Add MSNP9 back as an alternative alongside the existing MSN prpl. Cowardly
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
diff
changeset
|
74 | #endif /* _MSN_CMDPROC_H_ */ |