Difference between revisions of "Protocols/OSCAR/SNAC/ICQ DB QUERY"

From NINA Wiki
Jump to navigation Jump to search
 
Line 20: Line 20:
 
=== SNAC Data ===
 
=== SNAC Data ===
 
Unconfirmed: This SNAC contains no data
 
Unconfirmed: This SNAC contains no data
 +
 +
=== From Aleksandr Shutko: SNAC(15,02) Meta information request SNAC(15,02) ICQ__DB_QUERY ===
 +
 +
<table width=640 cellSpacing=0 cellPadding=0 border=0>
 +
<tr>
 +
<td>
 +
<br>
 +
This snac used by client to request/update various information (request user info,
 +
update user info, people search, send sms, request parameters, request
 +
offline messages, unregistration). ICQ server should reply using
 +
[[Protocols/OSCAR/SNAC_15_03|SNAC(15,03)]].
 +
 +
<br><br>
 +
 +
<table width=640 bgcolor=darkblue cellSpacing=0 cellPadding=0 border=0><tr><td>
 +
<table width=100% cellSpacing=2 cellPadding=0 border=0><tr><td  bgcolor=#E9E9E9 >
 +
 +
<table width=640 cellSpacing=0 cellPadding=0 align=center border=0>
 +
<tr>
 +
<td width=26%>&nbsp;00 15</td>
 +
<td width=5>&nbsp;</td>
 +
<td>word</td>
 +
<td width=5>&nbsp;</td>
 +
<td width=52%>SNAC family</td>
 +
</tr>
 +
<tr>
 +
<td>&nbsp;00 02</td>
 +
<td>&nbsp;</td>
 +
<td>word</td>
 +
<td>&nbsp;</td>
 +
<td>SNAC subtype</td>
 +
</tr>
 +
<tr>
 +
<td>&nbsp;00 00</td>
 +
<td>&nbsp;</td>
 +
<td>word</td>
 +
<td>&nbsp;</td>
 +
<td>SNAC flags</td>
 +
</tr>
 +
<tr>
 +
<td>&nbsp;xx xx xx xx</td>
 +
<td>&nbsp;</td>
 +
<td>dword</td>
 +
<td>&nbsp;</td>
 +
<td>SNAC request-id</td>
 +
</tr>
 +
</table>
 +
 +
</td></tr>
 +
<tr><td bgcolor=#E9E9E9>
 +
 +
<table width=640 cellSpacing=0 cellPadding=0 align=center border=0>
 +
<tr><td height=8 colspan=3></td></tr>
 +
<tr><td width=20> </td>
 +
<td>
 +
 +
<table width=610 bgcolor=darkgreen cellSpacing=0 cellPadding=0 border=0><tr><td>
 +
<table width=100% cellSpacing=2 cellPadding=0 align=center border=0>  <tr><td  bgcolor=#E9E9E9 >
 +
 +
  <table width=610 cellSpacing=0 cellPadding=0 align=center border=0>
 +
  <tr>
 +
  <td>&nbsp;00 01</td>
 +
  <td width=5>&nbsp;</td>
 +
  <td>word</td>
 +
  <td width=5>&nbsp;</td>
 +
  <td width=55%>TLV.Type(1) - encapsulated META_DATA</td>
 +
  </tr>
 +
  <tr>
 +
  <td>&nbsp;xx xx</td>
 +
  <td width=5>&nbsp;</td>
 +
  <td>word</td>
 +
  <td width=5>&nbsp;</td>
 +
  <td width=55%>TLV.Length</td>
 +
  </tr>
 +
  </table>
 +
 +
  </td></tr>
 +
  <tr><td bgcolor=#E9E9E9>
 +
 +
  <table width=610 cellSpacing=0 cellPadding=0 align=center border=0>
 +
  <tr><td height=8 colspan=3></td></tr>
 +
  <tr><td width=20> </td>
 +
  <td>
 +
 +
<table width=580 bgcolor=darkred cellSpacing=0 cellPadding=0 border=0><tr><td>
 +
<table width=100% cellSpacing=2 cellPadding=0 align=center border=0>    <tr><td  bgcolor=#E9E9E9 >
 +
 +
    <table width=580 cellSpacing=0 cellPadding=0 align=center border=0>
 +
    <tr>
 +
    <td>&nbsp;xx xx</td>
 +
    <td width=5>&nbsp;</td>
 +
    <td>word (LE)</td>
 +
    <td width=5>&nbsp;</td>
 +
    <td width=55%>data chunk size (TLV.Length-2)</td>
 +
    </tr>
 +
    <tr>
 +
    <td>&nbsp;xx xx xx xx</td>
 +
    <td width=5>&nbsp;</td>
 +
    <td>dword (LE)</td>
 +
    <td width=5>&nbsp;</td>
 +
    <td width=55%>request owner uin</td>
 +
    </tr>
 +
    <tr>
 +
    <td>&nbsp;xx xx</td>
 +
    <td width=5>&nbsp;</td>
 +
    <td>word (LE)</td>
 +
    <td width=5>&nbsp;</td>
 +
    <td width=55%>request type (see table below)</td>
 +
    </tr>
 +
    <tr>
 +
    <td>&nbsp;xx xx</td>
 +
    <td width=5>&nbsp;</td>
 +
    <td>word (LE)</td>
 +
    <td width=5>&nbsp;</td>
 +
    <td width=55%>request sequence number</td>
 +
    </tr>
 +
<tr>
 +
    <td colspan=5>&nbsp;</td>
 +
    </tr>
 +
    <tr>
 +
    <td>&nbsp;......</td>
 +
    <td width=5>&nbsp;</td>
 +
    <td>......</td>
 +
    <td width=5>&nbsp;</td>
 +
    <td width=55%>data (depending on request type)</td>
 +
    </tr>
 +
</table>
 +
 +
</td></tr></table>
 +
</td></tr></table>
 +
 +
  </td><td width=5> </td>
 +
  </tr><tr><td height=5 colspan=3> </td></tr>
 +
  </table>
 +
 +
</td></tr></table>
 +
</td></tr></table>
 +
 +
</td><td width=5> </td>
 +
</tr><tr><td height=5 colspan=3> </td></tr>
 +
</table>
 +
 +
</td></tr></table>
 +
</td></tr></table>
 +
</td></tr></table>
 +
 +
<br>
 +
 +
Request types list:
 +
<table width=640 bgcolor=darkblue cellSpacing=0 cellPadding=0 border=0><tr><td>
 +
<table width=100% cellSpacing=2 cellPadding=0 border=0><tr><td bgcolor=white>
 +
 +
<table width=100% cellSpacing=1 cellPadding=1 align=center border=0>
 +
<tr>
 +
<td bgcolor=#f0f0f0 valign=top width=25%><b>&nbsp;<font size=2>[[Protocols/OSCAR/SNAC/ICQ_DB_QUERY/REQ_OFFLINE_MSG|SNAC(15,02)/003C]]&nbsp;&nbsp;</b></font></td>
 +
<td bgcolor=#f0f0f0 valign=top colspan=3>&nbsp;Offline messages request</td>
 +
</tr>
 +
<tr>
 +
<td bgcolor=#f0f0f0 valign=top><b>&nbsp;<font size=2>[[Protocols/OSCAR/SNAC/ICQ_DB_QUERY/ACK_OFFLINE_MSG|SNAC(15,02)/003E]]&nbsp;&nbsp;</b></font></td>
 +
<td bgcolor=#f0f0f0 valign=top colspan=3>&nbsp;Delete offline messages request</td>
 +
</tr>
 +
<tr>
 +
<td bgcolor=#f0f0f0 valign=top><b>&nbsp;<font size=2>[[Protocols/OSCAR/SNAC/ICQ_DB_QUERY/REQ_INFORMATION|SNAC(15,02)/07D0]]&nbsp;&nbsp;</b></font></td>
 +
<td bgcolor=#f0f0f0 valign=top colspan=3>&nbsp;Meta information request</td>
 +
</tr>
 +
</table>
 +
 +
</td></tr></table>
 +
</td></tr></table>
 +
 +
<br>Example SNAC dump with flap header:
 +
<table width=640 bgcolor=darkblue cellSpacing=0 cellPadding=0 border=0><tr><td>
 +
<table width=100% cellSpacing=2 cellPadding=0 border=0><tr>
 +
<td bgcolor=#E9E9E9>
 +
<font size=3><pre style="font-size: 13px">
 +
 +
  2A 02 79 75 00 1E 00 15  00 02 00 00 00 07 00 02 *.yu............
 +
  00 01 00 10 0E 00 8F E4  5E 00 D0 07 08 00 2E 04 ........^.......
 +
  06 00 31 32 33 34 35 00                          ..12345.
 +
 +
</pre></font>
 +
</td></tr></table>
 +
</td></tr></table>
 +
 +
 +
 +
[[Category:With_Contrib]]
 +
  
 
=== ICQ SNACs ===
 
=== ICQ SNACs ===

Latest revision as of 06:10, 14 February 2021

OSCAR Protocol
IntroductionTermsClients
Basic
DatatypesFLAPSNACTLV
UUIDsErrorsTool IDs
Host Interaction
Rate LimitsMigrationMessages
Other Services
ADMINADVERTALERT
BARTBOSBUCPCHAT
CHAT_NAV
Tutorials
Sign OnBARTRendezvous
ICBMLocateBuddies
Foodgroups
OSERVICE (0x0001)
LOCATE (0x0002)
BUDDY (0x0003)
ICBM (0x0004)
ADVERT (0x0005)
INVITE (0x0006)
ADMIN (0x0007)
POPUP (0x0008)
PD (0x0009)
USER_LOOKUP (0x000A)
STATS (0x000B)
TRANSLATE (0x000C)
CHAT_NAV (0x000D)
CHAT (0x000E)
ODIR (0x000F)
BART (0x0010)
FEEDBAG (0x0013)
ICQ (0x0015)
BUCP (0x0017)
ALERT (0x0018)
PLUGIN (0x0022)
UNNAMED_FG_24 (0x0024)
MDIR (0x0025)
ARS (0x044A)
ID Origin Name Foodgroup Service Status Version
0x0015, 0x0002 Client ICQ__DB_QUERY ICQ BOS Active 1.2

Information request used by legacy ICQ clients.

SNAC Header

Foodgroup uint16 (word) 00 15
Subgroup uint16 (word) 00 02
Flags uint16 (word) 00 00
Request ID uint32 (dword) 00 00 00 00

SNAC Data

Unconfirmed: This SNAC contains no data

From Aleksandr Shutko: SNAC(15,02) Meta information request SNAC(15,02) ICQ__DB_QUERY


This snac used by client to request/update various information (request user info, update user info, people search, send sms, request parameters, request offline messages, unregistration). ICQ server should reply using SNAC(15,03).



 00 15   word   SNAC family
 00 02   word   SNAC subtype
 00 00   word   SNAC flags
 xx xx xx xx   dword   SNAC request-id
 00 01   word   TLV.Type(1) - encapsulated META_DATA
 xx xx   word   TLV.Length
 xx xx   word (LE)   data chunk size (TLV.Length-2)
 xx xx xx xx   dword (LE)   request owner uin
 xx xx   word (LE)   request type (see table below)
 xx xx   word (LE)   request sequence number
 
 ......   ......   data (depending on request type)


Request types list:

 SNAC(15,02)/003C    Offline messages request
 SNAC(15,02)/003E    Delete offline messages request
 SNAC(15,02)/07D0    Meta information request


Example SNAC dump with flap header:


  2A 02 79 75 00 1E 00 15  00 02 00 00 00 07 00 02 *.yu............
  00 01 00 10 0E 00 8F E4  5E 00 D0 07 08 00 2E 04 ........^.......
  06 00 31 32 33 34 35 00                          ..12345.


ICQ SNACs

SNAC List
Subgroup Origin Name
0x0001 Any ICQ__ERR
This is the error SNAC for the ICQ foodgroup.
0x0002 Client ICQ__DB_QUERY
Information request used by legacy ICQ clients.
0x0003 Host ICQ__DB_REPLY
Host information response to ICQ__DB_QUERY.