呼叫转移
在通话中,通过此接口将当前通话转移到第三方。
支持的呼叫转移方式
可通过此 API 接口实现以下类型的呼叫转移:
- 盲转
- 根据请求参数设置,直接将通话转接给第三方。
- 咨询转
- 在转接通话前,先与第三方进行交谈,咨询是否接受转接的通话。要实现咨询转,你需要调用两次接口。
- 向第三方发起咨询转呼叫
- 执行咨询转操作
请求 URL
POST {base_url}/{api_path}/call/transfer?access_token={access_token}
请求参数
参数 | 是否必填 | 类型 | 说明 |
---|---|---|---|
type | 是 | String | 呼叫转移类型。 取值范围:
|
channel_id | 是 | String | 通话中每个成员的通话通道 ID。 注: 可从 (30011) 通话状态变更 事件报告中获取通话通道
ID。
|
number | 否 | String | 转移通话的目标号码。 注: 此参数在执行盲转或发起咨询转呼叫时必填。 |
dial_permission | 否 | String |
输入操作通话转移的成员分机号码。 注:
|
attended_operate | 否 | String | 咨询转操作。 注: 此参数在执行咨询转操作时必填。 取值范围:
|
响应参数
参数 | 类型 | 说明 |
---|---|---|
errcode | Integer | 返回错误码。
注: 更多错误码和错误信息说明,请参见 错误码 & 错误信息。
|
errmsg | String | 返回信息。
|
call_id | String | 通话的唯一 ID。 |
示例 – 盲转
分机 2000 与分机 2005 在通话中,分机 2000 通过盲转被转接到分机 2008。
请求示例
POST /openapi/v1.0/call/transfer?access_token=X5rj5m5f49u3hyf0aJbqirYJPUeZoI0D HTTP/1.1
Host: yeastardocs.example.yeastarcloud.com
Content-Type: application/json
{
"type": "blind",
"channel_id": "PJSIP/2000-000000ae",
"number": "2008"
}
响应示例
HTTP/1.1 200 OK
{
"errcode": 0,
"errmsg": "SUCCESS",
"call_id": "1650029138.338"
}
示例 – 咨询转
分机 2000 与分机 2005 在通话中,分机 2005 使用咨询转的方式,将通话转移到外部号码 5503301。
请求示例步骤一、向外部号码 5503301 发起建立咨询转呼叫。
POST /openapi/v1.0/call/transfer?access_token=X5rj5m5f49u3hyf0aJbqirYJPUeZoI0D HTTP/1.1
Host: yeastardocs.example.yeastarcloud.com
Content-Type: application/json
{
"type": "attended",
"channel_id": "PJSIP/2005-000000a6",
"number": "5503301",
"dial_permission":"2005"
}
步骤二、确认执行通话转移。
POST /openapi/v1.0/call/transfer?access_token=LqTflGXS6TTTtMQBfaFQo1GybUv2d9wI HTTP/1.1 Host: yeastardocs.example.yeastarcloud.com Content-Type: application/json { "type": "attended", "channel_id": "PJSIP/2005-000000a6", "attented_operate":"complete" }
响应示例
HTTP/1.1 200 OK { "errcode": 0, "errmsg": "SUCCESS", "call_id": "1650028408.320" }