指令机器人开发手册
01. DeBox 指令机器人能做什么?
指令机器人是一个DeBox用户,他和普通用户一样,可以修改昵称、头像、发布动态、建群、加入别的群等,拥有DeBox用户所有能力。此外,他还具备如下特异功能:
1、带Bot标记,标识自己的机器人身份;
2、具备二次开发能力,可以基于该身份,发送机器人消息、作为积分支付的交易对手方;
3、配置指令,通过指令和用户互动;
4、可以给粉丝推送消息;
5、可以往所在群推送消息;
6、代表品牌方提供服务。
02. 如何成为机器人?
注册成为开发者
打开https://developer.debox.pro ,通过Metamask注册登录、也可以通过邮箱注册登录。
绑定DeBox用户
一旦完成和DeBox用户的绑定,开发者便可基于该DeBox用户进行开发;
比如以该DeBox用户的名义,发送消息;
通过支付API,作为积分支付的接收方或者发送方;
作为品牌方的代表,以指令的形式服务粉丝;
因该DeBox账户会直接呈现给用户,所以请认真配置该账户的昵称和头像,比如用开发者的品牌名做昵称,用品牌LOGO做头像。
申请成为机器人
1、正确配置回调地址Url,回调Key,点击submit即可完成机器人申请。
2、配置Robot CallbackUrl:该地址是指令机器人指令回调地址,当DeBox用户访问Robot指令时,DeBox系统将回调该Url,
并将指令、用户、群等参数带回。参数为json格式,字段如下:
header中参数
X-API-KEY:是第3项的Robot CallbackKey,由开发者配置,开发者可据此校验请求合法性。
body中参数,json格式
from_user_id:发送者,DeBox用户ID;
to_user_id: 指令接受者ID,即机器人的用户ID;
language:语言类型,值为en代表用户是英文环境,值为zh代表用户是中文环境;
message: 指令消息。开发者根据此消息,进行相应回复;
group_id: 群ID;
用户通过群聊访问的指令,则该参数为该群的ID;
用户通过私聊访问的指令,则该参数为"" ;
开发者可以根据group_id参数,判断消息来源,并决定响应方式,比如发一条群消息,或者发一条私聊消息。
3、配置Robot CallbackKey:系 CallbackUrl 的X-API-KEY,DeBox系统回调CallbackUrl时,会在header中加入该参数,
开发者需要在CallbackUrl的路由处理函数中校验该X-API-KEY,以验证访问权限。
CallbackUrl回调路由函数示例(go语言):
03. 配置指令,通过指令和用户互动
指令机器人可以通过指令来服务用户。根据机器人的功能定位,为其配置简单、易于理解的指令;
比如为行情播报机器人配置指令 /BTC、 /HOT ,为新闻机器人配置 /News 、 /HOT News 等;
开发者可以通过【Robot】 【Command List】来添加、删除、编辑指令;
在客户端,进入和机器人的私聊界面,通过"/"可唤起指令,在私聊界面直接给机器人发的消息,也会作为指令回调Robot CallbackUrl ;
开发中的机器人指令,无法通过群/唤起。开发、测试完成后,开发者申请发布到市场,审核人员功能审核完成后,方可在群中使用。
04. 指令响应
开发者在上文Robot CallbackUrl的路由函数里,进行指令消息处理,根据不同指令,进行数据查询等业务处理,
并将处理结果,通过消息的形式通知DeBox用户。
群聊、私聊发消息API,参见文档 https://docs.debox.pro/zh/APIs/Sending%20Messages
05. 发布机器人
经过上文配置和开发后,开发者已经拥有了能处理指令的机器人,
开发者自测通过后,便可提交机器人市场审核,
管理员会进一步对机器人指令进行测试, 如果符合机器人品质管理规范,便可进入机器人市场,
也可能被审核人员驳回,开发者修改后可重新提交审核。