This is the message from server that was sent by another client. It contain
two parts: fixed part (sender uin, msg-id cookie, channel, sender info) and
message data part. See also additional information
about online userinfo block.
| 00 04 |
|
word |
|
SNAC family |
| 00 07 |
|
word |
|
SNAC subtype |
| 00 00 |
|
word |
|
SNAC flags |
| xx xx xx xx |
|
dword |
|
SNAC request-id |
|
xx xx xx xx xx xx xx xx |
|
qword |
|
msg-id cookie |
| 00 02 |
|
word |
|
message channel |
| xx |
|
byte |
|
screenname string length |
| xx .. |
|
string |
|
screenname string |
| xx xx |
|
word |
|
sender warning level |
| xx xx |
|
word |
|
number of TLVs in fixed part |
|
| |
| 00 01 |
|
word |
|
TLV.Type(0x01) - user class |
| 00 02 |
|
word |
|
TLV.Length |
|
|
|
|
| |
| |
|
| |
| 00 06 |
|
word |
|
TLV.Type(0x06) - user status |
| 00 04 |
|
word |
|
TLV.Length |
|
|
|
|
| |
| |
|
| |
| 00 0F |
|
word |
|
TLV.Type(0x0F) - online time |
| 00 04 |
|
word |
|
TLV.Length |
|
| xx xx xx xx |
|
dword |
|
client online time |
|
|
| |
| |
|
| |
| 00 03 |
|
word |
|
TLV.Type(0x03) - account creation time |
| 00 04 |
|
word |
|
TLV.Length |
|
| xx xx xx xx |
|
dword |
|
user account creation time |
|
|
| |
| |
|
| |
| 00 05 |
|
word |
|
TLV.Type(0x05) - rendezvous message data |
| xx xx |
|
word |
|
TLV.Length |
|
| xx xx |
|
word |
|
message type (0 - request, 1 - cancel, 2 - accept) |
xx xx xx xx xx xx xx xx |
|
qword |
|
msg-id cookie (same as above) |
| xx .. xx |
|
guid |
|
capability (determines format
of message data in "extention data" below) |
|
|
| |
| 00 04 |
|
word |
|
TLV.Type(0x04) - external ip |
| xx xx |
|
word |
|
TLV.Length |
|
| xx xx xx xx |
|
dword |
|
external ip |
|
|
| |
| |
|
| |
| 00 05 |
|
word |
|
TLV.Type(0x05) - listening port |
| xx xx |
|
word |
|
TLV.Length |
|
| xx xx |
|
word |
|
listening port |
|
|
| |
| |
|
| |
| 00 0A |
|
word |
|
TLV.Type(0x0A) - unknown |
| xx xx |
|
word |
|
TLV.Length |
|
| xx xx |
|
word |
|
unknown (usually 1) |
|
|
| |
| |
|
| |
| 00 0B |
|
word |
|
TLV.Type(0x0B) - unknown |
| xx xx |
|
word |
|
TLV.Length |
|
|
|
|
| |
| |
|
| |
| 00 0F |
|
word |
|
TLV.Type(0x0F) - unknown |
| 00 00 |
|
word |
|
TLV.Length |
|
|
|
|
| |
| |
|
| |
| 27 11 |
|
word |
|
TLV.Type(0x2711) - extention data |
| xx xx |
|
word |
|
TLV.Length |
|
| Following contents is capability-specific. |
|
|
|
Data format description for capability
{09461349-4C7F-11D1-8222-444553540000}
|
| xx xx |
|
word (LE) |
|
length of following data |
| xx xx |
|
word (LE) |
|
protocol version |
| xx .. xx |
|
guid (LE) |
|
plugin or zero bytes |
| xx xx |
|
word |
|
unknown |
| xx xx xx xx |
|
dword (LE) |
|
client capabilities flags |
| xx |
|
byte |
|
unknown |
| xx xx |
|
word (LE) |
|
seems to be a downcounter |
|
| xx xx |
|
word (LE) |
|
length of following data |
| xx xx |
|
word (LE) |
|
seems to be a downcounter as in first chunk above |
| xx .. |
|
|
|
unknown, usually zeros |
|
if plugin field in first chunk above is zero, here is
message, overwise here is
plugin-specific data.
|
|
|
| |
| |
|
|
| |
| |
|
|
| |
| |
|
|
|