语音通知/验证码接口文档
最近更新时间:2020-03-01 20:57:53
1.发送接口
协议说明
协议类目 |
说明 |
调用地址 |
https://cloud.10658.com.cn/voiceApi |
请求方式 |
POST(HTTPS) |
编码格式 |
UTF-8 |
Content-Type |
application/x-www-form-urlencoded;charset=utf-8 |
请求参数(Query)
参数名称 |
类型 |
是否必填 |
描述 |
示例值 |
appId |
String |
是 |
账户标识。平台分配给用户的接口调用账户标识,登录平台首页账号信息栏可查看。 |
2RYN7CQHL1M***** |
appKey |
String |
是 |
账户密钥。平台分配给用户的接口调用密钥,登录平台首页账号信息栏,校验身份后可查看。 |
WVNA4A0***** |
templateId |
String |
是 |
语音通知/验证码短信模版ID。需在https://cloud.10658.com.cn平台申请,审核通过后,模版ID可用。 |
724 |
phone |
String |
是 |
接收短信的手机号码。 (只支持单个手机号) |
156xxxx1090 |
variables |
String |
是 |
变量值。语音验证码支持2-8位纯数字,语音通知支持不超过50个字符。 (短信内容不支持插入表情符号) |
1234 |
请求示例
import java.io.IOException;
import org.apache.commons.httpclient.HttpClient;
import org.apache.commons.httpclient.HttpException;
import org.apache.commons.httpclient.NameValuePair;
import org.apache.commons.httpclient.methods.PostMethod;
import com.alibaba.fastjson.JSONObject;
import com.veesing.utils.Config;
/**
* 语音验证码
* @author 10658云通信
*
*/
public class VoiceTest {
public static void main(String[] args) {
// 获取连接
HttpClient client = new HttpClient();
// 语音验证码API接口地址
PostMethod method = new PostMethod("https://cloud.10658.com.cn/voiceApi");
// 设置编码
client.getParams().setContentCharset("UTF-8");
method.setRequestHeader("ContentType", "application/x-www-form-urlencoded;charset=utf-8");
// 手机号码,一次只能提交一个手机号码
String phone = "15080929435";
// 变量
Integer num = (int)((Math.random()*9+1)*1000);
String variables = num.toString();
System.out.println("验证码是:"+variables);
// 拼接参数
NameValuePair[] data = {
new NameValuePair("appId", "2RYN7CQHL1M*****"),
new NameValuePair("appKey", "WVNA4A0*****"),
new NameValuePair("templateId", "724"),
new NameValuePair("phone", phone),
new NameValuePair("variables", variables) };
method.setRequestBody(data);
try {
client.executeMethod(method);
String result = method.getResponseBodyAsString();
// 返回结果
System.out.println(result);
JSONObject jsonObject = JSONObject.parseObject(result);
// 返回1则发送成功(逻辑操作请根据接口文档返回参数自行判断)
if (jsonObject.get("returnStatus").equals("1")) {
System.out.println("成功!");
} else {
System.out.println("失败!");
}
// 释放连接
method.setRequestHeader("Connection", "close");
method.releaseConnection();
} catch (HttpException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
}
更多语言示例,请 点击下载
正常响应示例
{
"returnStatus": "1 ", //状态码
"message": "成功", //状态提示信息
"remainPoint": "241", //本次发送后,账户剩余条数
"taskId": "3313746", //下发批次ID(唯一)
"successCounts": "1" //成功条数
}
异常响应示例
{
"returnStatus": "0", //状态码
"message": "参数错误", //状态提示信息
"remainPoint": null, //本次发送后,账户剩余条数
"taskId": null, //下发批次ID(唯一)
"successCounts": null //成功条数
}
状态码定义
状态码 |
状态提示信息 |
1 |
发送成功 |
0 |
账号或密码错误 |
0 |
缺少参数 |
0 |
模板不存在或者未通过 |
0 |
模板id格式不正确 |
0 |
您的账户已被锁定,请联系您的专属客服 |
0 |
余额不足 |
0 |
手机号码格式不正确 |
0 |
该号码今日发送次数已达上限 |
0 |
相同手机号码一分钟之内只可发送一次 |
0 |
当日发送量已超出最大发送限制 |
0 |
未知原因,请联系客服 |
2.回执推送接口
触发条件
运营商产生短信回执后,触发回执数据推送,每产生一条回执,则推送一条。
使用说明
回执数据,由短信平台主动推送到用户设置的地址上,数据格式需遵循标准化数据格式。
协议说明
协议类目 |
说明 |
调用方式 |
主动回调 |
请求方式 |
POST(HTTPS) |
编码格式 |
UTF-8 |
数据交互格式 |
Key-Value |
Content-Type |
application/x-www-form-urlencoded;charset=utf-8 |
回执数据定义
参数名称 |
类型 |
是否必填 |
描述 |
示例值 |
mobile |
String |
是 |
用户手机号码 |
1508092**** |
taskid |
String |
是 |
下发批次ID |
123 |
status |
String |
是 |
回执状态 1.发送成功 0.发送失败 |
1 |
code |
String |
是 |
网关回执码 |
1 |
receivetime |
String |
是 |
回执产生时间 yyyy-MM-dd HH:mm:ss |
2019-07-23 17:00:00 |
talktime |
String |
是 |
语音时长(单位:秒) |
12 |
remark |
String |
是 |
备注 |
接收成功 |
3.余额查询接口
协议说明
协议类目 |
说明 |
调用地址 |
https://cloud.10658.com.cn/voiceApi/getBalance |
请求方式 |
POST(HTTPS) |
编码格式 |
UTF-8 |
Content-Type |
application/x-www-form-urlencoded;charset=utf-8 |
请求参数(Query)
参数名称 |
类型 |
是否必填 |
描述 |
示例值 |
appId |
String |
是 |
账户标识。平台分配给用户的接口调用账户标识,登录平台首页账号信息栏可查看。 |
2RYN7CQHL1M***** |
appKey |
String |
是 |
账户密钥。平台分配给用户的接口调用密钥,登录平台首页账号信息栏,校验身份后可查看。 |
WVNA4A0***** |
请求示例
OkHttpClient client = new OkHttpClient().newBuilder()
.followRedirects(false)
.build();
MediaType mediaType = MediaType.parse("text/plain");
RequestBody body = RequestBody.create(mediaType, "");
Request request = new Request.Builder()
.url("https://cloud.10658.com.cn/voiceApi/group/getBalance?appId=2RYN7CQHL1M*****&appKey=WVNA4A0*****")
.method("POST", body)
.build();
Response response = client.newCall(request).execute();
正常响应示例
{
"returnStatus": "1 ", //状态码
"message": "成功", //状态提示信息
"remainPoint": "241", //账户剩余条数
"taskId": null,
"successCounts": null
}
异常响应示例
{
"returnStatus": "0", //状态码
"message": "参数错误", //状态提示信息
"remainPoint": null,
"taskId": null,
"successCounts": null
}
状态码定义
状态码 |
状态提示信息 |
1 |
提交成功 |
0 |
账号或密码错误 |
0 |
缺少参数 |
0 |
您的账户已被锁定,请联系您的专属客服 |
0 |
未知原因,请联系客服 |
0 |
IP受限 |