Protocols/OSCAR/SNAC/ICBM HOST ACK: Difference between revisions
Jump to navigation
Jump to search
(Created page with "{{Protocols/OSCAR}} {{Protocols/OSCAR/SNAC/Stats |origin={{Protocols/OSCAR/SNAC/ICBM__HOST_ACK/Origin}} |name=ICBM__HOST_ACK |id=0x0004, 0x000C |service={{Protocols/OSCAR/Food...") |
No edit summary |
||
(2 intermediate revisions by the same user not shown) | |||
Line 10: | Line 10: | ||
{{Protocols/OSCAR/SNAC/ICBM__HOST_ACK/Description}} | {{Protocols/OSCAR/SNAC/ICBM__HOST_ACK/Description}} | ||
== SNAC Header == | |||
{{Protocols/OSCAR/SNAC/Header | {{Protocols/OSCAR/SNAC/Header | ||
|foodgroup=00 04 | |foodgroup=00 04 | ||
Line 17: | Line 17: | ||
|reqid=00 00 00 00}} | |reqid=00 00 00 00}} | ||
== SNAC Data == | |||
=== ICBM SNACs | "Cookie", "channel", and "username" should be provided in the inter-client message being acknowledged. | ||
{| class="wikitable" | |||
! Name | |||
! Type | |||
! Notes | |||
|- | |||
| cookie | |||
| [[Protocols/OSCAR/Foodgroups/ICBM#Datatype:_Cookie|ICBM Cookie]] | |||
| Opaque data generated by conversation initiator and used to link up the conversation and errors | |||
|- | |||
| channel | |||
| uint16 (word) | |||
| ''[Class: [[Protocols/OSCAR/Foodgroups/ICBM#Class:_ICBM_CHANNELS|ICBM__CHANNELS]]]'' Channel the message is on | |||
|- | |||
| username | |||
| string08 | |||
| Destination username that should receive the message | |||
|- | |||
| ackTlvs | |||
| Rest of SNAC array of [[Protocols/OSCAR/TLV|TLV]] | |||
| ''[Class: [[Protocols/OSCAR/SNAC/ICBM_HOST_ACK#TLV_Class:_ICBM_ACK_TLV_TAGS|ICBM__ACK_TLV_TAGS]]]'' Extra TLVs in the response | |||
|} | |||
=== TLV Class: ICBM__ACK_TLV_TAGS === | |||
These are the TLV tags used in HOST_ACK SNACs. New tags may be defined for future use | |||
{| class="wikitable" | |||
! Name | |||
! Tag | |||
! Type | |||
! Notes | |||
|} | |||
=== From Aleksandr Shutko: SNAC(04,0C) server message ack SNAC(04,0C) ICBM__HOST_ACK === | |||
<table width=640 cellSpacing=0 cellPadding=0 border=0> | |||
<tr> | |||
<td> | |||
<br> | |||
<P>This is the server ack for client message sent via | |||
[[Protocols/OSCAR/SNAC_04_06|SNAC(04,06)]]. Server send it only if client | |||
requested it via empty TLV(3) in message snac. This ack mean that server | |||
accepted message for delivery.</P> | |||
<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=100% cellSpacing=0 cellPadding=0 align=center border=0> | |||
<tr> | |||
<td width=169> 00 04</td> | |||
<td width=5> </td> | |||
<td>word</td> | |||
<td width=5> </td> | |||
<td width=55%>SNAC family</td> | |||
</tr> | |||
<tr> | |||
<td> 00 0C</td> | |||
<td> </td> | |||
<td>word</td> | |||
<td> </td> | |||
<td>SNAC subtype</td> | |||
</tr> | |||
<tr> | |||
<td> 00 00</td> | |||
<td> </td> | |||
<td>word</td> | |||
<td> </td> | |||
<td>SNAC flags</td> | |||
</tr> | |||
<tr> | |||
<td> xx xx xx xx</td> | |||
<td> </td> | |||
<td>dword</td> | |||
<td> </td> | |||
<td>SNAC request-id</td> | |||
</tr> | |||
</table> | |||
</td></tr> | |||
<tr><td bgcolor=#E9E9E9> | |||
<table width=100% cellSpacing=0 cellPadding=0 align=center border=0> | |||
<tr> | |||
<td width=169> xx xx xx xx <br> | |||
xx xx xx xx</td> | |||
<td width=5> </td> | |||
<td valign=top>msgid</td> | |||
<td width=5> </td> | |||
<td width=55% valign=top>client message id cookie (8 bytes)</td> | |||
</tr> | |||
<tr> | |||
<td> 00 02</td> | |||
<td> </td> | |||
<td>word</td> | |||
<td> </td> | |||
<td>message channel</td> | |||
</tr> | |||
<tr> | |||
<td> xx</td> | |||
<td> </td> | |||
<td>char</td> | |||
<td> </td> | |||
<td>sender uin string len</td> | |||
</tr> | |||
<tr> | |||
<td> xx ..</td> | |||
<td> </td> | |||
<td>string</td> | |||
<td> </td> | |||
<td>sender uin string</td> | |||
</tr> | |||
</table> | |||
</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 39 37 00 1D 00 04 00 0C 00 00 00 0C 00 06 *.97............ | |||
AB A5 F5 29 29 1D 00 00 00 02 08 35 32 39 34 33 ...))......52943 | |||
31 32 37 127 | |||
</pre></font> | |||
</td></tr></table> | |||
</td></tr></table> | |||
== ICBM SNACs == | |||
{{Protocols/OSCAR/Foodgroups/ICBM/SNACs/Simple}} | {{Protocols/OSCAR/Foodgroups/ICBM/SNACs/Simple}} | ||
[[Category:With_Contrib]] | |||
[[Category:Stub]] | [[Category:Stub]] | ||
[[Category:AOL]] | [[Category:AOL]] |
Latest revision as of 04:39, 13 February 2021
OSCAR Protocol |
Introduction • Terms • Clients |
Basic |
Datatypes • FLAP • SNAC • TLV |
UUIDs • Errors • Tool IDs |
Host Interaction |
Rate Limits • Migration • Messages |
Other Services |
ADMIN • ADVERT • ALERT |
BART • BOS • BUCP • CHAT |
CHAT_NAV |
Tutorials |
Sign On • BART • Rendezvous |
ICBM • Locate • Buddies |
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 |
---|---|---|---|---|---|---|
0x0004, 0x000C | Host | ICBM__HOST_ACK | Unspecified | BOS | Active | 1.25 |
This SNAC is sent by the host upon receipt of any ICBM__CHANNEL_MSG_TOHOST which includes the optional ICBM__TLV_TAGS_REQUEST_HOST_ACK TLV.
SNAC Header
Foodgroup | uint16 (word) | 00 04 |
Subgroup | uint16 (word) | 00 0C |
Flags | uint16 (word) | 00 00 |
Request ID | uint32 (dword) | 00 00 00 00 |
SNAC Data
"Cookie", "channel", and "username" should be provided in the inter-client message being acknowledged.
Name | Type | Notes |
---|---|---|
cookie | ICBM Cookie | Opaque data generated by conversation initiator and used to link up the conversation and errors |
channel | uint16 (word) | [Class: ICBM__CHANNELS] Channel the message is on |
username | string08 | Destination username that should receive the message |
ackTlvs | Rest of SNAC array of TLV | [Class: ICBM__ACK_TLV_TAGS] Extra TLVs in the response |
TLV Class: ICBM__ACK_TLV_TAGS
These are the TLV tags used in HOST_ACK SNACs. New tags may be defined for future use
Name | Tag | Type | Notes |
---|
From Aleksandr Shutko: SNAC(04,0C) server message ack SNAC(04,0C) ICBM__HOST_ACK
This is the server ack for client message sent via SNAC(04,06). Server send it only if client requested it via empty TLV(3) in message snac. This ack mean that server accepted message for delivery.
|
Example SNAC dump with flap header:
|
ICBM SNACs
|