OpenMoHAA 0.82.0
Loading...
Searching...
No Matches
chatASCII.h
1/*
2GameSpy Chat SDK
3Dan "Mr. Pants" Schoenblum
4dan@gamespy.com
5
6Copyright 1999-2007 GameSpy Industries, Inc
7
8devsupport@gamespy.com
9*/
10
11#ifndef _CHATASCII_H_
12#define _CHATASCII_H_
13
16#include "chat.h"
17
18
21#ifdef __cplusplus
22extern "C" {
23#endif
24
25
26// Connects you to a chat server and returns a CHAT object.
28CHAT chatConnectA(const char * serverAddress,
29 int port,
30 const char * nick,
31 const char * user,
32 const char * name,
33 chatGlobalCallbacks * callbacks,
34 chatNickErrorCallback nickErrorCallback,
35 chatConnectCallback connectCallback,
36 void * param,
37 CHATBool blocking);
38CHAT chatConnectSpecialA(const char * serverAddress,
39 int port,
40 const char * nick,
41 const char * name,
42 chatGlobalCallbacks * callbacks,
43 chatNickErrorCallback nickErrorCallback,
44 chatFillInUserCallback fillInUserCallback,
45 chatConnectCallback connectCallback,
46 void * param,
47 CHATBool blocking);
48CHAT chatConnectSecureA(const char * serverAddress,
49 int port,
50 const char * nick,
51 const char * name,
52 const char * gamename,
53 const char * secretKey,
54 chatGlobalCallbacks * callbacks,
55 chatNickErrorCallback nickErrorCallback,
56 chatFillInUserCallback fillInUserCallback,
57 chatConnectCallback connectCallback,
58 void * param,
59 CHATBool blocking);
60CHAT chatConnectLoginA(const char * serverAddress,
61 int port,
62 int namespaceID,
63 const char * email,
64 const char * profilenick,
65 const char * uniquenick,
66 const char * password,
67 const char * name,
68 const char * gamename,
69 const char * secretKey,
70 chatGlobalCallbacks * callbacks,
71 chatNickErrorCallback nickErrorCallback,
72 chatFillInUserCallback fillInUserCallback,
73 chatConnectCallback connectCallback,
74 void * param,
75 CHATBool blocking);
76CHAT chatConnectPreAuthA(const char * serverAddress,
77 int port,
78 const char * authtoken,
79 const char * partnerchallenge,
80 const char * name,
81 const char * gamename,
82 const char * secretKey,
83 chatGlobalCallbacks * callbacks,
84 chatNickErrorCallback nickErrorCallback,
85 chatFillInUserCallback fillInUserCallback,
86 chatConnectCallback connectCallback,
87 void * param,
88 CHATBool blocking);
89
90// If the chatNickErrorCallback gets called, then this can be called
91// with a new nick to retry. If this isn't called, the connection can be
92// disconnected with chatDisconnect. If the new nick is successful, then
93// the chatConnectCallback will get called. If there's another nick
94// error, the chatNickErrorCallback will get called again.
96void chatRetryWithNickA(CHAT chat,
97 const char * nick);
98
99// Register a uniquenick.
100// Should be called in response to the chatNickErrorCallback being called
101// with a type of CHAT_UNIQUENICK_EXPIRED or CHAT_NO_UNIQUENICK.
102// If the uniquenick cannot be registered, the chatNickErrorCallback will
103// be called again with a type of CHAT_IN_USE or CHAT_INVALID.
105void chatRegisterUniqueNickA(CHAT chat,
106 int namespaceID,
107 const char * uniquenick,
108 const char * cdkey);
109
110// Sends raw data, without any interpretation.
112void chatSendRawA(CHAT chat,
113 const char * command);
114
115// Change the local user's nick.
117void chatChangeNickA(CHAT chat,
118 const char * newNick,
119 chatChangeNickCallback callback,
120 void * param,
121 CHATBool blocking);
122
123// Get our local nickname.
125const char * chatGetNickA(CHAT chat);
126
127// Copies the oldNick to the newNick, replacing any invalid characters with legal ones.
129void chatFixNickA(char * newNick,
130 const char * oldNick);
131
132// Removes the namespace extension from a chat nick.
134const char * chatTranslateNickA(char * nick,
135 const char * extension);
136
137// Attempts to authenticates a CD key.
139void chatAuthenticateCDKeyA(CHAT chat,
140 const char * cdkey,
141 chatAuthenticateCDKeyCallback callback,
142 void * param,
143 CHATBool blocking);
144
145/*************
146** CHANNELS **
147*************/
148// Enumerates the channels available on a chat server.
150void chatEnumChannelsA(CHAT chat,
151 const char * filter,
152 chatEnumChannelsCallbackEach callbackEach,
153 chatEnumChannelsCallbackAll callbackAll,
154 void * param,
155 CHATBool blocking);
156
157// Enters a channel.
159void chatEnterChannelA(CHAT chat,
160 const char * channel,
161 const char * password,
162 chatChannelCallbacks * callbacks,
163 chatEnterChannelCallback callback,
164 void * param,
165 CHATBool blocking);
166
167// Leaves a channel.
169void chatLeaveChannelA(CHAT chat,
170 const char * channel,
171 const char * reason); // PANTS|03.13.01
172
173// Sends a message to a channel.
175void chatSendChannelMessageA(CHAT chat,
176 const char * channel,
177 const char * message,
178 int type);
179
180// Sets the topic in a channel.
182void chatSetChannelTopicA(CHAT chat,
183 const char * channel,
184 const char * topic);
185
186// Gets a channel's topic.
188void chatGetChannelTopicA(CHAT chat,
189 const char * channel,
190 chatGetChannelTopicCallback callback,
191 void * param,
192 CHATBool blocking);
193
194// Sets a channel's mode.
196void chatSetChannelModeA(CHAT chat,
197 const char * channel,
198 CHATChannelMode * mode);
199
200// Gets a channel's mode.
202void chatGetChannelModeA(CHAT chat,
203 const char * channel,
204 chatGetChannelModeCallback callback,
205 void * param,
206 CHATBool blocking);
207
208// Sets the password in a channel.
210void chatSetChannelPasswordA(CHAT chat,
211 const char * channel,
212 CHATBool enable,
213 const char * password);
214
215// Gets the password in a channel.
217void chatGetChannelPasswordA(CHAT chat,
218 const char * channel,
219 chatGetChannelPasswordCallback callback,
220 void * param,
221 CHATBool blocking);
222
223// Set the maximum number of users allowed in a channel.
225void chatSetChannelLimitA(CHAT chat,
226 const char * channel,
227 int limit);
228
229// Enumerate through the bans in a channel.
231void chatEnumChannelBansA(CHAT chat,
232 const char * channel,
233 chatEnumChannelBansCallback callback,
234 void * param,
235 CHATBool blocking);
236
237// Adds a channel ban.
239void chatAddChannelBanA(CHAT chat,
240 const char * channel,
241 const char * ban);
242
243// Removes a ban string from a channel.
245void chatRemoveChannelBanA(CHAT chat,
246 const char * channel,
247 const char * ban);
248
249// Set the group this channel is a part of.
251void chatSetChannelGroupA(CHAT chat,
252 const char * channel,
253 const char * group);
254
255// Get the number of users in the channel.
256// Returns -1 if we are not in the channel.
258int chatGetChannelNumUsersA(CHAT chat,
259 const char * channel);
260
261
262// Returns CHATTrue if we are in the channel
264CHATBool chatInChannelA(CHAT chat,
265 const char * channel);
266
267
268/**********
269** USERS **
270**********/
271// Enumerate through the users in a channel.
273void chatEnumUsersA(CHAT chat,
274 const char * channel,
275 chatEnumUsersCallback callback,
276 void * param,
277 CHATBool blocking);
278
279// Send a private message to a user.
281void chatSendUserMessageA(CHAT chat,
282 const char * user,
283 const char * message,
284 int type);
285
286// Get a user's info.
288void chatGetUserInfoA(CHAT chat,
289 const char * user,
290 chatGetUserInfoCallback callback,
291 void * param,
292 CHATBool blocking);
293
294
295// Get some basic info on the user.
296// PANTS|12.08.2000
298void chatGetBasicUserInfoA(CHAT chat,
299 const char * user,
300 chatGetBasicUserInfoCallback callback,
301 void * param,
302 CHATBool blocking);
303
304// Get basic info without waiting.
305// Returns CHATFalse if the info isn't available.
307CHATBool chatGetBasicUserInfoNoWaitA(CHAT chat,
308 const char * nick,
309 const char ** user,
310 const char ** address);
311
312
313// Get basic info on all the users in a channel.
314// PANTS|12.19.00
316void chatGetChannelBasicUserInfoA(CHAT chat,
317 const char * channel,
318 chatGetChannelBasicUserInfoCallback callback,
319 void * param,
320 CHATBool blocking);
321
322// Invite a user into a channel.
324void chatInviteUserA(CHAT chat,
325 const char * channel,
326 const char * user);
327
328// Kick a user from a channel.
330void chatKickUserA(CHAT chat,
331 const char * channel,
332 const char * user,
333 const char * reason);
334
335// Ban a user from a channel.
337void chatBanUserA(CHAT chat,
338 const char * channel,
339 const char * user);
340
341// Sets a user's mode in a channel.
343void chatSetUserModeA(CHAT chat,
344 const char * channel,
345 const char * user,
346 int mode);
347
348// Gets a user's mode in a channel.
350void chatGetUserModeA(CHAT chat,
351 const char * channel,
352 const char * user,
353 chatGetUserModeCallback callback,
354 void * param,
355 CHATBool blocking);
356
357// Gets a user's mode in a channel.
359CHATBool chatGetUserModeNoWaitA(CHAT chat,
360 const char * channel,
361 const char * user,
362 int * mode);
363
364// Get the UDP relay address for a channel
366void chatGetUdpRelayA(CHAT chat,
367 const char * channel,
368 chatGetUdpRelayCallback callback,
369 void * param,
370 CHATBool blocking);
371/*********
372** KEYS **
373*********/
374// Sets global key/values for the local user.
375// Set a value to NULL or "" to clear that key.
377void chatSetGlobalKeysA(CHAT chat,
378 int num,
379 const char ** keys,
380 const char ** values);
381
382// Gets global key/values for a user or users.
383// To get the global key/values for one user, pass in that
384// user's nick as the target. To get the global key/values
385// for every user in a channel, use the channel name as the target.
387void chatGetGlobalKeysA(CHAT chat,
388 const char * target,
389 int num,
390 const char ** keys,
391 chatGetGlobalKeysCallback callback,
392 void * param,
393 CHATBool blocking);
394
395// Sets channel key/values.
396// If user is NULL or "", the keys will be set on the channel.
397// Otherwise, they will be set on the user,
398// Only ops can set channel keys on other users.
399// Set a value to NULL or "" to clear that key.
401void chatSetChannelKeysA(CHAT chat,
402 const char * channel,
403 const char * user,
404 int num,
405 const char ** keys,
406 const char ** values);
407
408// Gets channel key/values for a user or users, or for a channel.
409// To get the channel key/values for every user in
410// a channel, pass in "*" as the user. To get the keys for a channel,
411// pass in NULL or "".
413void chatGetChannelKeysA(CHAT chat,
414 const char * channel,
415 const char * user,
416 int num,
417 const char ** keys,
418 chatGetChannelKeysCallback callback,
419 void * param,
420 CHATBool blocking);
421
422
425// This ASCII versions must be available even when GSI_UNICODE is defined
426CHATBool chatGetBasicUserInfoNoWaitA(CHAT chat,
427 const char * nick,
428 const char ** user,
429 const char ** address);
430
431
434#ifdef __cplusplus
435} // extern "C"
436#endif
437
438
441#endif // _CHATASCII_H_
Definition chat.h:81
Definition chat.h:349
Definition chat.h:246