ID
|
Origin
|
Name
|
Foodgroup
|
Service
|
Status
|
Version
|
0x0004, 0x0008
|
Client
|
ICBM__EVIL_REQUEST
|
Unspecified
|
BOS
|
Active
|
1.25
|
This requests that the specified user is sent an EVIL notification.
Foodgroup
|
uint16 (word)
|
00 04
|
Subgroup
|
uint16 (word)
|
00 08
|
Flags
|
uint16 (word)
|
00 00
|
Request ID
|
uint32 (dword)
|
00 00 00 00
|
SNAC Data
If the request is marked as anonymous, less EVILing may be done. The result of the evil request is returned in an EVIL_REPLY (or an error). One may only EVIL another user if that user has "recently" sent the EVILing user a CHANNEL_MSG and the other user started the conversation. To implement this rule, the server keeps a short list of users who have recently sent messages to a given user. If the user to be EVILed has rolled off this list, or was never on it, the EVIL request is denied via ERROR__CODE_REQUEST_DENIED.
Name
|
Type
|
Notes
|
evilFlags
|
uint16 (word)
|
[Class: ICBM__EVIL_REQUEST_FLAGS] What kind of EVIL to perform
|
evil username
|
string08
|
Who to try to EVIL
|
Class: ICBM__EVIL_REQUEST_FLAGS
These are the flags that control how EVIL should work.
Name
|
Value
|
Notes
|
ICBM__EVIL_REQUEST_FLAG_ANONYMOUS
|
0x0001
|
Do not reveal my username to the evilee.
|
From Aleksandr Shutko: SNAC(04,08) client send warning command SNAC(04,08) ICBM__EVIL_REQUEST
Use this to send warning to client that bother you. Currently this works only
for AIM. You can send warning as anonymous or as yourself. Server should ack
this command via SNAC(04,09). See also
SNAC(04,01) and
SNAC(04,05) for more information.
00 04 |
|
word |
|
SNAC family |
00 08 |
|
word |
|
SNAC subtype |
00 00 |
|
word |
|
SNAC flags |
xx xx xx xx |
|
dword |
|
SNAC request-id |
|
xx xx |
|
word |
|
"send as" flag: 1-anonymous, 0-non-anonymous |
xx |
|
byte |
|
screenname string length |
xx .. |
|
string |
|
screenname string |
|
|
|
Example SNAC dump with flap header:
2A 02 7D 6E 00 1B 00 04 00 08 00 00 00 1B 00 08 *.}n............
00 00 0E 73 77 65 65 74 67 69 72 6C 33 38 34 36 ...sweetgirl3846
32 2
|
|
From Aleksandr Shutko: Send user warning sequence
<a name="evil_request"></a> Send user warning sequence |
|
|
|
This sequence used to send warning to AIM user that bother you. User that have
too high warning level disconnects from server and can't connect for some time.
You can send normal and anonymous warning. Normal warning increase user warning
level by 15%, anonymous warning increase warn level by 3%.
|
|
|
|
ICBM SNACs
SNAC List
Subgroup
|
Origin
|
Name
|
0x0001
|
Any
|
ICBM__ERR
|
This is the error SNAC for the ICBM foodgroup.
|
0x0002
|
Client
|
ICBM__ADD_PARAMETERS
|
This SNAC is typically sent prior to sending the OSERVICE__CLIENT_ONLINE so that the host is properly initialized with the clients' preferences.
|
0x0003
|
Client
|
ICBM__DEL_PARAMETERS
|
These are the delete all parameters for a given channel.
|
0x0004
|
Client
|
ICBM__PARAMETER_QUERY
|
This SNAC requests ICBM parameters from the host.
|
0x0005
|
Host
|
ICBM__PARAMETER_REPLY
|
This SNAC is sent by the host in response to a ICBM__PARAMETER_QUERY.
|
0x0006
|
Client
|
ICBM__CHANNEL_MSG_TOHOST
|
This is the basic inter-client message after which the group was named (Inter-Client Basic Messages).
|
0x0007
|
Host
|
ICBM__CHANNEL_MSG_TOCLIENT
|
This is the ICBM__CHANNEL_MSG_TOHOST after it has been reformatted by the host and sent to the destination client.
|
0x0008
|
Client
|
ICBM__EVIL_REQUEST
|
This requests that the specified user is sent an EVIL notification.
|
0x0009
|
Host
|
ICBM__EVIL_REPLY
|
The reply tells the requester, the sender of an ICBM__EVIL_REQUEST SNAC, how much EVIL, if any, was applied to the recipient.
|
0x000A
|
Host
|
ICBM__MISSED_CALLS
|
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").
|
0x000B
|
Any
|
ICBM__CLIENT_ERR
|
This error notice is one of the few SNACs that can be sent to the host and received by a client.
|
0x000C
|
Host
|
ICBM__HOST_ACK
|
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.
|
0x000D
|
NCD
|
ICBM__SIN_STORED
|
This is not currently documented. Want to contribute?
|
0x000E
|
NCD
|
ICBM__SIN_LIST_QUERY
|
This is not currently documented. Want to contribute?
|
0x000F
|
NCD
|
ICBM__SIN_LIST_REPLY
|
This is not currently documented. Want to contribute?
|
0x0010
|
Client
|
ICBM__SIN_RETRIEVE
|
This requests ICBM__CHANNEL_MSG_TOCLIENT messages be generated for each of the stored ICBMs. Any message retrieved is deleted.
|
0x0011
|
NCD
|
ICBM__SIN_DELETE
|
This is not currently documented. Want to contribute?
|
0x0012
|
NCD
|
ICBM__NOTIFY_REQUEST
|
This is not currently documented. Want to contribute?
|
0x0013
|
NCD
|
ICBM__NOTIFY_REPLY
|
This is not currently documented. Want to contribute?
|
0x0014
|
Any
|
ICBM__CLIENT_EVENT
|
This SNAC is sent as a control message, sent by a client to inform the recipient of an event, or by the host informing of an event.
|
0x0017
|
Host
|
ICBM__SIN_REPLY
|
The host successfully processed the request to retrieve all the offline messages.
|
|