接口文档
状态上报 (POST /bot-post)

POST /bot-post

提交机台状态报告。需使用 HMAC-SHA256 身份验证。
数据直接入库,需保证严格校验,望理解

接口地址

POST https://maiapi.chongxi.us/bot-post

频率限制
接口受 WAF 保护。建议客户端在本地缓存数组,每 30 秒 发送一次。

身份验证

请求必须使用 HMAC-SHA256 进行签名。所有签名逻辑必须在客户端运行。

获取私钥: Client ID 由开发者自定义(任意英文字母 + 数字),随后发送邮件至 qwq@chongxi.us 以获取私钥。

签名算法:

1. timestamp    = 当前 Unix 毫秒时间戳 (string)
2. bodyHash     = SHA-256( JSON.stringify(requestBody) )
3. stringToSign = "POST:/bot-post:{clientId}:{timestamp}:{bodyHash}"
4. signature    = HMAC-SHA256( privateKey, stringToSign )

请求头:

Header
Content-Typeapplication/json
X-Client-ID开发者定义的 Client ID
X-Timestamp毫秒时间戳 (string)
X-SignatureHMAC-SHA256 十六进制摘要

请求体

上报对象组成的 JSON 数组:

[
  {
    "t": 101,
    "v": 1,
    "r": "BOT",
    "bot_display_name": "可选名称"
  }
]
字段类型必填说明
tint上报类型代码,见下表
vint数值 — 大多数类型为次数;WAIT_TIME 为秒数
rstring来源标识,如 "BOT"
bot_display_namestring在仪表盘显示的名称

在线测试

上报类型代码

t名称说明v 的含义
101ERR_NET_LOST机台断网次数
102ERR_LOGIN机台无法登录次数
103ERR_MAI_NET舞萌NET打不开次数
104ERR_QR无法获取二维码次数
105ERR_SCORE成绩上传失败次数
202ACC_BAN进小黑屋次数
300WAIT_TIME排队时长
501服务器恢复正常次数

响应状态

状态码说明
200上报已受理
401身份验证失败
429被 WAF 频率限制
5xx服务器错误

在bot插件的repo内有client.py提供算法示例参考