Protocols/OSCAR/SNAC/ICBM MISSED CALLS: Difference between revisions
Jump to navigation
Jump to search
No edit summary |
No edit summary |
||
Line 20: | Line 20: | ||
== SNAC Data == | == SNAC Data == | ||
{| class="wikitable" | |||
! Name | |||
! Type | |||
! Notes | |||
|- | |||
| missedCallArray | |||
| Rest of SNAC array of [[Protocols/OSCAR/SNAC/ICBM_MISSED_CALLS#Datatype:_ICBM_Missed_Call|ICBM Missed Call]] | |||
| Information about the messages that were missed | |||
|} | |||
=== Datatype: ICBM Missed Call === | === Datatype: ICBM Missed Call === | ||
This represents a single missed IM from a sender, sent to the potential receiver. | |||
{| class="wikitable" | |||
! Name | |||
! Type | |||
! Notes | |||
|- | |||
| channel | |||
| uint16 (word) | |||
| Channel on which the missed message was | |||
|- | |||
| senderInfo | |||
| [[Protocols/OSCAR/Foodgroups/OSERVICE/Datatypes/USERINFO#Datatype:_OSERVICE_USERINFO|OSERVICE__USERINFO]] | |||
| Information about the sender | |||
|- | |||
| numMissed | |||
| uint16 (word) | |||
| How many messages were dropped | |||
|- | |||
| reason | |||
| uint16 (word) | |||
| ''[Class: [[Protocols/OSCAR/SNAC/ICBM_MISSED_CALLS#Class:_ICBM_MISSED_CALL_REASONS|ICBM__MISSED_CALL_REASONS]]]'' Why the IM failed | |||
|} | |||
=== Class: ICBM__MISSED_CALL_REASONS === | === Class: ICBM__MISSED_CALL_REASONS === | ||
These are the reasons sent to a receiver why they could not receive an IM from a sender. | |||
{| class="wikitable" | |||
! Name | |||
! Value | |||
! Notes | |||
|- | |||
| ICBM__MCR_TOO_LARGE | |||
| 0x0001 | |||
| Sender's message was too large | |||
|- | |||
| ICBM__MCR_RATE_EXCEEDED | |||
| 0x0002 | |||
| Sender exceeded the receiver's rate limit | |||
|- | |||
| ICBM__MCR_EVIL_SENDER | |||
| 0x0004 | |||
| Message rejected because sender is EVIL | |||
|- | |||
| ICBM__MCR_EVIL_RECEIVER | |||
| 0x0008 | |||
| Message rejected because receiver is EVIL | |||
|} | |||
== ICBM SNACs == | == ICBM SNACs == |
Revision as of 02:41, 23 March 2020
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, 0x000A | Host | ICBM__MISSED_CALLS | Unspecified | BOS | Active | 1.25 |
When the host is unable to send one or more messages to the client, the host sends this SNAC to the client to let it know that it missed some messages ("calls").
It does this at the earliest possible time (e.g., at the first available time slot allowed by minInterICBMInterval). So if user A sends a message to user B, and the server denies sending to user B because of size, user A gets an error and user B gets a missed call.
SNAC Header
Foodgroup | uint16 (word) | 00 04 |
Subgroup | uint16 (word) | 00 0A |
Flags | uint16 (word) | 00 00 |
Request ID | uint32 (dword) | 00 00 00 00 |
SNAC Data
Name | Type | Notes |
---|---|---|
missedCallArray | Rest of SNAC array of ICBM Missed Call | Information about the messages that were missed |
Datatype: ICBM Missed Call
This represents a single missed IM from a sender, sent to the potential receiver.
Name | Type | Notes |
---|---|---|
channel | uint16 (word) | Channel on which the missed message was |
senderInfo | OSERVICE__USERINFO | Information about the sender |
numMissed | uint16 (word) | How many messages were dropped |
reason | uint16 (word) | [Class: ICBM__MISSED_CALL_REASONS] Why the IM failed |
Class: ICBM__MISSED_CALL_REASONS
These are the reasons sent to a receiver why they could not receive an IM from a sender.
Name | Value | Notes |
---|---|---|
ICBM__MCR_TOO_LARGE | 0x0001 | Sender's message was too large |
ICBM__MCR_RATE_EXCEEDED | 0x0002 | Sender exceeded the receiver's rate limit |
ICBM__MCR_EVIL_SENDER | 0x0004 | Message rejected because sender is EVIL |
ICBM__MCR_EVIL_RECEIVER | 0x0008 | Message rejected because receiver is EVIL |
ICBM SNACs
|