Mercurial > pidgin
annotate plugins/icq/chatsession.h @ 1918:fe79493094e7
[gaim-migrate @ 1928]
stupidity
committer: Tailor Script <tailor@pidgin.im>
author | Eric Warmenhoven <eric@warmenhoven.org> |
---|---|
date | Tue, 29 May 2001 23:51:16 +0000 |
parents | 8ed70631ed15 |
children | 7b3f1eb1ef7d |
rev | line source |
---|---|
1912
8ed70631ed15
[gaim-migrate @ 1922]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1432
diff
changeset
|
1 /* -*- Mode: C; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ |
8ed70631ed15
[gaim-migrate @ 1922]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1432
diff
changeset
|
2 |
8ed70631ed15
[gaim-migrate @ 1922]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1432
diff
changeset
|
3 /* |
8ed70631ed15
[gaim-migrate @ 1922]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1432
diff
changeset
|
4 * Copyright (C) 1998-2001, Denis V. Dmitrienko <denis@null.net> and |
8ed70631ed15
[gaim-migrate @ 1922]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1432
diff
changeset
|
5 * Bill Soudan <soudan@kde.org> |
8ed70631ed15
[gaim-migrate @ 1922]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1432
diff
changeset
|
6 * |
8ed70631ed15
[gaim-migrate @ 1922]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1432
diff
changeset
|
7 * This program is free software; you can redistribute it and/or modify |
8ed70631ed15
[gaim-migrate @ 1922]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1432
diff
changeset
|
8 * it under the terms of the GNU General Public License as published by |
8ed70631ed15
[gaim-migrate @ 1922]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1432
diff
changeset
|
9 * the Free Software Foundation; either version 2 of the License, or |
8ed70631ed15
[gaim-migrate @ 1922]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1432
diff
changeset
|
10 * (at your option) any later version. |
8ed70631ed15
[gaim-migrate @ 1922]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1432
diff
changeset
|
11 * |
8ed70631ed15
[gaim-migrate @ 1922]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1432
diff
changeset
|
12 * This program is distributed in the hope that it will be useful, |
8ed70631ed15
[gaim-migrate @ 1922]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1432
diff
changeset
|
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of |
8ed70631ed15
[gaim-migrate @ 1922]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1432
diff
changeset
|
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
8ed70631ed15
[gaim-migrate @ 1922]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1432
diff
changeset
|
15 * GNU General Public License for more details. |
8ed70631ed15
[gaim-migrate @ 1922]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1432
diff
changeset
|
16 * |
8ed70631ed15
[gaim-migrate @ 1922]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1432
diff
changeset
|
17 * You should have received a copy of the GNU General Public License |
8ed70631ed15
[gaim-migrate @ 1922]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1432
diff
changeset
|
18 * along with this program; if not, write to the Free Software |
8ed70631ed15
[gaim-migrate @ 1922]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1432
diff
changeset
|
19 * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. |
8ed70631ed15
[gaim-migrate @ 1922]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1432
diff
changeset
|
20 * |
8ed70631ed15
[gaim-migrate @ 1922]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1432
diff
changeset
|
21 */ |
1152 | 22 |
23 #ifndef _CHAT_SESSION_H | |
24 #define _CHAT_SESSION_H | |
25 | |
26 #include "icq.h" | |
27 #include "icqtypes.h" | |
28 | |
29 /* chat session states: | |
30 | |
31 accepting chat request | |
32 | |
33 1. remote user initiates chat by sending chat request to message listen | |
34 port | |
35 2. local user accepts chat, ack packet sent back to remote user and | |
36 chat listen port opened | |
37 * chat session created on local side with ID of ack packet | |
38 LISTENING | |
39 * remote chat session created with ID of ack packet | |
40 CONNECTING | |
41 3. remote client connects to local chat listen port, sends hello and | |
42 sends info packet with name and colors | |
43 * local chat session associated with new icq_TCPLink according to uin | |
44 4. local client sends back big info packet with name, colors, and font | |
45 | |
46 5. remote client sends font packet, connection is considered established | |
47 | |
48 sending chat request | |
49 | |
50 1. local user initiates chat by sending chat request to remote message | |
51 listen port | |
52 2. remote user accepts chat, ack packet received from remote client and | |
53 remote client opens chat listen port | |
54 3. local client connects to remote chat listen port, sends hello and | |
55 sends info packet with name and colors | |
56 4. remote client sends back big info packet with name, colors, and font | |
57 5. local client sends font packet, connection is considered established | |
58 | |
59 1. icq_RecvChatRequest - provides session ID (same as packet sequence) | |
60 2. icq_SendChatAck - pass session ID | |
61 ICQ_NOTIFY_CONNECTED | |
62 ICQ_NOTIFY_SENT | |
63 ICQ_NOTIFY_CHAT, CHAT_STATUS_LISTENING | |
64 3. ICQ_NOTIFY_CHAT, CHAT_STATUS_WAIT_NAME | |
65 4. ICQ_NOTIFY_CHAT, CHAT_STATUS_WAIT_FONT | |
66 5. ICQ_NOTIFY_CHAT, CHAT_STATUS_CONNECTED | |
67 ICQ_NOTIFY_CHATDATA, .... | |
68 ICQ_NOTIFY_SUCCESS | |
69 */ | |
70 | |
1912
8ed70631ed15
[gaim-migrate @ 1922]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1432
diff
changeset
|
71 icq_ChatSession *icq_ChatSessionNew(icq_Link *); |
1152 | 72 void icq_ChatSessionDelete(void *); |
73 void icq_ChatSessionSetStatus(icq_ChatSession *, int); | |
1912
8ed70631ed15
[gaim-migrate @ 1922]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1432
diff
changeset
|
74 icq_ChatSession *icq_FindChatSession(icq_Link *, DWORD); |
1152 | 75 |
76 #endif |