网关平台5G消息HTTP接入接口规范,支持各运营商CSP业务
本接口支持HTTP/HTTPS请求方式,采用AES加密保障数据安全。
请求方法: POST
编码: UTF-8
Content-type: text/plain
请求头增加账户、时间戳、签名信息,防止数据被篡改。
| 参数名称 | 类型 | 必填 | 说明 |
|---|---|---|---|
| spId | string | 是 | 账户ID |
| timestamp | string | 是 | 当前时间戳,毫秒,格式:1722496932000 |
| signature | string | 是 | SHA-256(password+data+timestamp),data是加密后的数据 |
| 参数 | 值 |
|---|---|
| AES模式 | ECB |
| 填充 | PKCS7 |
| 数据块 | 256位 |
| 偏移量 | ECB模式不用填写 |
| 输出 | base64 |
| 编码 | UTF-8 |
实现采用5G Chatbot发送普通文本消息(支持群发)。
| 参数名称 | 类型 | 必填 | 说明 |
|---|---|---|---|
| mobile | string | 是 | 多个号码之间用半角逗号隔开,建议不超过1000个号码(注:相同号码去重) |
| content | string | 是 | 文本内容,必须带签名 |
| callData | string | 否 | 回传数据,若客户提交有带此参数,要求回执上行带上,将此参数返回 |
| 参数名称 | 类型 | 必填 | 说明 |
|---|---|---|---|
| status | int | 是 | 请求结果,等于0时代表提交成功 |
| message | string | 是 | 请求结果说明 |
| taskId | string | 否 | 返回请求的任务id,status=0时有效,必填。后续报告和上行通过taskId与号码定位具体哪一条数据 |
加密前数据:
响应数据:
实现采用5G Chatbot发送点对点普通文本消息(支持群发)。
| 参数名称 | 类型 | 必填 | 说明 |
|---|---|---|---|
| mobileContentKvp | json | 是 | 号码内容格式为:{"15100000000":"【测试】test1","15100000001":"【测试】test2"} (注:相同号码去重,以最后一条号码的内容为准)(内容必须带签名) |
| callData | string | 否 | 回传数据,若客户提交有带此参数,要求回执上行带上,将此参数返回 |
| 参数名称 | 类型 | 必填 | 说明 |
|---|---|---|---|
| status | int | 是 | 请求结果,等于0时代表提交成功 |
| message | string | 是 | 请求结果说明 |
| taskId | string | 否 | 返回请求的任务id,status=0时有效,必填。后续报告和上行通过taskId与号码定位具体哪一条数据 |
加密前数据:
响应数据:
通过此接口,创建5G消息模板,包括卡片、卡片按钮、悬浮按钮、回落短信、回落视信、回落阅信多种形式。
注:模板提交到网关平台后,都会经过管理端审核通过,分配chatbot后,才会提交到运营商进行审核。
| 参数名称 | 类型 | 必填 | 说明 |
|---|---|---|---|
| templateName | string | 是 | 模板名称 |
| sign | string | 是 | 消息签名,必须是账户支持发送的签名,用于管理平台审核时分配chatbot |
| callType | int | 是 | 模板回落类型,设置回落类型后,下面对应模板参数必须设置。 0:默认值,不回落 1:回落短信 2:回落视信 4:回落阅信 8:回落H5 示例:若回落短信+视信,填写3 |
| autoRenew | bool | 否 | 是否自动续期,默认false,不自动续期,默认7天内有效 |
| rcs | json | 是 | 卡片消息模板,具体数据格式参见下表 |
| toSms | string | 否 | 回落短信文本内容,注:移动的csp回落短信与阅信只能二选一 |
| toMms | json | 否 | 回落视信模板,具体数据格式参见下表 |
| toAim | string | 否 | 回落阅信内容,注:移动csp回落短信与阅信只能二选一 |
| 参数名称 | 类型 | 必填 | 说明 |
|---|---|---|---|
| parts | array | 是 | 对象组成的json数组,卡片消息模板,支持多个卡片及卡片按钮 |
| floatButtons | array | 否 | 对象组成的json数组,悬浮按钮,支持多个 |
| 参数名称 | 类型 | 必填 | 说明 |
|---|---|---|---|
| title | string | 是 | 卡片标题 |
| mediaType | string | 是 | 媒体文件类型: 图片:image/jpeg、image/gif、image/png、image/jpg 视频:video/mp4、video/flv 语音:audio/mp3、audio/aac |
| fileUrl | string | 是 | 媒体文件可访问的公网地址 |
| content | string | 是 | 卡片消息文本内容 |
| buttons | array | 否 | 卡片按钮,具体数据格式参见下表 |
| 参数名称 | 类型 | 必填 | 说明 |
|---|---|---|---|
| name | string | 是 | 按钮名称 |
| eventType | int | 是 | 按钮事件 1:回复消息 2:打开网址 3:拨打电话 |
| value | string | 是 | 按钮触发值 |
| 参数名称 | 类型 | 必填 | 说明 |
|---|---|---|---|
| title | string | 是 | 视信标题 |
| parts | array | 是 | 视信具体媒体文件与文本内容,包含多帧对象组成的json数组 |
| 参数名称 | 类型 | 必填 | 说明 |
|---|---|---|---|
| mediaType | string | 否 | 媒体文件类型,每帧必须包含一个文本或者媒体文件,若帧里面包含媒体文件,必须指定文件类型。 图片:image/jpeg、image/gif、image/png、image/jpg 视频:video/mp4、video/flv 语音:audio/mp3、audio/aac |
| fileUrl | string | 否 | 媒体文件可访问的公网地址,与content必须存在至少一个 |
| content | string | 否 | 文本内容,与fileUrl必须存在至少一个 |
| 参数名称 | 类型 | 必填 | 说明 |
|---|---|---|---|
| status | int | 是 | 请求结果,等于0时代表提交成功 |
| message | string | 是 | 请求结果说明 |
| templateId | int | 否 | 返回创建的模板Id,status=0时有效,必填 |
普通模板-5g卡片-带卡片按钮,悬浮按钮:
响应数据:
| 错误代码 | 具体含义 |
|---|---|
| 0 | 成功 |
| 2 | IP错误 |
| 3 | 账号校验失败 |
| 4 | 参数错误 |
| 5 | 模板状态不可用 |
| 6 | 无法找到路由(没有分配chatbot) |
| 7 | 账号状态错误 |
| 8 | 账号未授权rcs |
| 99 | 系统内部错误 |