用户客户端向网关提交短信
https://域名/sms
请求方式可以 POST 和 GET方式,建议采用POST方式
参数需要 URLENCODE,编码方式采用UTF-8
参数名称 | 含义 | 说明 |
---|---|---|
action | 请求动作 | 设置为固定的:send |
account | 发送用户帐号 | 用户帐号,由系统管理员 |
password | 发送帐号密码 | 用户账号对应的密码 |
mobile | 全部被叫号码 | 发信发送的目的号码.多个号码之间用半角逗号隔开,最多500个号码 |
content | 发送内容 | 短信的内容,内容需要UTF-8 URLEncode编码 |
extno | 接入号 | 接入号,即SP服务号(106XXXXXX) |
rt | 响应数据类型 | json |
例如:
https://域名/sms?action=send&account=账号&password=密码&mobile=15023239810,13527576163&content=内容&extno=1069012345&rt=json
{ "status": "0", "balance": -153278040, "list": [ { "mid": "4C2CA88382720003", "mobile": "18983437010", "result": 0 }, { "mid": "4C2CA88382720004", "mobile": "18983437011", "result": 0 } ] }
字段 | 说明 |
---|---|
status | 请求结果,具体参见STATUS错误代码表 |
balance | 当前账户余额,单位厘 |
list | 短信提交响应列表 |
mid | 消息ID(用于状态报告匹配) |
mobile | 手机号码 |
result | 短信提交错误代码,参见RESULT错误代码表 |
用于客户端向网关提交点对点短信,即一个号码一个内容的短信
https://域名/sms
请求方式可以 POST 和 GET方式,建议采用POST方式
参数需要 URLENCODE,编码方式采用UTF-8
参数名称 | 含义 | 说明 |
---|---|---|
action | 请求动作 | 设置为固定的:p2p |
account | 发送用户帐号 | 用户帐号,由系统管理员 |
password | 发送帐号密码 | 用户账号对应的密码 |
mobileContentList | 号码短信内容列表 | 号码内容格式为:Mobile#Content 多个号码之间用换行分割如: 13800000001#下发内容1 13800000002#下发内容2 13800000003#下发内容3 13800000004#下发内容4 |
extno | 接入号 | 接入号,即SP服务号(106XXXXXX) |
rt | 响应数据类型 | json |
例如:
http://192.168.1.4:7822/sms?action=p2p&rt=json&account=922011&password=123456&mobileContentList=13800000001%23%e4%b8%8b%e5%8f%91%e5%86%85%e5%ae%b91%0d13800000002%23%e4%b8%8b%e5%8f%91%e5%86%85%e5%ae%b92%0d13800000003%23%e4%b8%8b%e5%8f%91%e5%86%85%e5%ae%b93%0d13800000004%23%e4%b8%8b%e5%8f%91%e5%86%85%e5%ae%b94%0d&extno=10690231221
{ "status": "0", "balance": -153278280, "list": [ { "mid": "4C372C4382720007", "mobile": "13800000001", "result": 0 }, { "mid": "4C372C4382720008", "mobile": "13800000002", "result": 0 }, { "mid": "4C372C4382720009", "mobile": "13800000003", "result": 0 }, { "mid": "4C372C438272000A", "mobile": "13800000004", "result": 0 } ] }
字段 | 说明 |
---|---|
status | 请求结果,具体参见STATUS错误代码表 |
balance | 当前账户余额,单位厘 |
list | 短信提交响应列表 |
mid | 消息ID(用于状态报告匹配) |
mobile | 手机号码 |
result | 短信提交错误代码,参见RESULT错误代码表 |
用于客户端查询当前账户余额
https://域名/sms
请求方式可以 POST 和 GET方式,建议采用POST方式
参数需要 URLENCODE,编码方式采用UTF-8
参数名称 | 含义 | 说明 |
---|---|---|
action | 请求动作 | 设置为固定的:balance |
account | 用户帐号 | 用户帐号,由系统管理员 |
password | 帐号密码 | 用户账号对应的密码 |
rt | 响应数据类型 | json |
例如:
https://域名/sms?action=balance&account=账号&password=密码&rt=json
{"status":0,"balance":-153278040,"chargeType":"POSTCHARGE"}
字段 | 说明 |
---|---|
status | 请求结果,具体参见STATUS错误代码表 |
balance | 当前账户余额,单位厘 |
chargeType | POSTCHARGE=后付费 PRECHARGE=预付费 |
用于客户端到网关获取短信发送的状态报告
https://域名/sms
请求方式可以 POST 和 GET方式,建议采用POST方式
参数需要 URLENCODE,编码方式采用UTF-8
参数名称 | 含义 | 说明 |
---|---|---|
action | 请求动作 | 设置为固定的:report |
account | 用户帐号 | 用户帐号,由系统管理员 |
password | 帐号密码 | 用户账号对应的密码 |
rt | 响应数据类型 | json |
例如:
https://域名/sms?action=report&action=report&account=账号&password=密码&rt=json
{ "status": "0", "balance": -153278040, "list": [ { "flag": 1, "mid": "4C36654382720005", "spid": "922011", "accessCode": "106901234", "mobile": "18983437010", "stat": "MA:0029", "time": "2017-04-12 01:38:21" }, { "flag": 1, "mid": "4C36654382720006", "spid": "922011", "accessCode": "106901234", "mobile": "18983437011", "stat": "MA:0029", "time": "2017-04-12 01:38:21" } ] }
字段 | 说明 |
---|---|
status | 请求结果,具体参见STATUS错误代码表 |
balance | 当前账户余额,单位厘 |
list | 详细状态报告列表 |
flag | 1=状态报告 |
mid | 消息ID(与提交时响应的消息ID匹配) |
spid | 归属账号(可忽略) |
mobile | 手机号码 |
accessCode | 下发号码 |
stat | 状态报告代码,参见STAT状态报告代码表 |
time | 状态报告的具体时间 |
用户客户端向网关获取手机上行回复的短信
https://域名/sms
请求方式可以 POST 和 GET方式,建议采用POST方式
参数需要 URLENCODE,编码方式采用UTF-8
参数名称 | 含义 | 说明 |
---|---|---|
action | 请求动作 | 设置为固定的:mo |
account | 用户帐号 | 用户帐号,由系统管理员 |
password | 帐号密码 | 用户账号对应的密码 |
rt | 响应数据类型 | json |
例如:
https://域名/sms?action=mo&account=账号&password=密码&rt=json
{ "status": "0", "balance": -153278040, "list": [ { "flag": 0, "mid": "4C36654382720005", "spid": "922011", "mobile": "18983437010", "content": "上行内容", "time": "2017-04-12 01:38:21" }, { "flag": 1, "mid": "4C36654382720006", "spid": "922011", "mobile": "18983437011", "stat": "测试内容", "time": "2017-04-12 01:38:21" } ] }
字段 | 说明 |
---|---|
status | 请求结果,具体参见STATUS错误代码表 |
balance | 当前账户余额,单位厘 |
list | 详细状态报告列表 |
flag | 0=手机用户上行 |
mid | 消息ID(与提交时响应的消息ID匹配) |
spid | 归属账号(可忽略) |
mobile | 手机号码 |
accessCode | 接收号码,即SP服务号(106XXXXXX) |
content | 手机上行的具体内容 |
time | 手机上行的具体时间 |
(暂不可用)
用于网关向客户端推送状态报告
由客户端向网关报备推送地址,请求方式 由网关采用POST方式,推送到客户端
[ { "flag": 0, "mid": "4C36654382720005", "spid": "922011", "mobile": "18983437010", "accessCode": "10690XXXXXX", "content": "上行内容", "time": "2017-04-12 01:38:21" }, { "flag": 1, "mid": "4C36654382720006", "spid": "922011", "mobile": "18983437011", "accessCode": "10690XXXXXX", "stat": "DELIVRD", "time": "2017-04-12 01:38:21" } ]
字段 | 说明 |
---|---|
list | 详细状态报告列表 |
flag | 0=手机用户上行 1=状态报告 |
mid | flag=1时,消息ID与提交时响应的消息ID匹配;flag=0时,表示该条上行的消息ID |
spid | 归属账号(可忽略) |
mobile | 手机号码 |
accessCode | 接收号码,即SP服务号(106XXXXXX) |
content | 手机上行的具体内容;flag=1时,该字段无效 |
stat | 状态报告代码,具体参见STAT状态代码表;flag=0时,该字段无效 |
time | 手机上行的具体时间 |
客户端接收成功,响应文本OK即可
OK
错误代码 | 具体含义 |
---|---|
1 | 消息包格式错误 |
2 | IP鉴权错误 |
3 | 账号密码不正确 |
4 | 版本号错误 |
5 | 其它错误 |
6 | 接入点错误(如账户本身开的是CMPP接入) |
7 | 账号状态异常(账号已停用) |
21 | 连接过多 |
100 | 系统内部错误,一般情况下例如:提交手机号码为 电信,但是该账号没用可用的电信接出点 |
102 | 单次提交的号码数过多(建议200以内) |
0 | 鉴权成功 |
错误代码 | 具体含义 |
---|---|
10 | 原发号码错误,即extno错误 |
15 | 余额不足 |
17 | 账号签名无效 |
0 | 提交成功 |
错误代码 | 说明 |
---|---|
DELIVRD | 短信投递成功 |
EXPIRED | Message validity period has expired |
DELETED | Message has been deleted. |
REJECTED | Message is in a rejected state |
MA:0001 | 全局黑名单号码 |
MA:0002 | 内容非法 |
MA:0003 | 无法找到下级路由 |
MA:0004 | 未知 |
MA:0005 | 目的号码格式错误 |
MA:0006 | 系统拒绝 |
MA:0009 | 未定义错误 |
MA:0011 | 未知系统内部错误 |
MA:0012 | 防钓鱼 |
MA:0013 | 非法错误的包时序 |
MA:0014 | 非法的OP_ISDN号段 |
MA:0021 | 号码格式错误 |
MA:0022 | 号码超过半小时下发次数限制 |
MA:0023 | 客户黑名单号码 |
MA:0024 | 内容未报备 |
MA:0025 | 不支持该短信 |
MA:0026 | 分条发送,组包超时 |
MA:0027 | 通道黑名单 |
MA:0028 | 全局黑名单号段 |
MA:0029 | 通道黑名单号段 |
MA:0030 | 直接产生拒绝报告 |
MO:200 | 不支持分条短信 |
MO:0254 | 转发提交超时 |
MO:0255 | 转发提交过程中,连接断开 |
MO:NNNN | NNNN为对外提交过程中,上级网关的返回值,具体含义需上级网关解释 |
提交短信过程中返回10,接入码错误,即extno=106XXXXXX 不正确,
解决方法:填写正确的接入码(网关管理员 可以从生产账号摘要中获取该接入号)
提交短信过程中返回17,签名错误
解决方法:
提交短信过程中返回15 余额不足
解决方法: