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.