语音验证码API接口文档

1、概要

1.1 文档说明

本文档主要提供给互亿无线短信接口平台的用户对接接口的使用说明,开发者可以利用互亿无线短信接口平台提供的 HTTP 接口,调用互亿无线短信接口平台的语音验证码服务。

1.2 接口内容

本语音验证码API接口文档包含语音发送、余额查询、发送回执推送等。

1.3 提交方式

GET / POST

1.4 加密方式

1、采用HTTPS协议提交请求
2、通过MD5动态签名方式加密

1.5 API ID / API KEY

登录用户中心,进入【语音验证码】->【产品总览】页面右侧,如下图所示:

2、语音发送

2.1 接口描述

通过POST、 GET 方式进行语音发送提交,内容格式为:Content-Type: application/x-www-form-urlencoded,数据编码采用utf-8格式。

2.2 请求地址

http://api.voice.ihuyi.com/webservice/voice.php?method=Submit

2.3 请求参数

参数名称 参数值描述 必填
account APIID(请登录用户中心【语音验证码】-【产品纵览】查看)
password 1、APIKEY(请登录用户中心【语音验证码】-【产品纵览】查看)
2、动态密码(生成动态密码方式请看该文档末尾的说明)
mobile 接收手机号码,只能提交1个号码
content 验证码(4-6位数字)
time Unix时间戳(10位整型数字,当使用动态密码方式时为必填)
format 返回格式(可选值为:xml或json,系统默认为xml)

用户通过http 或 https提交发送短信请求到服务器后,服务器会返回一串xml格式的字符串,SubmitResult结构说明如下:

参数名称 类型 描述
code int 返回值为2时,表示提交成功
voiceid string 当提交成功后,此字段为流水号,否则为0
msg string 提交结果描述

2.4 响应示例

示例(成功)



  2 提交成功 60495654 

示例(失败)



  405 account或password不正确 0 

2.5 响应参数

code msg
0 提交失败
2 提交成功
400 非法ip访问
401 帐号不能为空
402 密码不能为空
403 手机号码不能为空
4030 手机号码已被列入黑名单
404 语音内容不能为空
405 用户名或密码不正确
4050 账号被冻结
40505 没有签定合同
4051 剩余条数不足
4052 访问ip与备案ip不符
406 手机格式不正确
407 短信内容含有敏感字符
4070 语音验证码内容必须为4-6位数字
408 您的帐户疑被恶意利用,已被自动冻结,如有疑问请与客服联系。

2.6 请求示例

http://api.voice.ihuyi.com/webservice/voice.php?method=Submit&account=APIID&password=APIKEY&mobile=手机号码&content=1125

3、余额查询

3.1 接口描述

通过POST、 GET 方式查询你的账户语音验证码剩余条数,内容格式为:Content-Type: application/x-www-form-urlencoded,数据编码采用utf-8格式。

3.2 请求地址

http://api.voice.ihuyi.com/webservice/voice.php?method=GetNum

3.3 请求参数

参数名称 参数值描述 是否必填
account APIID(请登录用户中心【语音验证码】-【产品纵览】查看)
password 1、APIKEY(请登录用户中心【语音验证码】-【产品纵览】查看)
2、动态密码(生成动态密码方式请看该文档末尾的说明)
time Unix时间戳(10位整型数字,当使用动态密码方式时为必填)
format 返回格式(可选值为:xml或json,系统默认为xml)

用户通过http 或 https提交帐户余额查询请求到服务器后,服务器会返回一串xml格式的字符串,GetNumResult结构说明如下:

参数名称 类型 描述
code int 状态返回值
msg string 查询结果描述
num string 剩余数量

3.4 响应示例

示例(成功)



  2 查询成功 856 

示例(失败)



  405 account或password不正确 0 

3.5 响应参数

code msg
2 查询成功
400 非法ip访问
401 帐号不能为空
402 密码不能为空
405 用户名或密码不正确
4050 账号被冻结

3.6 GET请求示例

http://api.voice.ihuyi.com/webservice/voice.php?method=GetNum&account=APIID&password=APIKEY 

4、发送回执推送

4.1 接口描述

用户先提供数据接收地址,然后绑定到互亿无线系统后台,平台会以POST方式实时的将回执信息推送到此地址,内容格式为:Content-Type: application/x-www-form-urlencoded。

4.2 推送参数

参数名称 参数值描述
code 状态值(2成功 0失败)
msg 回执状态说明
mobilephone 手机号码
talktime 接听时间(秒)
voiceid 流水号(对应提交时返回的voiceid)
report_time 回执时间

注意: 成功接收请输出字符 "success" (不包含引号)结束推送,否则以接收失败处理。每个回执最多推送3次。每次间隔叠加60秒。

code 参数说明

code msg
2 成功
0 未知错误
-1 关机
-2 停机
-3 暂时无法接通
-4 正在通话
-5 空号
-6 无人接听
-8 呼入限制
-9 网络忙
-10 呼出限制
-11 线路忙
-12 用户拒接

5、生成动态密码方式

以PHP为例,提交语音验证码的生成方式:

$time = time();
$password = md5($account.$apikey.$mobile.$content.$time);

例如:

APIID: test
APIKEY:1q784322ba1d9bb88d50cf5cdfd89k7d
手机号:138xxxxxxxx
内容:1125
time:1451544941
结果:$password=md5('test1q784322ba1d9bb88d50cf5cdfd89k7d138xxxxxxxx11251451544941');

查询剩余条数的生成方式:

$time = time();
$password = md5($account.$apikey.$time);

例如:

APIID: test
APIKEY:1q784322ba1d9bb88d50cf5cdfd89k7d
手机号:138xxxxxxxx
time:1451544941
结果:$password=md5('test1q784322ba1d9bb88d50cf5cdfd89k7d1451544941');

Unix时间戳参考地址:http://tool.chinaz.com/Tools/unixtime.aspx