Server packets overview
 
Server packets overview 

Server reply packet (command 000a) 

/* 03 00 0a 00 01 00 00 00 8f e4 5e 00 00 00 00 00 */

00 03      - version number
00 0a  - command code (server and client have the same code)
00 09      - sequence number of packet (seq1)
00 0a      - (seq2 of replyed packet)
00 5e e4 8f        - intrAnet client UIN number
00 00 00 00        - internet client UIN number (not used - reserved)

Note: This type of packet used to confirm receiving client packet. It should have 
seq1 = seq1 of replied server packet. If client after sending packet to server don't 
receive ack packet it send it again.

Server login reply (command 005a) 

/* 03 00 5a 00 01 00 10 8f e4 5e 00 00 00 00 00 7f 00 00 00 00 00 00 00 19 00 00 
00 02 00 00 00 01 00 fa 00 00 00 2d 00 05 00 0a 00 05 00 */

00 03      - version number
00 5a      - command code
00 01      - sequence number (seq1)
00 10      - seq2 of user login packet
8f e4 5e 00        - uin 
00 00 00 00        - zero field
7f 00 00 00     - ip addr (127.0.0.1)
00 00              - unknown
00 00 19 00        - unknown
00 00 02 00        - unknown
00 00 00 01        - unknown
fa 00 00 00        - unknown
2d 00 05 00        - unknown
0a 00 05 00        - unknown

Note: This type of packet used to confirm receiving client logon packet.

User online packet (command 006e) 

/* 03 00 6e 00 01 00 00 00 8f e4 5e 00 00 00 00 00 f2 03 00 00 7f 00 00 00 00 2e 06 
00 00 7f 00 00 00 04 00 00 00 00 02 00 00 00 */

00 03      - version number
00 6e      - command code 
00 01      - sequence number of packet (seq1)
00 00      - zero
00 5e e4 8f        - intrAnet client UIN number
00 00 00 00        - internet client UIN number (not used - reserved)
00 00 03 f2        - event user UIN
7f 00 00 00        - user IP
00 00 06 2e        - user port
7f 00 00 00        - user REAL IP
04              - gap
00 00 00 00        - user status
00 00 00 02        - unknown field

Note: This packet used by server to alert client about new connected user. 

End of contact list (command 021c) 

/* 03 00 1c 02 07 00 00 00 8f e4 5e 00 00 00 00 00 */

00 03      - version number
02 1      - command code 
00 07      - sequence number of packet (seq1)
00 06      - seq2 of "contact list" packet
00 5e e4 8f        - intrAnet client UIN number
00 00 00 00        - internet client UIN number (not used - reserved)

Note: This packet used by server inform client that all his contact list processed. 

User gone offline (command 0078) 

/* 03 00 78 00 09 00 00 00 8f e4 5e 00 00 00 00 00 06 04 00 00 */

00 03      - version number
00 78      - command code 
00 09      - sequence number of packet (seq1)
00 00      - zero
00 5e e4 8f        - intrAnet client UIN number
00 00 00 00        - internet client UIN number (not used - reserved)
00 00 04 06        - event user UIN

Note: This packet used by server inform client that user from contact list gone offline. 

User changed his status (command 01a4) 

/* 03 00 a4 01 09 00 00 00 8f e4 5e 00 00 00 00 00 f2 03 00 00 00 00 00 00 */

00 03      - version number
01 a4      - command code 
00 09   - sequence number of packet (seq1)
00 00      - zero
00 5e e4 8f        - intrAnet client UIN number
00 00 00 00        - internet client UIN number (not used - reserved)
00 00 03 f2        - event user UIN
00 00 00 00        - user status

Note: This packet used by server to alert client that user from contact list changed his status. 

Login error (command 0370) 

/* 03 00 70 03 0a 00 00 00 8f e4 5e 00 00 00 00 00 06 00 ce ce ce ce ce 00 */

00 03      - version number
03 70      - command code 
00 09      - sequence number of packet (seq1)
00 02      - seq2 of login packet
00 5e e4 8f        - intrAnet client UIN number
00 00 00 00        - internet client UIN number (not used - reserved)
00 06              - length of error message
ce .. ce 00        - error message string with 00 at the end

Note: This packet used by server inform client that login can't be finished. 
Packet contain message explaining error. 

Password error (command 0064) 

/* 03 00 64 00 0a 00 00 00 8f e4 5e 00 00 00 00 00 */

00 03      - version number
00 63      - command code 
00 0a      - sequence number of packet (seq1)
00 02      - seq2 of login packet
00 5e e4 8f        - intrAnet client UIN number
00 00 00 00        - internet client UIN number (not used - reserved)

Note: This packet used by server inform client that incorrect password was sent during logon. 

Search: user found (command 008c) 

/* 03 00 8c 00 0b 00 00 00 8f e4 5e 00 00 00 00 00 0b 00 50 55 50 4B 49 4E 5F 56 41 
53 00 06 00 56 41 53 41 00 50 55 50 4B 49 4E 00 16 00 50 55 50 4B 49 4E 40 45 4D 41 
49 4C 2E 4B 48 53 54 55 2E 52 55 00 00 */

00 03      - version number
00 8c      - command code 
00 0a      - sequence number of packet (seq1)
00 11      - seq2 of "begin search" client packet
00 5e e4 8f        - intrAnet client UIN number
00 00 00 00        - internet client UIN number (not used - reserved)
0b 00              - NickName length
xx .. xx 00        - NickName string
06 00              - FName length
xx .. xx 00        - FName string
07 00              - LName length
xx .. xx 00        - LName string
16 00              - Email length
xx .. xx 00     - Email string
00              - auth mode

Note: This packet used by server to deliver found user basic to client. 

End of search (command 00a0) 

/* 03 00 a0 00 0a 00 00 00 8f e4 5e 00 00 00 00 00 */

00 03      - version number
00 a0      - command code 
00 0a      - sequence number of packet (seq1)
00 11      - seq2 of search packet
00 5e e4 8f        - intrAnet client UIN number
00 00 00 00        - internet client UIN number (not used - reserved)

Note: This packet used by server to inform client that search is finished. 

Registration ok (command 0384) 

/* 03 00 84 03 0a 00 00 00 8f e4 5e 00 00 00 00 00 10 00 52 65 67 69 73 74 72 61 74
 69 6F 6E 20 4F 4B 00 */

00 03      - version number
03 84      - command code 
00 0a      - sequence number of packet (seq1)
00 14      - seq2 of registration form packet
00 5e e4 8f        - intrAnet client UIN number
00 00 00 00        - internet client UIN number (not used - reserved)
00 10              - message length
52 .. 4b 00        - message ("Registration ok")

Note: This packet used by server to inform client that registration request sent successfully. 

 User_notes (command 0352) 

/* 03 00 52 03 0a 00 00 00 8f e4 5e 00 00 00 00 00 1f 00 42 61 6E 7A 61 69 2E 2E 2E 20 54 
68 69 73 20 69 73 20 6E 65 77 20 6E 6F 74 65 73 2E 2E 2E 00 a3 fb 4c 09 ea fb 4c 09 7f 00 
00 00 */

00 03      - version number
03 52      - command code 
00 0a      - sequence number of packet (seq1)
00 10      - seq2 of notes request packet
00 5e e4 8f     - intrAnet client UIN number
00 00 00 00        - internet client UIN number (not used - reserved)
00 1F              - notes length
42 .. 2e 00        - notes string
09 4c fb a3        - timestamp: last notes update time and date
09 4c fb ea        - timestamp: last login time and date

Note: This packet used by server to deliver to client requested user notes. 

Basic info packet (command 02e4) 

/* 03 00 e4 02 0a 00 00 00 8f e4 5e 00 00 00 00 00 0b 00 50 55 50 4B 49 4E 5F 56 41 53 00 06 
00 56 41 53 41 00 50 55 50 4B 49 4E 00 16 00 50 55 50 4B 49 4E 40 45 4D 41 49 4C 2E 4B 48 53 
54 55 2E 52 55 00 00 */

00 03      - version number
02 e4      - command code 
00 0a      - sequence number of packet (seq1)
00 17      - seq2 of info request packet
00 5e e4 8f        - intrAnet client UIN number
00 00 00 00        - internet client UIN number (not used - reserved)
0b 00              - NickName length
xx .. xx 00        - NickName string
06 00              - FName length
xx .. xx 00        - FName string
07 00              - LName length
xx .. xx 00        - LName string
16 00              - Email length
xx .. xx 00        - Email string
00                 - auth mode

Note: This packet used by server to deliver to client first part (basic) requested user info. 

Server busy packet (command 00fa) 

/* 03 00 fa 00 0a 00 00 00 8f e4 5e 00 00 00 00 00 */

00 03      - version number
00 fa      - command code 
00 0a      - sequence number of packet (seq1)
00 11      - seq2 of problem packet
00 5e e4 8f        - intrAnet client UIN number
00 00 00 00        - internet client UIN number (not used - reserved)

Note: This packet used by server to inform client that operation can't be finished, 
and it should try again in few minutes. 

Set user notes ok (command 02a8) 

/* 03 00 a8 02 0a 00 11 00 8f e4 5e 00 00 00 00 00 */

00 03      - version number
02 a8      - command code 
00 0a      - sequence number of packet (seq1)
00 11      - seq2 of setnotes packet
00 5e e4 8f        - intrAnet client UIN number
00 00 00 00        - internet client UIN number (not used - reserved)

Note: This packet used by server to inform client that operation finished successfully. 

Set user basic info ok (command 01e0) 

/* 03 00 e0 01 0a 00 11 00 8f e4 5e 00 00 00 00 00 */

00 03      - version number
01 e0      - command code 
00 0a      - sequence number of packet (seq1)
00 11      - seq2 of basic setinfo packet
00 5e e4 8f        - intrAnet client UIN number
00 00 00 00        - internet client UIN number (not used - reserved)

Note: This packet used by server to inform client that operation finished successfully. 

Set user home info ok (command 0280) 

/* 03 00 80 02 0a 00 11 00 8f e4 5e 00 00 00 00 00 */

00 03      - version number
02 80      - command code 
00 0a      - sequence number of packet (seq1)
00 11      - seq2 of home setinfo packet
00 5e e4 8f        - intrAnet client UIN number
00 00 00 00        - internet client UIN number (not used - reserved)

Note: This packet used by server to inform client that operation finished successfully. 

Set user work info ok (command 026c) 

/* 03 00 6c 02 0a 00 11 00 8f e4 5e 00 00 00 00 00 */

00 03      - version number
02 6c      - command code 
00 0a      - sequence number of packet (seq1)
00 11      - seq2 of home setinfo packet
00 5e e4 8f        - intrAnet client UIN number
00 00 00 00        - internet client UIN number (not used - reserved)

Note: This packet used by server to inform client that operation finished successfully. 


Set new password ok (command 0140) 

/* 03 00 40 01 0a 00 11 00 8f e4 5e 00 00 00 00 00 */

00 03      - version number
01 40      - command code 
00 0a      - sequence number of packet (seq1)
00 11      - seq2 of set_password packet
00 5e e4 8f        - intrAnet client UIN number
00 00 00 00        - internet client UIN number (not used - reserved)

Note: This packet used by server to inform client that operation finished successfully. 

Set auth mode ok (command 01f4) 

/* 03 00 f4 01 0a 00 11 00 8f e4 5e 00 00 00 00 00 */

00 03      - version number
01 f4      - command code 
00 0a      - sequence number of packet (seq1)
00 11      - seq2 of home setinfo packet
00 5e e4 8f        - intrAnet client UIN number
00 00 00 00>       - internet client UIN number (not used - reserved)

Note: This packet used by server to inform client that operation finished successfully.