用户客户端向网关提交短信
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 余额不足
解决方法: