您可以在短信服务控制台的回执配置中设置回调 URL,接收短信服务异步返回的短信状态报告,以确认短信发送是否成功。
回调地址需要符合以下条件,才可以成功接收短信服务发送的短信状态报告。
使用 HTTP/HTTPS URL。
短信服务可以直接访问回调地址,即回调地址具备公网访问能力。
如果回调地址所在服务器设置了防火墙,请放行来自短信服务的请求。
在您接收短信服务的回调消息之前,需要登录短信服务控制台配置用于接收回调消息的 URL。
登录短信服务控制台。
在左侧导航栏,选择通用管理 > 回执配置。
在回执配置页面,编辑默认状态报告地址。
设置您用于接收回调消息的 URL。URL 格式为http(s)://<您的回调地址>
。
在短信服务控制台设置回调地址后,如果您调用 SendSms 接口发送短信,则短信服务会异步向回调地址返回短信状态报告。
当短信服务返回短信状态报告时,会向回调地址发送 POST 请求。本章节介绍请求 Header 和 Body 包含的参数说明。
参数 | 取值 | 描述 |
---|---|---|
Content-Type | application/json;charset=utf-8 | 定义网络文件的类型和网页的编码。 |
Accept-Encoding | gzip, deflate | 采用指定的压缩格式传输数据。 |
Accept | */* | 指定客户端希望接收的数据类型。 |
请求体整体是一个 JSON 数组。
参数 | 类型 | 描述 |
---|---|---|
account | string | 火山引擎账号 |
sub_account | string | 消息组ID |
status_code | string | 发送状态,"0"代表成功,其余表示失败 |
description | string | 状态描述 |
signature | string | 签名 |
template_id | string | 模板ID |
mobile | string | 手机号 |
channel_type | string | 短信类型,可能值:CN_OTP |
message_id | string | 发送时返回的message_id 字段 |
msg_count | int | 拆分条数 |
service_id | string | 服务参数,可用于定位问题,非必传 |
ext | string | 发送时传递的Tag 字段 |
send_time | int64 | 短信发送时间,milliseconds时间戳 |
recv_time | int64 | 短信接收时间,milliseconds时间戳 |
mccmnc | string | 移动网络提供者唯一代码 |
iso_code | string | ISO 3166-1 国家代码 |
[ { "account": "200****", "sub_account": "1504****", "signature": "短信服务", "mobile": "188******", "channel_type": "CN_OTP", "service_id": "106966940****", "send_time": 1669171012444, "template_id": "SPT_0fa7****", "ext": "123456", "message_id": "bde1b10d-19cf-460f-abcd-26231a82****", "recv_time": 1669171015941, "status_code": "0", "description": "发送成功", "msg_count": 1, "mccmnc": "46002", "iso_code": "CN" } ]
Code | 描述 | 处理建议 |
---|---|---|
NE:0100 | 非法手机号 | 建议更换手机号码后尝试重新下发 |
NE:0101 | 空号 | 请确认手机号码是否为正常可用 |
NE:0102 | 号码漫游、不在服务状态 | 建议用户开通漫游权限重新尝试 |
NE:0103 | 终端异常,如信号不稳定、手机对短信支持异常等 | 请检查手机当前接收状态是否正常,或重启手机刷新网络,尝试重新获取。 |
NE:0104 | 终端无短信服务 | 请确认手机号码是否为正常状态,是否开通短信功能。 |
NE:0105 | 关机、停机、号码暂停服务 | 请确认手机终端是否正常开机可用 |
NE:0106 | 携号转网问题 | 建议尝试重新发送,或联系火山引擎客服处理 |
CR:0200 | 内容拦截 | 内容中包含管控关键词,请对文案进行优化 |
CR:0201 | 黑名单拦截 | 用户已退订此签名或命中运营商平台黑名单规则,建议征求用户意见联系运营商平台解除黑名单 |
CR:0202 | 频次管控 | 请合理控制号码的下发频次 |
CR:0203 | 时间段管控 | 请错开管控时间段进行信息下发 |
CR:0205 | 审核拦截 | 内容不符合管控要求,请优化文案 |
CR:0206 | 超流速拦截 | 建议降低短信提交的QPS |
CR:0207 | 压测模式拦截 | 压测模式不实际下发,若需关闭压测模式,请联系火山引擎客服。 |
CR:0208 | 超流量拦截 | 超出流量管控限制 |
CR:0212 | 签名拦截 | 请更换签名下发或重新申请符合签名规范的签名 |
CR:0213 | 重复发送相同内容 | 短时间内,请不要对同一个手机号下发相同的内容 |
CR:0214 | 高风险手机号 | 流量高风险,可能正在被刷 |
CR:0215 | 签名报备问题(一码一签) | 请联系火山引擎客服完善一码一签报备 |
CR:0216 | 营销退订内容不符合规定 | 请确保文案结尾是“拒收请回复R" |
CE:0300 | 模板参数格式问题 | 请检查模板变量报文格式是否正确 |
CE:0301 | 内容过长或未填写 | 请对短信文案长度进行优化 |
CE:0302 | 长短信缺失 | 请检查长短信拆分和提交是否正确 |
CE:0305 | 不支持发送的运营商 | 请联系火山引擎客服确认 |
SY:0500 | 系统异常 | 若个别下发失败,建议尝试重新发送;若出现大量失败,请联系火山引擎客服进行确认 |
SY:0501 | 网关问题 | 若个别下发失败,建议尝试重新发送;若出现大量失败,请联系火山引擎客服进行确认 |
UN:0900 | 未知错误 | 若个别下发失败,建议尝试重新发送;若出现大量失败,请联系火山引擎客服进行确认 |
要求用户侧接收成功后,返回 httpStatus为200,否则火山侧会认为回执失败
答:10次,时间间隔:[0,5,10,30,120,300,1200,3600,21600,86400],单位秒。
答:http协议里的statuscode返200即可,不是在请求体中返回。