立即注册

免费试用

免费试用
导航
您现在位置:开发者中心 - CC PaaS - 后端应用接口 - OSA接口

OSA接口

1. 概述

除了CTI接口(支持从坐席客户端发起和控制呼叫)之外,CC PaaS还支持后端开放接口(OSA)。

通过OSA,业务系统可以在后台实时处理呼入,发起外呼,根据业务需求控制呼叫转接流程,可把CC功能无缝嵌入企业的业务流程中。

基于OSA,可以实现网页回呼、预测式外呼、定制化转接服务等业务场景。

2 REST接口

客户应用系统主动向CC PaaS平台发送REST请求,命令CC PaaS平台执行指定命令,比如发起外呼等等。

2.1 makeCall - 发起外呼

客户应用提交用户号码命令CC PaaS平台发起外呼。外呼用户成功后,可以直接转队列或坐席。

如果需要后继控制,比如IVR交互等可以通过回调接口完成。

  • CC PaaS平台收到makecall请求后会立即发起呼叫,但在应用调用超限时会返回失败且不执行呼叫。

  • 应用自身须根据排队状态以及超限情况调整调用后台外呼接口的频率

REST URL

/Accounts/{accountSid}/Applications/{applicationSid}/ccpaas/osa/makeCall

请求参数

名称R描述
userNumberM用户号码
userCliO用户侧显示号码
userDataO自定义数据,长度不超过256
greetPromptO接通用户后,向用户播放的提示音。
maxDurationO通话的最大时长,单位为秒
agentNoO坐席工号
queueIdO队列id
callbackO回调地址

请求示例

POST /Accounts/ac111111/Applications/ap111111/ccpaas/osa/makeCall HTTP/1.1Content-Type: application/json{    "userNumber":"13000000001",    "queueId":"11"}

返回参数

名称R描述
statusCodeM外呼返回状态码,"00000"表示成功
statusMsgM外呼返回状态描述
conversationSidO唯一会话标识
返回示例{    "statusCode":"00000",    "statusMsg":"success",    "conversationSid":"19100110000010000000000000000001"}

3 回调接口

当呼叫执行到设定触发点触发相应的呼叫事件时,CC PaaS平台向应用侧发送回调请求,提交相应的呼叫信息,并请求应用返回相应命令对呼叫进行后继处理。

3.1 回调请求

请求参数(包体JSON参数)

参数R说明
eventTypeM呼叫事件类型。"callin","callout","dtmf","queued"
appSidM应用id
conversationIdM唯一会话标识
userNumberM用户的号码
userDataO自定义数据


eventType="callin" 呼入
directionM0:用户呼入,1:外呼用户
accessNumberC平台接入号(线路号码)


eventType="dtmf" 收号
digitsO收号结果(不含结束符)


eventType="queued" 排队结果回调
queueResultM最终排队结果(接续坐席/挂机/退出/队列满/...)
queueIdO队列id,仅在呼叫实际排队后有效
queueTimeO当前呼叫排队时间,仅在呼叫实际排队后有效
currentWaitCallsO当前队列中排队的呼叫数目

callin 呼入

用户呼入后,CC PaaS 平台向应用侧发送回调请求,请求应用返回响应命令对呼叫进行后继处理。

应用可返回的回调响应命令包括IVR命令,排队命令等。

请求参数(包体JSON参数)

参数R说明
eventTypeM呼叫事件类型。"callin"
appSidM应用id
conversationIdM唯一会话标识
userNumberM用户的号码
directionM0:用户呼入,1:外呼用户
accessNumberO平台接入号(线路号码)
userDataO自定义数据

请求示例

POST /ivrreport HTTP/1.1Content-Type: application/json{  "appSid":"a1111111111111111111111111111111",  "conversationSid":"CV10000201909011020300000000000000",  "userNumber":"13000000001",
}

callout 外呼

通过OSA REST makeCall外呼用户成功后(如果未设转接队列/坐席),CC PaaS 平台向应用侧发送回调请求,请求应用返回响应命令对呼叫进行后继处理。

应用可返回的响应命令包括IVR命令,排队命令。

请求参数(包体JSON参数)

参数R说明
eventTypeM呼叫事件类型。"callout"
appSidM应用id
conversationIdM唯一会话标识
userNumberM用户的号码
userDataO自定义数据

请求示例

POST /ivrreport HTTP/1.1Content-Type: application/json{  "appSid":"a1111111111111111111111111111111",  "conversationSid":"CV10000201909011020300000000000000",  "userNumber":"13000000001",
}

dtmf 收号结果

参数说明

参数R说明
eventTypeM呼叫事件类型。"dtmf"
appSidM应用id
conversationIdM唯一会话标识
userNumberM用户的号码
userDataO自定义数据
digitsO收号结果(不含结束符)

回调消息:

POST /gather HTTP/1.1Content-Type: application/json{  "appSid":"a1111111111111111111111111111111",  "conversationSid":"CV10000201909011020300000000000000",  "userNumber":"13000000001",  "digits":"1"}

queued 排队结束

请求参数

参数R说明
eventTypeM呼叫事件类型。"queued"
appSidM应用id
conversionSidM唯一呼叫标识
userNumberM用户号码
queueResultM最终排队结果(接续坐席/挂机/退出/队列满/...)
queueIdO队列id,仅在呼叫实际排队后有效
queueTimeO当前呼叫排队时间,仅在呼叫实际排队后有效
currentWaitCallsO当前队列中排队的呼叫数目
userDataO自定义数据

queueResult取值说明

取值说明
bridging接续坐席
hangup用户挂机
leave退出
queue-full队列满
error错误
POST /action HTTP/1.1Content-Type: application/json{  "appSid":"a1111111111111111111111111111111",  "conversationSid":"CV10000201909011020300000000000000",  "userNumber":"13000000001",  "queueResult":"bridging",  "queueId":"11",  "queueTime":"10",  "currentWaitCalls":"2"}

3.2 回调响应

收到平台的回调请求后,应用可以通过回调响应指示平台后继要执行的命令,例如放音、收号、转队列等。

gather - IVR收号命令

参数R说明
actionM命令 "gather"
promptO提示音
loopO提示音播放次数
numDigitsO收号长度
timeoutO收号码间超时,单位秒,默认5秒
finishKeyO收号结束符,默认#
callbackO回调地址(收号)

示例:

{    "action":"gather",    "promptvoice":"continue.wav",    "loop": "2",    "numDigits": "1",    "callback": "http://test.com/gather"}

play - 放音

参数R说明
actionM命令 "play"
promptO提示音

示例:

{    "action":"play",    "content":"bye.wav"}

注:放音命令结束后,系统挂断呼叫。

enqueue - 排队

参数R说明
actionM命令 "enqueue"
queueIdM队列id
waitPromptO排队等候时向客户播放的提示音。默认不播放
callbackO回调地址(排队结束)

示例:

{    "action":"enqueue",    "queueId":"11",    "waitPrompt":"wait.wav"}


专业、便捷、稳定的企业通信能力开放平台,点击注册立即免费试用!

免费注册
©2020 北京祥云智通科技有限公司. All rights reserved. 京ICP备17071816号-1