send_packet
- action:
send_packet
此接口在已认证的服务连接中调用,账号须属于当前框架且处于在线状态。self_id 与 protocol_id 共同选择账号。
发送当前在线账号的原始 SSO 请求。cmd 和 data 均必填;cmd 为命令,data 为十六进制载荷,rsp 默认为 true。传输头、账号凭据与签名仍由框架生成,不能覆盖 reserve 等安全上下文。请求不接受未声明字段。
适用协议
Android / Linux QQ;原始包内容必须符合所选协议。
调用方式
向已认证的 WebSocket 连接发送:
json
{
"type": "action",
"id": "example-1",
"action": "send_packet",
"params": {
"self_id": 123456789,
"protocol_id": 0,
"cmd": "Example.Service.Command",
"data": "0801",
"rsp": true
}
}响应通过相同 id 对应请求。连接、HTTP 调用与错误处理见通信协议。
参数
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
self_id | integer | 是 | 当前框架内的账号 QQ 号 |
protocol_id | integer | 是 | 账号协议配置 ID;从 get_protocol_list 获取,必须显式传入,0 也是有效 ID |
cmd | string | 是 | SSO 命令名称;去除首尾空白后须非空,长度不超过 256 字节,不含换行、回车或 NUL |
data | string | 是 | 非空、偶数长度的十六进制载荷;可包含空格、制表符、回车和换行,解码后最大 4 MiB |
rsp | boolean | 否 | 是否等待上游响应,默认 true |
返回值
以下为成功响应的 data,错误通过 ok: false 与 error 返回。
| rsp | data 类型 | 说明 |
|---|---|---|
true 或省略 | string | 等待上游响应,返回响应体的十六进制字符串,例如 "0801" |
false | object | 返回 { "submitted": true },只表示已提交,不代表上游处理成功 |
示例中的命令仅演示参数格式,不是可直接执行的真实业务命令。发送内容须符合所选协议;上游 SSO 错误会作为调用失败返回。
调用条件
Free 不可调用。Plus 每次调用核对当前 QQ 最新等级,至少需要 32 级;Pro 不设这项 QQ 等级门槛。仍需满足账号在线、当前授权及接口本身的业务条件,获取最新等级失败时不继续操作。协议签名命令白名单不等于自定义发包权限。
