快速开始
注册及关注微信服务号
首先,你需要注册一个账号,从而获取 secretkey
。这是调用信达API的鉴权方式。
关注公众号并取得Secretkey。
接收通知
调用下面的接口即可通过公众号发送消息。接口参数和Server酱一样。
https://sender.xzhsh.ch/api/v1/notification?secretkey=<your_sk>&title=<title>&desc=<desc>
desc
参数表示正文。支持使用markdown语法。在公众号消息卡片点击,能跳转到完整的消息内容页面。
截止到目前,这是一个和Server酱一样的消息推送服务。
发送「信令」
在公众号消息框发送的消息(信令)会被信达服务器加入一个队列。等待Agent(接收消息的一侧)拉取。
除了使用公众号发送信令,也可以使用API。
[POST]https://sender.xzhsh.ch/api/v1/signaling?secretkey=<your_sk>&signaling=<signaling>
API与公众号发送的效果相同。
在Agent一侧调用这个API可以获取现有的信令。每隔一分钟轮询这个接口可以实时接收信令。
[GET]https://sender.xzhsh.ch/api/v1/signaling?secretkey=<your_sk>
{"code": 0,"msg": "ok","res": [{"id": 4,"agent": "","signaling": "hello","status": "new","created_at": 1620557824},{"id": 5,"agent": "","signaling": "hi","status": "new","created_at": 1620560592}]
}
Webhook
除了使用API轮询信令,还可以设置一个Webhook主动接收信令。
发送信令后webhook会收到这样的一个POST请求。
{"id": 5,"agent": "","signaling": "hi","status": "new","created_at": 1620560592
}
接收结果
信令通常代表的是需要执行的任务。
使用结果提交API向信达报告任务执行的结果,同时公众号也会推送结果通知。
[POST]https://sender.xzhsh.ch/api/v1/result?secretkey=<your_sk>&signaling=<signaling_id>
MultipartForm POST Body: result=<result>
TODO
计划开发一个cli工具,用于向公众号推送通知,以及将信令拉取转换为Shell。