动作请求
动作请求是应用端为了主动向 OneBot 实现请求服务而发送的数据。
格式
动作请求应表示为一个对象(object 类型),且必须具有下面这些字段:
| 字段名 | 数据类型 | 说明 | 
|---|---|---|
action | 
string | 动作名称,如 send_message | 
params | 
map[string]any | 动作参数 | 
提示
若一个数据中缺失上述任一字段或类型错误,则不应认为该数据是有效的动作请求。
除此之外,应用端可以附加以下字段:
| 字段名 | 数据类型 | 说明 | 
|---|---|---|
echo | 
string | 可以用于唯一标识一个动作请求 | 
当多个机器人账号共享一个 OneBot Connect 连接时,动作请求还应具有下面这些字段:
| 字段名 | 数据类型 | 说明 | 
|---|---|---|
self | 
self | 机器人自身标识 | 
若请求没有传入 self,则行为由 OneBot 实现确定,其可以返回响应码 10101 Who Am I;若请求传入的 self 所指定的机器人账号不存在,实现应返回 10102 Unknown Self。
例子
一个以 JSON 编码的动作请求例子如下:
{
    "action": "send_message",
    "params": {
        "detail_type": "private",
        "user_id": "123445667",
        "message": [
            {
                "type": "text",
                "data": {
                    "text": "嗨~"
                }
            }
        ]
    },
    "echo": "1234"
}