Mercurial > pidgin.yaz
annotate src/protocols/oscar/aim_cbtypes.h @ 3595:1e60a05c7482
[gaim-migrate @ 3697]
This adds le non-direct connect typing notification for oscar.
How it works, in a nutshell:
-AIM servers append a flag telling remote clients you support typing
notification
-You tell the AIM servers you support typing notification when you sign
on (by changing the "flags" passed to aim_seticbmparam())
-Clients send little typing notification messages to other clients, but
only when they know that the other client supports it (so after you've
received an IM from the other person)
I also fixed a compile warning or two dealing with SSI stuff.
Things to look out for:
-ICQ states doing weird things
-Typing notification works with MacAIM clients (iChat and the official
one)
-Typing notification doesn't try to send stuff to clients that don't
support (I have no idea how you're supposed to look out for this. It
should be ok)
committer: Tailor Script <tailor@pidgin.im>
author | Mark Doliner <mark@kingant.net> |
---|---|
date | Sun, 06 Oct 2002 03:08:47 +0000 |
parents | 56746b0868db |
children | e941bfbacf7c |
rev | line source |
---|---|
2086 | 1 /* |
2 * AIM Callback Types | |
3 * | |
4 */ | |
5 #ifndef __AIM_CBTYPES_H__ | |
6 #define __AIM_CBTYPES_H__ | |
7 | |
8 /* | |
9 * SNAC Families. | |
10 */ | |
11 #define AIM_CB_FAM_ACK 0x0000 | |
12 #define AIM_CB_FAM_GEN 0x0001 | |
13 #define AIM_CB_FAM_LOC 0x0002 | |
14 #define AIM_CB_FAM_BUD 0x0003 | |
15 #define AIM_CB_FAM_MSG 0x0004 | |
16 #define AIM_CB_FAM_ADS 0x0005 | |
17 #define AIM_CB_FAM_INV 0x0006 | |
18 #define AIM_CB_FAM_ADM 0x0007 | |
19 #define AIM_CB_FAM_POP 0x0008 | |
20 #define AIM_CB_FAM_BOS 0x0009 | |
21 #define AIM_CB_FAM_LOK 0x000a | |
22 #define AIM_CB_FAM_STS 0x000b | |
23 #define AIM_CB_FAM_TRN 0x000c | |
24 #define AIM_CB_FAM_CTN 0x000d /* ChatNav */ | |
25 #define AIM_CB_FAM_CHT 0x000e /* Chat */ | |
2991 | 26 #define AIM_CB_FAM_SSI 0x0013 /* Server stored information */ |
2706
e841b14b5b89
[gaim-migrate @ 2719]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2675
diff
changeset
|
27 #define AIM_CB_FAM_ICQ 0x0015 |
2086 | 28 #define AIM_CB_FAM_ATH 0x0017 |
29 #define AIM_CB_FAM_OFT 0xfffe /* OFT/Rvous */ | |
30 #define AIM_CB_FAM_SPECIAL 0xffff /* Internal libfaim use */ | |
31 | |
32 /* | |
33 * SNAC Family: Ack. | |
34 * | |
35 * Not really a family, but treating it as one really | |
36 * helps it fit into the libfaim callback structure better. | |
37 * | |
38 */ | |
39 #define AIM_CB_ACK_ACK 0x0001 | |
40 | |
41 /* | |
42 * SNAC Family: General. | |
43 */ | |
44 #define AIM_CB_GEN_ERROR 0x0001 | |
45 #define AIM_CB_GEN_CLIENTREADY 0x0002 | |
46 #define AIM_CB_GEN_SERVERREADY 0x0003 | |
47 #define AIM_CB_GEN_SERVICEREQ 0x0004 | |
48 #define AIM_CB_GEN_REDIRECT 0x0005 | |
49 #define AIM_CB_GEN_RATEINFOREQ 0x0006 | |
50 #define AIM_CB_GEN_RATEINFO 0x0007 | |
51 #define AIM_CB_GEN_RATEINFOACK 0x0008 | |
52 #define AIM_CB_GEN_RATECHANGE 0x000a | |
53 #define AIM_CB_GEN_SERVERPAUSE 0x000b | |
54 #define AIM_CB_GEN_SERVERRESUME 0x000d | |
55 #define AIM_CB_GEN_REQSELFINFO 0x000e | |
56 #define AIM_CB_GEN_SELFINFO 0x000f | |
57 #define AIM_CB_GEN_EVIL 0x0010 | |
58 #define AIM_CB_GEN_SETIDLE 0x0011 | |
59 #define AIM_CB_GEN_MIGRATIONREQ 0x0012 | |
60 #define AIM_CB_GEN_MOTD 0x0013 | |
61 #define AIM_CB_GEN_SETPRIVFLAGS 0x0014 | |
62 #define AIM_CB_GEN_WELLKNOWNURL 0x0015 | |
63 #define AIM_CB_GEN_NOP 0x0016 | |
64 #define AIM_CB_GEN_DEFAULT 0xffff | |
65 | |
66 /* | |
67 * SNAC Family: Location Services. | |
68 */ | |
69 #define AIM_CB_LOC_ERROR 0x0001 | |
70 #define AIM_CB_LOC_REQRIGHTS 0x0002 | |
71 #define AIM_CB_LOC_RIGHTSINFO 0x0003 | |
72 #define AIM_CB_LOC_SETUSERINFO 0x0004 | |
73 #define AIM_CB_LOC_REQUSERINFO 0x0005 | |
74 #define AIM_CB_LOC_USERINFO 0x0006 | |
75 #define AIM_CB_LOC_WATCHERSUBREQ 0x0007 | |
76 #define AIM_CB_LOC_WATCHERNOT 0x0008 | |
77 #define AIM_CB_LOC_DEFAULT 0xffff | |
78 | |
79 /* | |
80 * SNAC Family: Buddy List Management Services. | |
81 */ | |
82 #define AIM_CB_BUD_ERROR 0x0001 | |
83 #define AIM_CB_BUD_REQRIGHTS 0x0002 | |
84 #define AIM_CB_BUD_RIGHTSINFO 0x0003 | |
85 #define AIM_CB_BUD_ADDBUDDY 0x0004 | |
86 #define AIM_CB_BUD_REMBUDDY 0x0005 | |
87 #define AIM_CB_BUD_REJECT 0x000a | |
88 #define AIM_CB_BUD_ONCOMING 0x000b | |
89 #define AIM_CB_BUD_OFFGOING 0x000c | |
90 #define AIM_CB_BUD_DEFAULT 0xffff | |
91 | |
92 /* | |
93 * SNAC Family: Messeging Services. | |
94 */ | |
95 #define AIM_CB_MSG_ERROR 0x0001 | |
96 #define AIM_CB_MSG_PARAMINFO 0x0005 | |
97 #define AIM_CB_MSG_INCOMING 0x0007 | |
98 #define AIM_CB_MSG_EVIL 0x0009 | |
99 #define AIM_CB_MSG_MISSEDCALL 0x000a | |
3212 | 100 #define AIM_CB_MSG_CLIENTAUTORESP 0x000b |
2086 | 101 #define AIM_CB_MSG_ACK 0x000c |
3595 | 102 #define AIM_CB_MSG_MTN 0x0014 |
2086 | 103 #define AIM_CB_MSG_DEFAULT 0xffff |
104 | |
105 /* | |
106 * SNAC Family: Advertisement Services | |
107 */ | |
108 #define AIM_CB_ADS_ERROR 0x0001 | |
109 #define AIM_CB_ADS_DEFAULT 0xffff | |
110 | |
111 /* | |
112 * SNAC Family: Invitation Services. | |
113 */ | |
114 #define AIM_CB_INV_ERROR 0x0001 | |
115 #define AIM_CB_INV_DEFAULT 0xffff | |
116 | |
117 /* | |
118 * SNAC Family: Administrative Services. | |
119 */ | |
120 #define AIM_CB_ADM_ERROR 0x0001 | |
121 #define AIM_CB_ADM_INFOCHANGE_REPLY 0x0005 | |
122 #define AIM_CB_ADM_DEFAULT 0xffff | |
123 | |
124 /* | |
125 * SNAC Family: Popup Messages | |
126 */ | |
127 #define AIM_CB_POP_ERROR 0x0001 | |
128 #define AIM_CB_POP_DEFAULT 0xffff | |
129 | |
130 /* | |
131 * SNAC Family: Misc BOS Services. | |
132 */ | |
133 #define AIM_CB_BOS_ERROR 0x0001 | |
134 #define AIM_CB_BOS_RIGHTSQUERY 0x0002 | |
135 #define AIM_CB_BOS_RIGHTS 0x0003 | |
136 #define AIM_CB_BOS_DEFAULT 0xffff | |
137 | |
138 /* | |
139 * SNAC Family: User Lookup Services | |
140 */ | |
141 #define AIM_CB_LOK_ERROR 0x0001 | |
142 #define AIM_CB_LOK_DEFAULT 0xffff | |
143 | |
144 /* | |
145 * SNAC Family: User Status Services | |
146 */ | |
147 #define AIM_CB_STS_ERROR 0x0001 | |
148 #define AIM_CB_STS_SETREPORTINTERVAL 0x0002 | |
149 #define AIM_CB_STS_REPORTACK 0x0004 | |
150 #define AIM_CB_STS_DEFAULT 0xffff | |
151 | |
152 /* | |
153 * SNAC Family: Translation Services | |
154 */ | |
155 #define AIM_CB_TRN_ERROR 0x0001 | |
156 #define AIM_CB_TRN_DEFAULT 0xffff | |
157 | |
158 /* | |
159 * SNAC Family: Chat Navigation Services | |
160 */ | |
161 #define AIM_CB_CTN_ERROR 0x0001 | |
162 #define AIM_CB_CTN_CREATE 0x0008 | |
163 #define AIM_CB_CTN_INFO 0x0009 | |
164 #define AIM_CB_CTN_DEFAULT 0xffff | |
165 | |
166 /* | |
167 * SNAC Family: Chat Services | |
168 */ | |
169 #define AIM_CB_CHT_ERROR 0x0001 | |
170 #define AIM_CB_CHT_ROOMINFOUPDATE 0x0002 | |
171 #define AIM_CB_CHT_USERJOIN 0x0003 | |
172 #define AIM_CB_CHT_USERLEAVE 0x0004 | |
173 #define AIM_CB_CHT_OUTGOINGMSG 0x0005 | |
174 #define AIM_CB_CHT_INCOMINGMSG 0x0006 | |
175 #define AIM_CB_CHT_DEFAULT 0xffff | |
176 | |
177 /* | |
2706
e841b14b5b89
[gaim-migrate @ 2719]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2675
diff
changeset
|
178 * SNAC Family: ICQ |
e841b14b5b89
[gaim-migrate @ 2719]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2675
diff
changeset
|
179 * |
e841b14b5b89
[gaim-migrate @ 2719]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2675
diff
changeset
|
180 * Most of these are actually special. |
e841b14b5b89
[gaim-migrate @ 2719]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2675
diff
changeset
|
181 */ |
e841b14b5b89
[gaim-migrate @ 2719]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2675
diff
changeset
|
182 #define AIM_CB_ICQ_ERROR 0x0001 |
e841b14b5b89
[gaim-migrate @ 2719]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2675
diff
changeset
|
183 #define AIM_CB_ICQ_OFFLINEMSG 0x00f0 |
e841b14b5b89
[gaim-migrate @ 2719]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2675
diff
changeset
|
184 #define AIM_CB_ICQ_OFFLINEMSGCOMPLETE 0x00f1 |
2742
6f527cbd899d
[gaim-migrate @ 2755]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2706
diff
changeset
|
185 #define AIM_CB_ICQ_SIMPLEINFO 0x00f2 |
2706
e841b14b5b89
[gaim-migrate @ 2719]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2675
diff
changeset
|
186 #define AIM_CB_ICQ_DEFAULT 0xffff |
e841b14b5b89
[gaim-migrate @ 2719]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2675
diff
changeset
|
187 |
e841b14b5b89
[gaim-migrate @ 2719]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2675
diff
changeset
|
188 /* |
2991 | 189 * SNAC Family: Server-Stored Buddy Lists |
190 */ | |
191 #define AIM_CB_SSI_ERROR 0x0001 | |
192 #define AIM_CB_SSI_REQRIGHTS 0x0002 | |
193 #define AIM_CB_SSI_RIGHTSINFO 0x0003 | |
194 #define AIM_CB_SSI_REQLIST 0x0005 | |
195 #define AIM_CB_SSI_LIST 0x0006 | |
196 #define AIM_CB_SSI_ACTIVATE 0x0007 | |
197 #define AIM_CB_SSI_ADD 0x0008 | |
198 #define AIM_CB_SSI_MOD 0x0009 | |
199 #define AIM_CB_SSI_DEL 0x000A | |
200 #define AIM_CB_SSI_SRVACK 0x000E | |
201 #define AIM_CB_SSI_NOLIST 0x000F | |
202 #define AIM_CB_SSI_EDITSTART 0x0011 | |
203 #define AIM_CB_SSI_EDITSTOP 0x0012 | |
204 | |
205 /* | |
2086 | 206 * SNAC Family: Authorizer |
207 * | |
208 * Used only in protocol versions three and above. | |
209 * | |
210 */ | |
211 #define AIM_CB_ATH_ERROR 0x0001 | |
212 #define AIM_CB_ATH_LOGINREQEST 0x0002 | |
213 #define AIM_CB_ATH_LOGINRESPONSE 0x0003 | |
214 #define AIM_CB_ATH_AUTHREQ 0x0006 | |
215 #define AIM_CB_ATH_AUTHRESPONSE 0x0007 | |
216 | |
217 /* | |
218 * OFT Services | |
219 * | |
220 * See non-SNAC note below. | |
221 */ | |
222 #define AIM_CB_OFT_DIRECTIMCONNECTREQ 0x0001/* connect request -- actually an OSCAR CAP*/ | |
223 #define AIM_CB_OFT_DIRECTIMINCOMING 0x0002 | |
224 #define AIM_CB_OFT_DIRECTIMDISCONNECT 0x0003 | |
225 #define AIM_CB_OFT_DIRECTIMTYPING 0x0004 | |
226 #define AIM_CB_OFT_DIRECTIMINITIATE 0x0005 | |
227 | |
228 #define AIM_CB_OFT_GETFILECONNECTREQ 0x0006 /* connect request -- actually an OSCAR CAP*/ | |
229 #define AIM_CB_OFT_GETFILELISTINGREQ 0x0007 /* OFT listing.txt request */ | |
230 #define AIM_CB_OFT_GETFILEFILEREQ 0x0008 /* received file request */ | |
231 #define AIM_CB_OFT_GETFILEFILESEND 0x0009 /* received file request confirm -- send data */ | |
232 #define AIM_CB_OFT_GETFILECOMPLETE 0x000a /* received file send complete*/ | |
233 #define AIM_CB_OFT_GETFILEINITIATE 0x000b /* request for file get acknowledge */ | |
234 #define AIM_CB_OFT_GETFILEDISCONNECT 0x000c /* OFT connection disconnected.*/ | |
235 #define AIM_CB_OFT_GETFILELISTING 0x000d /* OFT listing.txt received.*/ | |
236 #define AIM_CB_OFT_GETFILERECEIVE 0x000e /* OFT file incoming.*/ | |
237 #define AIM_CB_OFT_GETFILELISTINGRXCONFIRM 0x000f | |
238 #define AIM_CB_OFT_GETFILESTATE4 0x0010 | |
239 | |
240 #define AIM_CB_OFT_SENDFILEDISCONNECT 0x0020 /* OFT connection disconnected.*/ | |
241 | |
242 | |
243 | |
244 /* | |
245 * SNAC Family: Internal Messages | |
246 * | |
247 * This isn't truely a SNAC family either, but using | |
248 * these, we can integrated non-SNAC services into | |
249 * the SNAC-centered libfaim callback structure. | |
250 * | |
251 */ | |
252 #define AIM_CB_SPECIAL_AUTHSUCCESS 0x0001 | |
253 #define AIM_CB_SPECIAL_AUTHOTHER 0x0002 | |
254 #define AIM_CB_SPECIAL_CONNERR 0x0003 | |
255 #define AIM_CB_SPECIAL_CONNCOMPLETE 0x0004 | |
256 #define AIM_CB_SPECIAL_FLAPVER 0x0005 | |
2675 | 257 #define AIM_CB_SPECIAL_CONNINITDONE 0x0006 |
3033 | 258 #define AIM_CB_SPECIAL_IMAGETRANSFER 0x007 |
2086 | 259 #define AIM_CB_SPECIAL_UNKNOWN 0xffff |
260 #define AIM_CB_SPECIAL_DEFAULT AIM_CB_SPECIAL_UNKNOWN | |
261 | |
262 | |
263 #endif/*__AIM_CBTYPES_H__ */ |