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 channel 2 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
byte
fragment identifier (array of required capabilities)
01
byte
fragment version
xx xx
word
Length of rest data
xx ...
array
byte array of required capabilities (1 - text)
01
byte
fragment identifier (text message)
01
byte
fragment version
xx xx
word
Length of rest data
00 00
word
Message charset number
ff ff
word
Message language number
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