Protocols/OSCAR/Services/CHAT

From NINA Wiki
Revision as of 02:06, 14 February 2021 by AD (talk | contribs) (Created page with " == TLVs == === From Aleksandr Shutko: Common tlv set for exchange and room description. === <table width=645 bgcolor=darkblue cellSpacing=0 cellPadding=0 border=0><tr><td> <...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

TLVs

From Aleksandr Shutko: Common tlv set for exchange and room description.

Common chat description tlv set.


 


Here is a common tlv set for exchange and room description:

 00 01   word   TLV.Type(0x01) - browsable tree
 xx xx   word   TLV.Length
        empty?
 00 02   word   TLV.Type(0x02) - exclusively for class
 xx xx   word   TLV.Length
 xx xx   word   User class
 00 03   word   TLV.Type(0x03) - max concurrent rooms
 xx xx   word   TLV.Length
 xx   byte   max concurrent rooms
 00 04   word   TLV.Type(0x04) - max room name length
 xx xx   word   TLV.Length
 xx   byte   max room name length
 00 05   word   TLV.Type(0x05) - root rooms
 xx xx   word   TLV.Length
 

Following chat room identification info may be repeated more then once

 xx xx   word   exchange
 xx   byte   cookie length
 xx ..   array   cookie
 xx xx   word   instance number
 00 06   word   TLV.Type(0x06) - search tags
 xx xx   word   TLV.Length
 xx xx   word   search tag #1
 ...   ...   ...
 xx xx   word   search tag #n
 00 65   word   TLV.Type(0x65) - child rooms
 xx xx   word   TLV.Length
        ?
 00 66   word   TLV.Type(0x66) - contains user class
 xx xx   word   TLV.Length
        ?
 00 67   word   TLV.Type(0x67) - contains user array
 xx xx   word   TLV.Length
        ?
 00 68   word   TLV.Type(0x68) - evil generated
 xx xx   word   TLV.Length
        ?
 00 69   word   TLV.Type(0x69) - evil generated array
 xx xx   word   TLV.Length
        ?
 00 6A   word   TLV.Type(0x6A) - fully qualified name
 xx xx   word   TLV.Length
        ?
 00 6B   word   TLV.Type(0x6B) - moderator
 xx xx   word   TLV.Length
        ?
 00 6C   word   TLV.Type(0x6C) - more room info
 xx xx   word   TLV.Length
        ?
 00 6D   word   TLV.Type(0x6D) - num children
 xx xx   word   TLV.Length
        ?
 00 6E   word   TLV.Type(0x6E) - num instances
 xx xx   word   TLV.Length
        ?
 00 6F   word   TLV.Type(0x6F) - occupancy
 xx xx   word   TLV.Length
        ?
 00 70   word   TLV.Type(0x70) - occupancy array
 xx xx   word   TLV.Length
        ?
 00 71   word   TLV.Type(0x71) - occupant evil
 xx xx   word   TLV.Length
        ?
 00 72   word   TLV.Type(0x72) - occupant evil array
 xx xx   word   TLV.Length
        ?
 00 73   word   TLV.Type(0x73) - occupant list
 xx xx   word   TLV.Length
        ?
 00 74   word   TLV.Type(0x74) - parent room
 xx xx   word   TLV.Length
        ?
 00 75   word   TLV.Type(0x75) - room activity
 xx xx   word   TLV.Length
        ?
 00 76   word   TLV.Type(0x76) - room activity array
 xx xx   word   TLV.Length
        ?
 00 77   word   TLV.Type(0x77) - room gross evil
 xx xx   word   TLV.Length
        ?
 00 78   word   TLV.Type(0x78) - room net evil
 xx xx   word   TLV.Length
        ?
 00 79   word   TLV.Type(0x79) - speaker
 xx xx   word   TLV.Length
        ?
 00 C9   word   TLV.Type(0xC9) - chat flag
 xx xx   word   TLV.Length
        ?
 00 CA   word   TLV.Type(0xCA) - create time
 xx xx   word   TLV.Length
 xx xx xx xx   dword   creation time
 00 CB   word   TLV.Type(0xCB) - creator
 xx xx   word   TLV.Length
        ?
 00 CC   word   TLV.Type(0xCC) - description
 xx xx   word   TLV.Length
        ?
 00 CD   word   TLV.Type(0xCD) - description url
 xx xx   word   TLV.Length
        ?
 00 CE   word   TLV.Type(0xCE) - is closed
 xx xx   word   TLV.Length
        ?
 00 CF   word   TLV.Type(0xCF) - language
 xx xx   word   TLV.Length
        ?
 00 D0   word   TLV.Type(0xD0) - mandatory channels
 xx xx   word   TLV.Length
        ?
 00 D1   word   TLV.Type(0xD1) - max message length
 xx xx   word   TLV.Length
 xx xx   word   max message length
 00 D2   word   TLV.Type(0xD2) - max occupancy
 xx xx   word   TLV.Length
 xx xx   word   max occupancy
 00 D3   word   TLV.Type(0xD3) - name
 xx xx   word   TLV.Length
 xx ..   string   name
 00 D4   word   TLV.Type(0xD4) - optional channels
 xx xx   word   TLV.Length
        ?
 00 D5   word   TLV.Type(0xD5) - creation permission
 xx xx   word   TLV.Length
 xx   byte   creation permission (0 - not allowed, 1 - room creation, 2 - exchange creation)