• 概述

    接口说明:接口编码方式采用统一的UTF-8,请求方式采用HTTP REST,支持GET/POST方式

     

     

    1 短信发送接口

     

     

    用户客户端向网关提交短信

     

     

    1.1. 请求地址

    http://host:port/sms

    https://host/sms

    (使用https需要联系供应商是否支持) 请求方式可以 POST 和 GET方式,建议采用POST方式

     

     

    1.2. 参数说明

     

    参数需要 URLENCODE,编码方式采用UTF-8

     

    参数名称 含义 说明
    action 请求动作 设置为固定的:send
    account 发送用户帐号 用户帐号,由系统管理员
    password 发送帐号密码 非加密:password                加密:MD5(password+extno+content+mobile)
    mobile 全部被叫号码 发信发送的目的号码.多个号码之间用半角逗号隔开,最多500个号码
    content 发送内容 短信的内容,内容需要UTF-8 URLEncode编码
    extno 接入号 接入号,即SP服务号(106XXXXXX)
    rt 响应数据类型 json

     

    http://host:port/sms?action=send&account=账号&password=密码&mobile=15023239810,13527576163&content=内容&extno=1069012345&rt=json

     

     

    1.3. 响应数据

     

     

    {

    "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错误代码表

    短信平台

  • 概述

    向指定手机号码发送指定内容的语音通知,通知内容包括事先录制好的语音内容(录音文件),以及日期时间、货币金额、数字、数字串等限定类型的文本内容。

    发送通知接口(REST API)

    请求

    请求URL

    /Accounts/{AccountSid}/VoiceNotices

    请求包头

    HTTP标准包头字段

    Accept: application/json

    Content-Type: application/json;charset=utf-8

    Authorization: Basic XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

    请求消息示例

    POST /Accounts/abcdefghijklmnopqrstuvwxyz012345/VoiceNotices HTTP/1.1

    Host: xxx.xxx.xxx.xxx:xxxx

    Content-Length: 100

    Accept: application/json

    Content-Type: application/json;charset=utf-8

    Authorization: Basic XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

     

    {"appid": "11111111111111111111111111111111","from":"01080001001","to":"13800100001","contents":[{"type":"voice","content":"prompt1.wav"},{"type":"digits","content":"123"},{"type":"voice","content":"prompt1.wav"}],"finishkey":"1","repeatkey":"2","finishvoice":"prompt3.wav"}

    易读版

    {

        "appid": "11111111111111111111111111111111",

        "from":"01080001001",

        "to":"13800100001",

        "contents":[

            {

                "type":"voice",

                "content":"prompt1.wav"

            },

            {

                "type":"digits",

                "content":"123"

            },

            {

                "type":"voice",

                "content":"prompt2.wav"

            }

        ],

        "finishkey":"1",

        "repeatkey":"2",

        "finishvoice":"prompt3.wav"

    }

    鉴权说明

    鉴权采用Basic Authorization。在请求包头携带Authorization信息。计算方法:

    "Basic " + Base64({AccountSid}+":"+{AccountToken})

    请求参数说明

    参数需要 URLENCODE,编码方式采用UTF-8

    名称 约束 描述
    appid 必须 用户登录云通信平台后,所创建的应用的编号appid,
    to 必须 目的电话号码。可以是手机或直线固话,固话前要加区号
    from 可选 被叫收到的来显号码
    contents 必须 JSON格式,由type,content属性值对构成的数组。
                   若传递了finishkey或repeatkey参数,在最后一个content时会接收一个按键。
                   详见type属性值说明。
    userdata 可选 用户自定义数据,在话单中返回。
    times 可选 播放次数,默认2次,最多3次
    finishkey 可选 确认键,"any" 任意键。优先于repeatkey。
    repeatkey 可选 重播键,"any" 任意键。
    finishvoice 可选 用户按确认键之后播放的语音文件名

    contents:type属性取值说明

    type取值 对应内容 举例
    "voice" 语音文件名 "hello.wav"
    "time" 日期时间,格式YYYY-MM-DD "2013-07-30"
    "money" 货币金额 "2.14"
    "number" "112"
    "digits" 字串 "112"

    响应

    响应消息示例

    正常

    HTTP/1.1 200 OK

    Content-Length: 100

    { "statuscode":"0","statusmsg":"succ","requestid":"RQ10000201901010101010100000000001","callid":"CA10000201901010101010100000000001"}

    异常

    HTTP/1.1 200 OK

    Content-Length: 100

    {"statuscode":"-4","statusmsg":"missing contents","requestid":"RQ10000201901010101010100000000002"}

    响应参数说明

    名称 示例值 描述
    requestid RQ10000201901010101010100000000001 请求唯一标识
    statuscode 0 发送结果错误码
    statusmsg succ 发送结果状态描述
    callid CA10000201901010101010100000000001 呼叫唯一标识(发起呼叫后返回)可选

    statuscode说明

    statuscode取值 说明
    0 请求成功
    -1 鉴权失败
    -2 JSON解析失败
    -3 appid错误
    -4 参数错误
    -5 发起呼叫失败
    -6 发起呼叫失败

    语音通知

  • 概述

    ctc接口用于点击呼叫场景。

    应用调用click2call接口成功后,语音服务平台使用先后拨打主被叫用户的号码,接通后桥接双方进行通话。

    /{SoftVersion}/Accounts/{accountSid}/Applications/{applicationSid}/ctc/Conversations[/{conversationSid}]

    API

    click2call

    请求URL

    /{SoftVersion}/Accounts/{accountSid}/Applications/{applicationSid}/ctc/Conversations

    请求参数

    属性 约束 说明
    action 必选 请求指令:click2call
    caller 必选 主叫用户的号码(发起呼叫的用户)
    callee 必选 被叫用户的号码
    callerCli 可选 指定呼叫主叫用户的线路号码
    calleeCli 可选 指定呼叫被叫用户的线路号码
         
    greetVoice 可选 接到呼入,呼叫被叫前,向主叫播放的提示音。
    ringbackMode 可选 回铃音模式。
                   0:透传模式(默认):透传被叫侧的回铃音及呼叫失败提示音
                   1:定制模式:平台播放回铃音及呼叫失败提示音。
    ringbackVoice 可选 定制回铃音(ringback_mode=1时有效)
    failVoice 可选 定制呼叫失败音(ringback_mode=1时有效)
    calleeVoice 可选 给被叫播放的提示音(接通后),缺省不播放
                   给被叫播放提示音时主叫如何处理?一起听?
         
    callerVoice 可选 给主叫播放的提示音(接通后),缺省不播放
                   给被叫播放提示音时主叫如何处理?一起听?
         
    userData 可选 支持英文字母和数字,长度最大支持256字节。
    statusUrl 可选 接收状态上报的URL。
                   状态包括呼出、振铃、摘机和挂机等
    cdrUrl 可选 实时话单通知接口回调地址
         
    record 可选 0不录音;1被叫振铃时开始录音;2被叫接听开始录音;默认值0。
    maxDuration 可选 通话的最大时长,单位为秒。默认值空,不限制通话时长
    lastMinVoice 可选 最后一分钟提示音。默认放音内容“本次通话时长还剩1分钟”。

    响应参数

    名称 示例值 描述
    conversationSid CA2016010000000219 呼叫唯一标识(发起呼叫后返回)
    statusCode 00000 发送结果错误码
    statusMsg success 发送结果状态描述

    取消呼叫

    请求URL

    /{SoftVersion}/Accounts/{accountSid}/Applications/{applicationSid}/ctc/Conversations/{conversationSid}

    请求参数说明

    名称 示例值 描述
    statusCode 00000 发送结果错误码
    statusMsg success 发送结果状态描述

    三方呼叫

    请求URL

    /{SoftVersion}/Accounts/{accountSid}/Applications/{applicationSid}/ctc/Conversations/{conversationSid}

    请求参数说明

    参数 约束 说明
    action 必选 请求指令:addCall
    callee 必选 被叫用户的号码
    calleeCli 可选 指定呼叫被叫用户的线路号码
         
    greetVoice 可选 呼叫被叫前,向主叫播放的提示音。
    ringbackMode 可选 回铃音模式。
                   0:透传模式(默认):透传被叫侧的回铃音及呼叫失败提示音
                   1:定制模式:平台播放回铃音及呼叫失败提示音。
    ringbackVoice 可选 定制回铃音(ringback_mode=1时有效)
    failVoice 可选 定制呼叫失败音(ringback_mode=1时有效)
    calleeVoice 可选 给被叫播放的提示音(接通后),缺省不播放
                   给被叫播放提示音时主叫如何处理?一起听?
         
    callerVoice 可选 给主叫播放的提示音(接通后),缺省不播放
                   给被叫播放提示音时主叫如何处理?一起听?
    record O 是否录音,默认false不录音
    timeout O 被叫接听超时时长。默认 120秒

    click2call请求指示的被叫挂机时,通话结束;其它呼叫方挂机时,不影响剩余两方通话          当通话变为两方呼叫时,允许再次调用addCall

    响应参数

    名称 示例值 描述
    statusCode 00000 发送结果错误码
    statusMsg success 发送结果状态描述

    呼叫状态

    参数 说明
    conversationSid 会话标识ID
    callSid 呼叫标识ID
    apiVersion API版本信息
    accountSid 账号ID
    appSid 应用ID
    from 主叫号码
    to 被叫号码
    direction 呼叫方向 outbound:外呼
    callStatus 呼叫状态
                   initiated:开始呼叫
                   ringing:呼叫振铃
                   answered:呼叫应答
                   completed:呼叫结束
    timestamp 时间戳 YYYYMMDDHHmmss
    callCause 挂机原因
                   failed:失败
                   no-answer:无应答
                   time-out:外呼超时
                   completed:正常结束
    userData 用户自定义数据

    呼叫话单

    参数

    说明

    conversationSid 会话标识ID
    accountSid 账号ID
    appSid 应用ID
    recordingUrl 录音下载Url
    recordingDuration 录音时长
    userData 用户自定义数据
    byeType 挂机类型
                   0:主叫未应答
                   1:呼被叫时主叫挂机
                   2:被叫未应答
                   3:主叫挂机
                   4:被叫挂机
                   5:通话时长达到上限结束
    cdrs 呼叫话单CDR集

    CDR

    参数

    说明

    callSeq 呼叫序列号, 从0开始递增
    callSid 呼叫标识ID
    from 主叫号码
    to 被叫号码
    startTime 开始时间
    ringTime 振铃时间
    answerTime 应答时间
    stopTime 结束时间
    duration 通话时长
    cause 挂机原因

    示例

    {

             "accountSid": "400a8e279a5b7f0f33c1d8b58bcfe3dd",

             "appSid": "aebd5b2621c64582a69474382d253530",

             "conversationSid": "CV50001201908141226560665400000001",

             "recordingUrl": "http://test.com/record/100001/20190814/RE1000200000184_D_2_20190814122702.wav",

             "recordingDuration": "14",

             "userData": "13800138001_2_13800138000",

             "byeType": "4",

             "cdrs": [{

                     "callSeq": "1",

                     "callSid": "CA10002201908141227025945100000184",

                     "from": "01062236000",

                     "to": "13800138000",

                     "startTime": "20190814122700",

                     "ringTime": "20190814122700",

                     "answerTime": "20190814122702",

                     "stopTime": "20190814122716",

                     "duration": "14",

                     "cause": "completed"

             }, {

                     "callSeq": "0",

                     "callSid": "CA10002201908141226569209000000183",

                     "from": "01062236000",

                     "to": "13800138001",

                     "startTime": "20190814122654",

                     "ringTime": "20190814122655",

                     "answerTime": "20190814122656",

                     "stopTime": "20190814122716",

                     "duration": "20",

                     "cause": "completed"

             }]

    }

    流程示意

    主叫侧平台被叫侧click2callsetupanswergreet_voicesetupringringback toneringback_voiceringback tonealt[ 定制回铃音 ][ 透传回铃音 ]answer2wayCall主叫侧平台被叫侧

    点击呼叫

  • 概述

    向指定手机号码发送指定内容的语音验证码。

    发送验证码接口(REST API)

    /{SoftVersion}/Accounts/{accountSid}/Applications/{applicationSid}/ctc/Conversations[/{conversationSid}]

    请求

    请求URL

    /Accounts/{AccountSid}/VoiceCaptchas

    请求包头

    HTTP标准包头字段

    Accept: application/json

    Content-Type: application/json;charset=utf-8

    Authorization: Basic XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

    请求消息示例

    POST /Accounts/abcdefghijklmnopqrstuvwxyz012345/VoiceCaptchas HTTP/1.1

    Host: xxx.xxx.xxx.xxx:xxxx

    Content-Length: 100

    Accept: application/json

    Content-Type: application/json;charset=utf-8

    Authorization: Basic XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

    {"appid": "11111111111111111111111111111111","from":"01080001001","to":"13800100001","code":"123235"}

    易读版

    {

    "appid": "11111111111111111111111111111111",

    "from":"01080001001",

    "to":"13800100001",

    "code":"123235"

    }

    鉴权说明

    鉴权采用Basic Authorization。在请求包头携带Authorization信息。计算方法:

    "Basic " + Base64({AccountSid}+":"+{AccountToken})

    请求参数说明

    请求参数

    属性 约束 说明
    appid 必选  
    code 必选 验证码,数字和英文字母,不区分大小写,长度4-8位。
    to 必选 接收号码
    from 可选 显号
    lang 可选 语言类型。取值en(英文)、zh(中文),默认值zh。
    userdata 可选 用户定义数据,可在状态通知中获取此参数。

    响应参数

    名称 示例值 描述
    conversationSid CA2016010000000219 呼叫唯一标识(发起呼叫后返回)
    statusCode 00000 发送结果错误码
    statusMsg success 发送结果状态描述

     

    响应

    响应消息示例

    正常

    HTTP/1.1 200 OK

    Content-Length: 100

    { "statuscode":"0","statusmsg":"提交成功","requestid":"2016010000000205"}

    异常

    HTTP/1.1 200 OK

    Content-Length: 100

    {"statuscode":"-2","statusmsg":"缺少必要参数","requestid":""}

    响应参数说明

    名称 示例值 描述
    requestid 2016010000000219 请求唯一标识
    statuscode 0 发送结果错误码
    statusmsg 提交成功 发送结果状态描述
    callid CA2016010000000219 呼叫唯一标识(发起呼叫后返回)可选

    通知结果回调接口

    POST推送,JSON格式,参数值均为字符串。

    参数名称 描述
    requestid 请求唯一标识
    callid 呼叫唯一标识
    appid 所属应用的id
    to 被叫号码
    starttime 开始呼叫的时间(必须)
    ringtime 开始振铃的时间
    answertime 被叫应答时间
    endtime 结束时间(必须)
    duration 通话时长(单位:秒)
    result 通知结果 0:成功,1:失败
    reason 失败原因:"1"未应答,"2"外呼失败
    userdata 用户私有数据。外呼通知接口参数

    语音验证码