SNAC(04,06)/CH1  CLI_SEND_ICBM_CH1 

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
 00 00   word   TLV.Length
 empty

Example SNAC dumps with flap header:

  2a 02 23 6c 00 47 00 04  00 06 00 00 00 01 00 06  *.#l.G..........
  67 c3 15 01 3d 3a 00 00  00 01 07 31 30 30 30 30  g...=:.....10000
  30 30 00 02 00 23 05 01  00 01 01 01 01 00 1a 00  00...#..........
  00 ff ff 74 65 73 74 20  63 68 61 6e 6e 65 6c 20  ...test channel 
  31 20 6d 65 73 73 61 67  65 00 06 00 00           1 message....


  Main | Basic | Login | Snaclist | Sequences | Misc | Changes | Credits | Terms