常用Demo下载:VoiceVerify PHP DEMO下载,VoiceVerify JAVA DEMO下载
我们在网站上提供各种开发语言的Demo下载,用户要参考语音验证码功能如何实现,可以在"REST Server Demo"部分根据自己的开发语言下载相应的Demo例子。

1.接口声明文件:SDK\CCPRestSDK.php
2.接口函数定义:function voiceVerify($verifyCode,$playTimes,$to,$displayNum,$respUrl,$lang,$userData)
3.参数说明:
$verifyCode: 验证码内容,为数字和英文字母,不区分大小写,长度4-8位。
$playTimes: 播放次数,1-3次。
$to: 接收号码。
$displayNum: 显示的主叫号码。
$respUrl: 语音验证码状态通知回调地址,云通讯平台将向该Url地址发送呼叫结果通知。
$lang: 语言类型。取值en(英文)、zh(中文),默认值zh。。
$userData: 第三方私有数据。
4.接口调用示例:
include_once("../SDK/CCPRestSDK.php");
说明:需要包含接口声明文件,可将该文件拷贝到自己的程序组织目录下。
$accountSid= ;
说明:主账号,登陆云通讯网站后,可在"控制台-应用"中看到开发者主账号ACCOUNT SID。
$accountToken= ;
说明:主账号Token,登陆云通讯网站后,可在控制台-应用中看到开发者主账号AUTH TOKEN。
$appId=;
说明:应用Id,请使用管理控制台首页的APPID,或自己创建应用的APPID。
$serverIP='app.cloopen.com';
说明:请求地址。
$serverPort='8883';
说明:请求端口8883.
$softVersion='2013-12-26';
说明:REST API版本号保持不变。
function voiceVerify($verifyCode,$playTimes,$to,$displayNum,$respUrl,$lang,$userData)
{
// 初始化REST SDK
global $accountSid,$accountToken,$appId,$serverIP,$serverPort,$softVersion;
$rest = new REST($serverIP,$serverPort,$softVersion);
$rest->setAccount($accountSid,$accountToken);
$rest->setAppId($appId);
// 调用语音验证码接口
echo "Try to make a voiceverify,called is $to<br/>";
$result = $rest->voiceVerify($verifyCode,$playTimes,$to,$displayNum,$respUrl,$lang,$userData);
if($result == NULL ) {
echo "result error!";
break;
}
if($result->statusCode!=0) {
echo "error code :" . $result->statusCode . "<br>";
echo "error msg :" . $result->statusMsg . "<br>";
//下面可以自己添加错误处理逻辑
}else{
echo "voiceverify success!<br/>";
// 获取返回信息
$voiceVerify = $result->VoiceVerify;
echo "callSid:".$voiceVerify->callSid."<br/>";
echo "dateCreated:".$voiceVerify->dateCreated."<br/>";
//下面可以自己添加成功处理逻辑
}
}
可参考demo中的接口调用文件:Demo\VoiceVerify.php。

1.接口声明文件:sdk\src\com\cloopen\rest\sdk\CCPRestSDK.java
2.接口函数定义:public HashMap
3.参数说明:
$verifyCode: 验证码内容,为数字和英文字母,不区分大小写,长度4-8位。
$playTimes: 播放次数,1-3次。
$to: 接收号码。
$displayNum: 显示的主叫号码。
$respUrl: 语音验证码状态通知回调地址,云通讯平台将向该Url地址发送呼叫结果通知。
$lang: 语言类型。取值en(英文)、zh(中文),默认值zh。。
$userData: 第三方私有数据。
说明:CCPRestSDK.java依赖Jar包:package com.cloopen.rest.sdk,在LIB目录下
4.接口调用示例:
import com.cloopen.rest.sdk.CCPRestSDK;
import com.cloopen.rest.sdk.CCPRestSDK.BodyType;
public class SDKTestVoiceVerifyCode {
public static void main(String[] args) {
HashMap<String, Object> result = null;
CCPRestSDK restAPI = new CCPRestSDK();
restAPI.init("app.cloopen.com", "8883");
// 初始化服务器地址和端口,生产环境配置成app.cloopen.com,端口是8883.
restAPI.setAccount("accountSid", "accountToken");
// 初始化主账号名称和主账号令牌,登陆云通讯网站后,可在"控制台-应用"中看到开发者主账号ACCOUNT SID和
//主账号令牌AUTH TOKEN。
restAPI.setAppId("AppId");
// 初始化应用ID,如果是在沙盒环境开发,
//请配置"控制台-应用-测试DEMO"中的APPID。如切换到生产环境,请使用自己创建应用的APPID
result = restAPI.voiceVerify("验证码内容", "号码","显示的号码","3(播放次数)",
"状态通知回调地址", "语言类型", "第三方私有数据");
System.out.println("SDKTestVoiceVerify result=" + result);
if("000000".equals(result.get("statusCode"))){
//正常返回输出data包体信息(map)
HashMap<String,Object> data = (HashMap<String, Object>) result.get("data");
Set<String< keySet = data.keySet();
for(String key:keySet){
Object object = data.get(key);
System.out.println(key +" = "+object);
}
}else{
//异常返回输出错误码和错误信息
System.out.println("错误码=" + result.get("statusCode") +" 错误信息= "+result.get("statusMsg"));
}
}
}
可参考demo中的接口调用文件:
demo\src\com\cloopen\rest\demo\SDKTestVoiceVerify.java。

1.接口声明文件:SDK \CCPRestSDK.py
2.接口函数定义:def voiceVerify(verifyCode,playTimes,to,displayNum,respUrl,lang,userData)
3.参数说明:
$verifyCode: 验证码内容,为数字和英文字母,不区分大小写,长度4-8位。
$playTimes: 播放次数,1-3次。
$to: 接收号码。
$displayNum: 显示的主叫号码。
$respUrl: 语音验证码状态通知回调地址,云通讯平台将向该Url地址发送呼叫结果通知。
$lang: 语言类型。取值en(英文)、zh(中文),默认值zh。。
$userData: 第三方私有数据。
4.接口调用示例:
编码说明:coding=utf-8或gbk
from CCPRestSDK import REST
import ConfigParser
accountSid= '您的主账号';
#说明:主账号,登陆云通讯网站后,可在"控制台-应用"中看到开发者主账号ACCOUNT SID。
accountToken= '您的主账号Token';
#说明:主账号Token,登陆云通讯网站后,可在控制台-应用中看到开发者主账号AUTH TOKEN。
appId='您的应用ID';
#说明:应用Id,如果是在沙盒环境开发,请配置"控制台-应用-测试DEMO"中的APPID。如切换到生产环境,请使用自己创建应用的APPID.
serverIP='app.cloopen.com'
#说明:请求地址,生产环境配置成app.cloopen.com。
serverPort='8883';
#说明:请求端口为8883.
softVersion='2013-12-26'; #说明:REST API版本号保持不变。
def voiceVerify(verifyCode,playTimes,to,displayNum,respUrl,lang,userData):
#初始化REST SDK
rest = REST(serverIP,serverPort,softVersion)
rest.setAccount(accountSid,accountToken)
rest.setAppId(appId)
result = rest.voiceVerify(verifyCode,playTimes,to,displayNum,respUrl,lang,userData)
for k,v in result.iteritems():
if k=='VoiceVerify' :
for k,s in v.iteritems():
print '%s:%s' % (k, s)
else:
print '%s:%s' % (k, v)
可参考demo中的接口调用文件:VoiceVerify.py。

1.接口声明文件:CCPRestSDK.cs
2.接口函数定义: public Dictionary
3.参数说明:
$verifyCode: 验证码内容,为数字和英文字母,不区分大小写,长度4-8位。
$playTimes: 播放次数,1-3次。
$to: 接收号码。
$displayNum: 显示的主叫号码。
$respUrl: 语音验证码状态通知回调地址,云通讯平台将向该Url地址发送呼叫结果通知。
$lang: 语言类型。取值en(英文)、zh(中文),默认值zh。。
$userData: 第三方私有数据。
4.接口调用示例:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
namespace VoiceVerifyCode
{
public partial class _Default : Page
{
protected void Page_Load(object sender, EventArgs e)
{
string ret = null;
CCPRestSDK.CCPRestSDK api = new CCPRestSDK.CCPRestSDK();
bool isInit = api.init("app.cloopen.com", "8883");
api.setAccount(主账号, 主账号令牌);
api.setAppId(应用ID);
try
{
if (isInit)
{
Dictionary<string, object> retData = api.VoiceVerify
(接听号码, 验证码内容, 接听侧显示号码, 播放次数, 语音验证码状态通知回调地址);
ret = getDictionaryData(retData);
}
else
{
ret = "初始化失败";
}
}
catch (Exception exc)
{
ret = exc.Message;
}
finally
{
Response.Write(ret);
}
}
private string getDictionaryData(Dictionary<string, object> data)
{
string ret = null;
foreach (KeyValuePair<string, object> item in data)
{
if (item.Value != null && item.Value.GetType() == typeof(Dictionary<string, object>))
{
ret += item.Key.ToString() + "={";
ret += getDictionaryData((Dictionary<string, object>)item.Value);
ret += "};";
}
else
{
ret += item.Key.ToString() + "=" +
(item.Value == null ? "null" : item.Value.ToString()) + ";";
}
}
return ret;#160;
}
}
}
可参考demo中的接口调用文件:
CCPRestDemo\Demo\VoiceVerifyCode\Default.aspx.cs。