Client use this snac to send message thru server on channel 1.
All clients use this snac to send plain-text messages to an old
clients and to clients that doesn't support channel2 messages. TLV(0x03)
and TLV(0x06) is optional.
00 04
word
SNAC family
00 06
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 01
word
message channel
xx
byte
screenname string length
xx ..
string
screenname string
00 02
word
TLV.Type(0x02) - message data
xx xx
word
TLV.Length
05 01
word
TLV.Type(0x0501) - client futures
xx xx
word
TLV.Length
....
....
Unknown data (depends on client)
0101
word
TLV.Type(0x0101) - message text
xx xx
word
TLV.Length
00 00
word
Message charset number
ff ff
word
Message charset subset
xx ..
string (ascii)
Message text string
00 03
word
TLV.Type(0x03) - request an ack from server
00 00
word
TLV.Length
empty
00 06
word
TLV.Type(0x06) - store message if recipient offline