个性化语音内容,由您提供语音文件。语音验证码API访问的地址见Base URL。
生产环境的Base URL:https://app.cloopen.com:8883
注意:为了确保数据隐私,云通讯平台的REST API是通过HTTPS方式请求。
URL格式:/2013-12-26/Accounts/{accountSid}/Calls/VoiceVerify?sig={SigParameter}
在URL格式中 {}内的内容表示为参数,非{}的内容固定不变。
属性说明:
属性 | 类型 | 约束 | 说明 |
---|---|---|---|
accountSid |
String | 必选 |
开发者主账户ACCOUNT SID。(登陆官网在管理控制台获取) |
SigParameter |
String | 必选 |
REST API 验证参数,生成规则如下 1.使用MD5加密(账户Id + 账户授权令牌 + 时间戳)。其中账户Id和账户授权令牌根据url的验证级别对应主账户。 时间戳是当前系统时间,格式"yyyyMMddHHmmss"。时间戳有效时间为24小时,如:20140416142030 2.SigParameter参数需要大写,如不能写成sig=abcdefg而应该写成sig=ABCDEFG |
Accept:application/xml;
Content-Type:application/xml;charset=utf-8;
Content-Length:256;
Authorization:
属性说明:
属性 | 类型 | 约束 | 说明 |
---|---|---|---|
Accept |
String | 必选 | 客户端响应接收数据格式:application/xml、application/json |
Content-Type |
String | 必选 | 类型:application/xml;charset=utf-8、application/json;charset=utf-8 |
Content-Length |
String | 必选 | Content-Length |
Authorization | String | 必选 | 验证信息,生成规则详见下方说明 1.使用Base64编码(账户Id + 冒号 + 时间戳)其中账户Id根据url的验证级别对应主账户 2.冒号为英文冒号 3.时间戳是当前系统时间,格式"yyyyMMddHHmmss",需与SigParameter中时间戳相同。 |
属性 | 类型 | 约束 | 说明 |
---|---|---|---|
appId | String | 必选 | 应用Id |
verifyCode | String | 可选 | 验证码内容,为数字和英文字母,不区分大小写,长度4-8位 |
to | String | 必选 | 接收号码,被叫为座机时需要添加区号,如:01052823298;被叫为分机时分机号由'-'隔开,如: 01052823298-3627 |
displayNum | String | 可选 | 显示主叫号码,显示权限由服务侧控制。 |
playTimes | String | 可选 | 循环播放次数,1-3次,默认播放1次。 |
respUrl | String | 可选 | 语音验证码状态通知回调地址(必须符合URL规范),云通讯平台将向该Url地址发送呼叫结果通知。 |
lang | String | 可选 | 播放的语言类型(暂不支持设置en,默认zh)。取值en(英文)、zh(中文),默认值zh。 |
userData | String | 可选 | 第三方私有数据,可在语音验证码状态通知中获取此参数。 |
playVerifyCode | String | 必选 | 内容由多个wav格式文件组成,用";"分隔,云通讯会顺序播放文件内容。 语音文件在管理控制台上传,审核通过之后才可以使用。 放音文件的格式样本如下:位速 128kbps,音频采样大小16位,频道 1(单声道), 音频采样级别 8kHz,音频格式PCM,这样能保证放音的清晰度。 |
maxCallTime | String | 可选 | 该通通话最大通话时长,到时间自动挂机 |
POST /2013-12-26/Accounts/abcdefghijklmnopqrstuvwxyz012345/Calls/VoiceVerify?sig=C1F20E7A9733CE94F680C70A1DBABCDE HTTP/1.1 Host:192.168.0.1:8883 content-length: 139 Accept:application/xml; Content-Type:application/xml;charset=utf-8; Authorization:ZmY4MDgwODEzYzM3ZGE1MzAxM2M4MDRmODA3MjAwN2M6MjAxMzAyMDExNTABCDE= <?xml version='1.0' encoding='utf-8'?> <VoiceVerify> <appId>abcdefghijklmnopqrstuvwxyz123456</appId> <verifyCode>1a8d9u</verifyCode> <playTimes>2</playTimes> <to>13811234567</to> <displayNum>01052821234</displayNum> <welcomePrompt>huanying.wav</welcomePrompt> <maxCallTime>60</maxCallTime> <playVerifyCode>yanzhengma.wav;1.wav;3.wav;5.wav;9.wav</playVerifyCode> </VoiceVerify>
用户收听的效果是:"huanying.wav+yanzhengma.wav+1.wav+3.wav+5.wav+9.wav"
POST /2013-12-26/Accounts/abcdefghijklmnopqrstuvwxyz012345/Calls/VoiceVerify?sig= C1F20E7A9733CE94F680C70A1DBABCDE HTTP/1.1 Host:192.168.0.1:8883 content-length: 139 Accept:application/json; Content-Type:application/json;charset=utf-8; Authorization:ZmY4MDgwODEzYzM3ZGE1MzAxM2M4MDRmODA3MjAwN2M6MjAxMzAyMDExNTABCDE= {"appId":"abcdefghijklmnopqrstuvwxyz123456","verifyCode":"1a8d9u","playTimes":"2", "to":"01052821234","displayNum":"01052821234","welcomePrompt":"huanying.wav","maxCallTime":"60", "playVerifyCode":"yanzhengma.wav;1.wav;3.wav;5.wav;9.wav"}
用户收听的效果是:"huanying.wav+yanzhengma.wav+1.wav+3.wav+5.wav+9.wav"
此步响应只表明客户的语音验证码请求发送成功,不表明运营商已经呼叫发送验证码成功。
属性 | 类型 | 约束 | 说明 |
---|---|---|---|
statusCode | String | 必选 | 请求状态码,取值000000(成功),可参考错误代码。 |
callSid | String | 必选 | 一个由32个字符组成的唯一电话标识符 |
dateCreated | String | 必选 | 电话的创建时间 |
HTTP/1.1 200 OK Content-Length: 641 <?xml version="1.0" encoding="UTF-8" standalone="yes"?> <Response> <statusCode>000000</statusCode> <VoiceVerify> <callSid>a346467ca321c71dbd5e12f627123456</callSid> <dateCreated>2013-02-01 15:38:09</dateCreated> </VoiceVerify> </Response>
HTTP/1.1 200 OK Content-Length: 641 {"statusCode":"000000","VoiceVerify":{"dateCreated":"2013-02-01 15:53:06", "callSid":" ff8080813c373cab013c94be9fe300c5"}}