手动拨号呼叫接口
- 分机组管理 - 创建分机组
- 分机组管理 - 删除分机组
- 分机组管理 - 获取分机组列表
- 分机组管理 - 分机签出分机组
- 分机组管理 - 分机签入分机组
- 分机组管理 - 分机示闲示忙状态设置
- 分机组管理 - 获取分机组分机闲忙状态
- 分机管理 - 获取分机列表信息
- 分机管理 - 修改分机信息
- 分机管理 - 获取分机启用状态
- 分机管理 - 获取分机通话状态
- 分机管理 - 获取分机注册信息
- 语音呼叫API-获取主叫号码信息
- 语音呼叫API - 接入流程
- 语音呼叫API - 发起语音呼叫
- 语音呼叫API - 通话监听
- 语音呼叫API - 通话挂断
- 语音呼叫API - IVR语音通知接口
- 语音双向呼叫 - API接入流程
- 语音双向呼叫 - 双向呼叫接口
- 语音验证码 - 错误码信息
- 语音验证码 - 语音验证码
分机组管理 - 创建分机组
接口说明
创建分机组
请求方式
POST,form-data格式
请求参数
| 参数名 | 类型 | 是否必须 | 说明 |
|---|---|---|---|
| service | string | 是 | App.Sip_Extgroup.AddExtgroup |
| token | string | 是 | 通过授权接口获取的token |
| name | string | 是 | 分机组名 |
| status | int | 否 | 分机组状态:0 启用;1 禁用,默认 0 |
接口请求示例(PHP)
<?php
$apiUrl = 'http://127.0.0.1:8080';
$postFields = [
'service' => 'App.Sip_Extgroup.AddExtgroup',
'token' => 'ABCDEFG',
'name' => 'abcdefg',
'status' => 1
];
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $apiUrl);
curl_setopt($curl, CURLOPT_POST, 1);
curl_setopt($curl, CURLOPT_POSTFIELDS, $postFields);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
$response = curl_exec($curl);
$curlError = curl_error($curl);
curl_close($curl);
var_dump($response);
?>
返回数据结构示例
{
"ret": 200,
"data": {
"status": 0,
"desc": "分机组添加成功",
"reqtime": 1581410934,
"rsptime": 1581410934
},
"msg": ""
}
返回数据字段说明
| 字段 | 说明 |
|---|---|
分机组管理 - 删除分机组
接口说明
删除分机组
请求方式
POST,form-data格式
请求参数
| 参数名 | 类型 | 是否必须 | 说明 |
|---|---|---|---|
| service | string | 是 | App.Sip_Extgroup.DelExtgroup |
| token | string | 是 | 通过授权接口获取的token |
| name | string | 是 | 分机组名 |
接口请求示例(PHP)
<?php
$apiUrl = 'http://127.0.0.1:8080';
$postFields = [
'service' => 'App.Sip_Extgroup.DelExtgroup',
'token' => 'ABCDEFG',
'name' => 'abcdefg',
];
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $apiUrl);
curl_setopt($curl, CURLOPT_POST, 1);
curl_setopt($curl, CURLOPT_POSTFIELDS, $postFields);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
$response = curl_exec($curl);
$curlError = curl_error($curl);
curl_close($curl);
var_dump($response);
?>
返回数据结构示例
{
"ret":200,
"data":{
"status":0,
"desc":"删除成功",
"reqtime":1581409781,
"rsptime":1581409781
},
"msg":""
}
返回数据字段说明
| 字段 | 说明 |
|---|---|
分机组管理 - 获取分机组列表
接口说明
获取当前用户拥有的分机组列表
请求方式
POST,form-data格式
请求参数
| 参数名 | 类型 | 是否必须 | 说明 |
|---|---|---|---|
| service | string | 是 | App.Sip_Extgroup.GetExtgroupInfo |
| token | string | 是 | 通过授权接口获取的token |
| name | string | 否 | 分机组名,为空则获取所有 |
接口请求示例(PHP)
<?php
$apiUrl = 'http://127.0.0.1:8080';
$postFields = [
'service' => 'App.Sip_Extgroup.GetExtgroupInfo',
'token' => 'ABCDEFG',
'name' => 'abcdefg',
];
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $apiUrl);
curl_setopt($curl, CURLOPT_POST, 1);
curl_setopt($curl, CURLOPT_POSTFIELDS, $postFields);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
$response = curl_exec($curl);
$curlError = curl_error($curl);
curl_close($curl);
var_dump($response);
?>
返回数据结构示例
{
"ret": 200,
"data": {
"status": 0,
"desc": "获取成功",
"result": [
{
"id": 18,
"name": "test-group-3",
"status": 1042
}
],
"reqtime": 1581408746,
"rsptime": 1581408746
},
"msg": ""
}
返回字段说明
| 字段 | 类型 | 说明 |
|---|---|---|
| result | string | 分机列表数组 |
| —id | string | 分机组id |
| —name | string | 分机组名 |
| —status | string | 分机组状态 |
分机组管理 - 分机签出分机组
接口说明
将当前用户下的分机从分机组中签出
请求方式
POST,form-data格式
请求参数
| 参数名 | 类型 | 是否必须 | 说明 |
|---|---|---|---|
| service | string | 是 | App.Sip_Extgroup.DelExtnumber |
| token | string | 是 | 通过授权接口获取的token |
| name | string | 是 | 分机组名 |
| extnumber | string | 是 | 分机号 |
接口请求示例(PHP)
<?php
$apiUrl = 'http://127.0.0.1:8080';
$postFields = [
'service' => 'App.Sip_Extgroup.DelExtnumber',
'token' => 'ABCDEFG',
'name' => 'abcdefg',
'extnumber' => 'abcdefg'
];
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $apiUrl);
curl_setopt($curl, CURLOPT_POST, 1);
curl_setopt($curl, CURLOPT_POSTFIELDS, $postFields);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
$response = curl_exec($curl);
$curlError = curl_error($curl);
curl_close($curl);
var_dump($response);
?>
返回数据结构示例
{
"ret": 200,
"data": {
"status": 0,
"desc": "删除成功",
"reqtime": 1581409508,
"rsptime": 1581409508
},
"msg": ""
}
返回数据字段说明
| 字段 | 类型 | 说明 |
|---|---|---|
| desc | string | 返回描述 |
分机组管理 - 分机签入分机组
接口说明
将当前用户下的一个分机签入到用户拥有的一个分机组
请求方式
POST,form-data格式
请求参数
| 参数名 | 类型 | 是否必须 | 说明 |
|---|---|---|---|
| service | string | 是 | App.Sip_Extgroup.AddExtnumber |
| token | string | 是 | 通过授权接口获取的token |
| name | string | 是 | 分机组名 |
| extnumber | string | 是 | 分机号 |
接口请求示例(PHP)
<?php
$apiUrl = 'http://127.0.0.1:8080';
$postFields = [
'service' => 'App.Sip_Extgroup.AddExtnumber',
'token' => 'ABCDEFG',
'name' => 'abcdefg',
'extnumber' => 'abcdefg'
];
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $apiUrl);
curl_setopt($curl, CURLOPT_POST, 1);
curl_setopt($curl, CURLOPT_POSTFIELDS, $postFields);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
$response = curl_exec($curl);
$curlError = curl_error($curl);
curl_close($curl);
var_dump($response);
?>
返回数据结构示例
{
"ret": 200,
"data": {
"status": 0,
"desc": "添加成功",
"reqtime": 1581409508,
"rsptime": 1581409508
},
"msg": ""
}
返回数据字段说明
| 字段 | 类型 | 说明 |
|---|---|---|
| desc | string | 返回描述 |
分机组管理 - 分机示闲示忙状态设置
接口说明
设置分机的闲忙状态
请求方式
POST,form-data格式
请求参数
| 参数名 | 类型 | 是否必须 | 说明 |
|---|---|---|---|
| service | string | 是 | App.Sip_Extgroup.EditExtnumber |
| token | string | 是 | 通过授权接口获取的token |
| name | string | 是 | 分机组名 |
| extnumber | string | 是 | 分机号 |
| state | string | 是 | 分机状态 idle:示闲;busy:示忙 |
接口请求示例(PHP)
<?php
$apiUrl = 'http://127.0.0.1:8080';
$postFields = [
'service' => 'App.Sip_Extgroup.EditExtnumber',
'token' => 'ABCDEFG',
'name' => 'abcdefg',
'extnumber' => '100001',
'state' => 'idle'
];
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $apiUrl);
curl_setopt($curl, CURLOPT_POST, 1);
curl_setopt($curl, CURLOPT_POSTFIELDS, $postFields);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
$response = curl_exec($curl);
$curlError = curl_error($curl);
curl_close($curl);
var_dump($response);
?>
返回数据结构示例
{
"ret": 200,
"data": {
"status": 0,
"desc": "修改成功",
"reqtime": 1581409508,
"rsptime": 1581409508
},
"msg": ""
}
返回数据字段说明
| 字段 | 类型 | 说明 |
|---|---|---|
| desc | string | 返回描述 |
分机组管理 - 获取分机组分机闲忙状态
接口说明
获取分机组中的分机状态
请求方式
POST,form-data格式
请求参数
| 参数名 | 类型 | 是否必须 | 说明 |
|---|---|---|---|
| service | string | 是 | App.Sip_Extgroup.GetGroupExt |
| token | string | 是 | 通过授权接口获取的token |
| name | string | 否 | 分机组名,为空则获取当前用户所有分机组数据 |
| extnumber | string | 否 | 分机号,为空则获取当前用户所有分机数据 |
接口请求示例(PHP)
<?php
$apiUrl = 'http://127.0.0.1:8080';
$postFields = [
'service' => 'App.Sip_Extgroup.GetGroupExt',
'token' => 'ABCDEFG',
'name' => 'abcdefg',
'extnumber' => 'abcdefg'
];
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $apiUrl);
curl_setopt($curl, CURLOPT_POST, 1);
curl_setopt($curl, CURLOPT_POSTFIELDS, $postFields);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
$response = curl_exec($curl);
$curlError = curl_error($curl);
curl_close($curl);
var_dump($response);
?>
返回数据结构示例
{
"ret": 200,
"data": [
{
"name": "autocall-9026",
"extnumber": "9026004",
"status": "hangup",
"priority": 1,
"linkcount": 0,
"date": null,
"state": "idle"
}
],
"msg": ""
}
返回数据字段说明
| 字段 | 类型 | 说明 |
|---|---|---|
| data | string | 分机号数据数组 |
| —name | string | 分机组名 |
| —extnumber | string | 分机号 |
| —status | string | 分机状态 answer:应答;hangup:挂断 |
| —priority | string | 优先级 |
| —linkcount | string | 通话时长 |
| —date | string | 更新时间 |
| —state | string | 分机闲忙状态 idle:示闲; busy:示忙 |
分机管理 - 获取分机列表信息
接口说明
获取用户拥有的分机列表信息。
请求方式
POST,form-data格式
请求参数
| 参数名 | 类型 | 是否必须 | 说明 |
|---|---|---|---|
| service | string | 是 | App.Sip_Sipnum.GetSipnumberInfo |
| token | string | 是 | 通过授权接口获取的token |
| status | int | 是 | 分机状态。1:启用(默认)、2:禁用、3:全部 |
| extnumber | string | 否 | 分机号,为空获取所有 |
接口请求示例(PHP)
<?php
$apiUrl = 'http://127.0.0.1:8080';
$postFields = [
'service' => 'App.Sip_Sipnum.GetSipnumberInfo',
'token' => 'ABCDEFG',
'status' => 3,
'extnumber' => '100001'
];
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $apiUrl);
curl_setopt($curl, CURLOPT_POST, 1);
curl_setopt($curl, CURLOPT_POSTFIELDS, $postFields);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
$response = curl_exec($curl);
$curlError = curl_error($curl);
curl_close($curl);
var_dump($response);
?>
返回数据结构示例
{
"ret": 200,
"data": {
"status": 0,
"desc": "获取成功",
"result": [
{
"extnumber": "100001",
"password": "100001",
"status": 1016,
"register": "nreg"
}
],
"reqtime": 1581506241,
"rsptime": 1581506241
},
"msg": ""
}
返回参数说明
| 参数名 | 类型 | 说明 |
|---|---|---|
| result | array | 分机列表数组 |
| —extnumber | string | 分机号 |
| —password | string | 分机号登陆密码 |
| —status | int | 分机号状态 |
| —register | string | 分机号注册状态。nreg:未注册;reg:已注册 |
分机管理 - 修改分机信息
接口说明
修改用户分机信息。
请求方式
POST,form-data格式
请求参数
| 参数名 | 类型 | 是否必须 | 说明 |
|---|---|---|---|
| service | string | 是 | App.Sip_Sipnum.EditSipnumber |
| token | string | 是 | 通过授权接口获取的token |
| extnumber | string | 是 | 分机号 |
| password | string | 否 | 分机密码 |
| username | string | 否 | 分机用户名 |
| status | int | 否 | 状态 1:启用、2:禁用 |
| manualdial | int | 否 | 是否直拨 1:启用、2:禁用 |
| record | int | 否 | 是否录音 1:启用、2:禁用 |
接口请求示例(PHP)
<?php
$apiUrl = 'http://127.0.0.1:8080';
$postFields = [
'service' => 'App.Sip_Sipnum.GetSipnumberInfo',
'token' => 'ABCDEFG',
'extnumber' => '100001',
'password' => '100001',
'username' => '100001',
'status' => 1,
'manualdial' => 1,
'record' => 1,
];
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $apiUrl);
curl_setopt($curl, CURLOPT_POST, 1);
curl_setopt($curl, CURLOPT_POSTFIELDS, $postFields);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
$response = curl_exec($curl);
$curlError = curl_error($curl);
curl_close($curl);
var_dump($response);
?>
返回数据结构示例
{
"ret": 200,
"data": {
"status": 0,
"desc": "修改成功",
"reqtime": 1581506241,
"rsptime": 1581506241
},
"msg": ""
}
返回参数说明
| 参数名 | 类型 | 说明 |
|---|---|---|
| status | int | 0修改成功,1修改失败 |
分机管理 - 获取分机启用状态
接口说明
获取用户拥有的分机列表信息。
请求方式
POST,form-data格式
请求参数
| 参数名 | 类型 | 是否必须 | 说明 |
|---|---|---|---|
| service | string | 是 | App.Sip_Status.GetSipValidStatus |
| token | string | 是 | 通过授权接口获取的token |
| extnumber | string | 是 | 分机号,多个分机号用英文逗号隔开 |
接口请求示例(PHP)
<?php
$apiUrl = 'http://127.0.0.1:8080';
$postFields = [
'service' => 'App.Sip_Status.GetSipValidStatus',
'token' => 'ABCDEFG',
'extnumber' => '100001'
];
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $apiUrl);
curl_setopt($curl, CURLOPT_POST, 1);
curl_setopt($curl, CURLOPT_POSTFIELDS, $postFields);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
$response = curl_exec($curl);
$curlError = curl_error($curl);
curl_close($curl);
var_dump($response);
?>
返回数据结构示例
{
"ret": 200,
"data": {
"status": 0,
"desc": "获取成功",
"result": [
{
"extnumber": "90170002",
"code": 1016
}
],
"reqtime": 1581508401,
"rsptime": 1581508401
},
"msg": ""
}
返回参数说明
| 参数名 | 类型 | 说明 |
|---|---|---|
| result | array | 分机数据数组 |
| —extnumber | string | 分机号 |
| —code | int | 分机号状态 |
分机管理 - 获取分机通话状态
接口说明
获取用户拥有的分机列表信息。
请求方式
POST,form-data格式
请求参数
| 参数名 | 类型 | 是否必须 | 说明 |
|---|---|---|---|
| service | string | 是 | App.Sip_Status.GetSipCallStatus |
| token | string | 是 | 通过授权接口获取的token |
| extnumber | string | 是 | 分机号,多个分机号用英文逗号隔开 |
接口请求示例(PHP)
<?php
$apiUrl = 'http://127.0.0.1:8080';
$postFields = [
'service' => 'App.Sip_Status.GetSipCallStatus',
'token' => 'ABCDEFG',
'extnumber' => '100001'
];
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $apiUrl);
curl_setopt($curl, CURLOPT_POST, 1);
curl_setopt($curl, CURLOPT_POSTFIELDS, $postFields);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
$response = curl_exec($curl);
$curlError = curl_error($curl);
curl_close($curl);
var_dump($response);
?>
返回数据结构示例
{
"ret": 200,
"data": {
"status": 0,
"desc": "获取成功",
"result": [
{
"extnumber": "90170002",
"status": 1014,
"caller": null,
"callee": null,
"disnumber": null,
"direction": null,
"channel": null,
"idleduration": null,
"callduration": null
}
],
"reqtime": 1581506689,
"rsptime": 1581506689
},
"msg": ""
}
返回参数说明
| 参数名 | 类型 | 说明 |
|---|---|---|
| result | array | 分机数据数组 |
| —extnumber | string | 分机号 |
| —status | int | 分机号状态 |
| —caller | string | 呼叫人 |
| —callee | string | 被叫人 |
| —disnumber | string | 显示号码 |
| —direction | string | 呼叫方向 |
| —channel | string | 渠道 |
| —idleduration | int | 空闲时长 |
| —callduration | int | 通话时长 |
分机管理 - 获取分机注册信息
接口说明
获取用户拥有的分机列表信息。
请求方式
POST,form-data格式
请求参数
| 参数名 | 类型 | 是否必须 | 说明 |
|---|---|---|---|
| service | string | 是 | App.Sip_Status.GetSipRegisterStatus |
| token | string | 是 | 通过授权接口获取的token |
| extnumber | string | 是 | 分机号,多个分机号用英文逗号隔开 |
接口请求示例(PHP)
<?php
$apiUrl = 'http://127.0.0.1:8080';
$postFields = [
'service' => 'App.Sip_Status.GetSipRegisterStatus',
'token' => 'ABCDEFG',
'extnumber' => '100001'
];
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $apiUrl);
curl_setopt($curl, CURLOPT_POST, 1);
curl_setopt($curl, CURLOPT_POSTFIELDS, $postFields);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
$response = curl_exec($curl);
$curlError = curl_error($curl);
curl_close($curl);
var_dump($response);
?>
返回数据结构示例
{
"ret": 200,
"data": {
"status": 0,
"desc": "获取成功",
"result": [
{
"extnumber": "90170002",
"code": 1014,
"clientip": null,
"serverip": null
}
],
"reqtime": 1581507361,
"rsptime": 1581507361
},
"msg": ""
}
返回参数说明
| 参数名 | 类型 | 说明 |
|---|---|---|
| result | array | 分机数据数组 |
| —extnumber | string | 分机号 |
| —code | int | 分机号状态 |
| —clientip | string | 分机注册客户端IP |
| —serverip | string | 分机注册服务端Ip |
语音呼叫API-获取主叫号码信息
接口说明
获取用户拥有的主叫号码列表信息。
请求参数
| 参数名 | 类型 | 是否必须 | 说明 |
|---|---|---|---|
| service | string | 是 | App.Sip_Disnum.getDisnumberInfo |
| token | string | 是 | 通过授权接口获取的token |
| status | int | 是 | 1:启用(默认)、2:禁用、3:全部 |
| autocall | int | 是 | 是否预测外呼号码:1:不限(默认)、2:是、3:否 |
| disnumber | string | 否 | 主叫号码,多个主叫号码用英文逗号隔开,不传时获取所有 |
| areacode | string | 否 | 号码区号 |
接口请求示例(PHP)
<?php
$apiUrl = 'http://127.0.0.1:8080';
$postFields = [
'service' => 'App.Sip_Disnum.getDisnumberInfo',
'token' => 'ABCDEFG',
'status' => 1,
'autocall' => 1,
'disnumber' => '0755111,0755222',
'areacode' => '0755'
];
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $apiUrl);
curl_setopt($curl, CURLOPT_POST, 1);
curl_setopt($curl, CURLOPT_POSTFIELDS, $postFields);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
$response = curl_exec($curl);
$curlError = curl_error($curl);
curl_close($curl);
var_dump($response);
?>
返回数据结构示例
{
"ret": 200,
"data": {
"status": 0,
"desc": "获取成功",
"result": [
{
"disnumber": "0755111",
"areacode": "0755",
"disnumbertype": "tel",
"concurrent": 0,
"status":1017,
"autocall": "no"
}
],
"reqtime": 1581506241,
"rsptime": 1581506241
},
"msg": ""
}
返回参数说明
| 参数名 | 类型 | 说明 |
|---|---|---|
| result | array | 分机列表数组 |
| —disnumber | string | 主叫号码 |
| —areacode | string | 区号 |
| —disnumbertype | string | 号码类型 tel:固话 mob:手机 |
| —concurrent | int | 号码并发, 0 表示不限制 |
| —status | int | 号码状态 |
| —autocall | string | 是否预测外呼号码 yes:是 no:否 |
语音呼叫API - 接入流程
语音呼叫API接入流程

语音呼叫API - 发起语音呼叫
接口说明
对某个号码直接发起呼叫,多数适用于网页上点击“呼叫”后调用接口。
请求方式
POST,form-data格式
请求参数
| 参数名 | 类型 | 是否必须 | 说明 |
|---|---|---|---|
| service | string | 是 | App.Sip_Call.MakeCall |
| token | string | 是 | 通过授权接口获取的token |
| extnumber | string | 是 | 分机号 |
| destnumber | string | 是 | 目标号码 |
| disnumber | string | 否 | 主叫号码(用户手机上显示的来电号码),必须使用系统配置的主叫号码,否则呼叫失败,留空则随机取一个主叫号码 |
| userid | string | 否 | 自定义参数(员工id) |
| memberid | string | 否 | 自定义参数(会员id) |
| customuuid | string | 否 | 自定义参数(客户id) |
| ext | string | 否 | 自定义参数(扩展参数) |
接口请求示例(PHP)
<?php
$apiUrl = 'http://127.0.0.1:8080';
$postFields = [
'service' => 'App.Sip_Call.MakeCall',
'token' => 'ABCDEFG',
'extnumber' => 'abcdefg',
'destnumber' => 'abcdefg',
'disnumber' => 'abcdefg',
'userid' => 'abcdefg',
'memberid' => 'abcdefg',
'customuuid' => 'abcdefg',
'ext' => '{"aa":11}',
];
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $apiUrl);
curl_setopt($curl, CURLOPT_POST, 1);
curl_setopt($curl, CURLOPT_POSTFIELDS, $postFields);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
$response = curl_exec($curl);
$curlError = curl_error($curl);
curl_close($curl);
var_dump($response);
?>
返回数据结构示例
{
"ret": 200,
"data": {
"status": 0,
"desc": "呼叫命令发送成功",
"reqtime": 1581389402,
"rsptime": 1581389402
},
"msg": ""
}
语音呼叫API - 通话监听
接口说明
指定分机监听其它正在通话的分机。
请求方式
POST,form-data格式
请求参数
| 参数名 | 类型 | 是否必须 | 说明 |
|---|---|---|---|
| service | string | 是 | App.Sip_Call.SpyCall |
| token | string | 是 | 通过授权接口获取的token |
| monitortype | string | 是 | 监听方式,1:监听分机,2:监听切换耳语,3:耳语恢复监听 |
| extnumber | string | 是 | 监听者坐席 |
| destnumber | string | 是 | 被监听者坐席 |
接口请求示例(PHP)
<?php
$apiUrl = 'http://127.0.0.1:8080';
$postFields = [
'service' => 'App.Sip_Call.MakeCall',
'token' => 'ABCDEFG',
'monitortype' => '1',
'extnumber' => '70001',
'destnumber' => '7008',
];
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $apiUrl);
curl_setopt($curl, CURLOPT_POST, 1);
curl_setopt($curl, CURLOPT_POSTFIELDS, $postFields);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
$response = curl_exec($curl);
$curlError = curl_error($curl);
curl_close($curl);
var_dump($response);
?>
返回数据结构示例
{
"ret": 200,
"data": {
"status": 0,
"desc": "请求成功",
"reqtime": 1581389402,
"rsptime": 1581389402
},
"msg": ""
}
语音呼叫API - 通话挂断
接口说明
挂断指定通话分机。
请求方式
POST,form-data格式
请求参数
| 参数名 | 类型 | 是否必须 | 说明 |
|---|---|---|---|
| service | string | 是 | App.Sip_Call.HangupCall |
| token | string | 是 | 通过授权接口获取的token |
| extnumber | string | 是 | 分机号 |
接口请求示例(PHP)
<?php
$apiUrl = 'http://127.0.0.1:8080';
$postFields = [
'service' => 'App.Sip_Call.HangupCall',
'token' => 'ABCDEFG',
'extnumber' => '70001',
];
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $apiUrl);
curl_setopt($curl, CURLOPT_POST, 1);
curl_setopt($curl, CURLOPT_POSTFIELDS, $postFields);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
$response = curl_exec($curl);
$curlError = curl_error($curl);
curl_close($curl);
var_dump($response);
?>
返回数据结构示例
{
"ret": 200,
"data": {
"status": 0,
"desc": "请求成功",
"reqtime": 1581389402,
"rsptime": 1581389402
},
"msg": ""
}
语音呼叫API - IVR语音通知接口
接口说明
实行对某目标号码的呼叫发起,通话被接通后,自动播放语音内容,播放完之后会根据用户的按键或不按键,可将通话转入到分机组中,系统会根据分机状态,及后台配置的分机状态回调地址发送对应的回调数据。
请求方式
POST,form-data格式
请求参数
| 参数名 | 类型 | 是否必须 | 说明 |
|---|---|---|---|
| service | string | 是 | App.Sip_Call.PlayVoice |
| token | string | 是 | 通过授权接口获取的token |
| destnumber | string | 是 | 目标号码 |
| voicetype | int | 是 | 播放的语音文件类型。1:离线语音文件、2:在线语音(url) |
| voicefile | string | 是 | 离线音频文件名或在线语音url地址 |
| chengshudu | string | 是 | 1 |
| userid | string | 是 | 用户转入坐席的按键和转入坐席的分机组名示例:”1@extGroup-1” |
| disnumber | string | 否 | 主叫号码,留空则随机取一个主叫号码 |
| customuuid | string | 否 | 客户自定义数据,在通话结束之后的回调数据中原样返回 |
接口请求示例(PHP)
<?php
$apiUrl = 'http://127.0.0.1:8080';
$postFields = [
'service' => 'App.Sip_Call.PlayVoice',
'token' => 'ABCDEFG',
'voicetype' => 2,
'destnumber' => '13333333333',
'voicefile' => 'wwww.baidu.com/test.mp3',
'chengshudu' => 1,
'userid' => '1@extGroup-1',
'disnumber' => '13333333333',
'customuuid' => '13333333333'
];
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $apiUrl);
curl_setopt($curl, CURLOPT_POST, 1);
curl_setopt($curl, CURLOPT_POSTFIELDS, $postFields);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
$response = curl_exec($curl);
$curlError = curl_error($curl);
curl_close($curl);
var_dump($response);
?>
返回数据结构示例
{
"ret": 200,
"data": {
"status": 0,
"desc": "播放命令发送成功",
"reqtime": 1581307099,
"rsptime": 1581307099
},
"msg": ""
}
分机状态回调数据示例
{
"buuid":"f4ffad68-4a0f-11ea-812d-fbc8753285b6",
"callee":"85322888486",
"caller":"20280003",
"companycode":"2028",
"direction":"callout",
"disnumber":"2120280001",
"extnumber":"20280003",
"isbleg":"true",
"method":"2",
"starttime":"1581124302",
"status":"ring",
"uuid":"f4ee8e7a-4a0f-11ea-8126-fbc8753285b6",
"ip":"149.129.249.47"
}
回调字段说明
| 字段 | 类型 | 说明 |
|---|---|---|
| buuid | string | B侧唯一id |
| callee | string | 被叫号码(用户号码) |
| caller | string | 呼叫号码(分机号) |
| companycode | string | 公司码 |
| direction | string | 呼叫方向 callin 呼入、callout 呼出 |
| disnumber | string | 显示号码 |
| extnumber | string | 分机号 |
| isbleg | string | 是否B侧 |
| method | string | 呼叫方式、1分机、2手动、3接口、4双呼、5预测 |
| starttime | string | 呼叫开始时间 |
| status | string | 分机状态 ring 响铃 answer 接听 hangup 挂断 |
| uuid | string | 通话唯一id |
| ip | string | ip |
接口返回说明
该接口请求之后会向目标号码呼叫,目标号码接通之后会直接播放语音文件中的内容。呼叫结果会在通话结束之后,以回调方式通知到后台配置的通话详单回调地址。
回调数据结构示例
{
"answertime":"2020-02-09 12:32:51",
"hangupcause":10001,
"duration":13,
"id":220739,
"extnumber":"",
"uuid":"3418035c-4af5-11ea-afb2-fbc8753285b6",
"downloadip":"149.129.249.47",
"customuuid":"110001168",
"chengshudu":"0",
"callmethod":6,
"recordfilename":"1111.mp3",
"companycode":9017,
"memberid":"0",
"hangupdirection":10040,
"billsec":10,
"endtime":"2020-02-09 12:33:01",
"starttime":"2020-02-09 12:32:38",
"type":"callout",
"disnumber":"2190170001",
"crmid":"0",
"userkey":"",
"destnumber":"85781218893"
}
回调数据字段说明
| 字段 | 类型 | 说明 |
|---|---|---|
| answertime | string | 接听时间 |
| hangupcause | string | 挂断原因 |
| duration | string | 等待接听时长 |
| id | string | 话单id |
| extnumber | string | 分机号 |
| uuid | string | 通话唯一id |
| downloadip | string | 下载ip |
| customuuid | string | 自定义参数 |
| chengshudu | string | 自定义参数 |
| callmethod | string | 呼叫方式 |
| recordfilename | string | 通话文件名 |
| companycode | string | 公司码 |
| memberid | string | 自定义参数 |
| hangupdirection | string | 挂断方向 |
| billsec | string | 通话时长 |
| endtime | string | 挂机时间 |
| starttime | string | 呼叫时间 |
| type | string | 呼叫方式 |
| disnumber | string | 主叫号码 |
| crmid | string | 坐席id |
| userkey | string | 用户按键 |
| destnumber | string | 目标号码 |
语音双向呼叫 - API接入流程
双向呼叫API接入流程

语音双向呼叫 - 双向呼叫接口
接口说明:
双向呼叫主要用于先呼叫公司客服号码,接通后再对被叫客户号码进行呼叫。
请求方式
POST,form-data格式
请求参数
| 参数名 | 类型 | 是否必须 | 说明 |
|---|---|---|---|
| service | string | 必须 | App.Sip_Call.DoubleCall |
| token | 字符串 | 必须 | Token,最小:32;最大32 |
| extnumber | 字符串 | 必须 | 分机号码 |
| anumber | 字符串 | 必须 | 员工手机号码 |
| bnumber | 字符串 | 必须 | 被叫客户号码 |
| disnumber | 字符串 | 可选 | 显示的主叫号码,留空随机取一个主叫 |
| userid | 字符串 | 可选 | 自定义数据(员工ID) |
| memberid | 字符串 | 可选 | 自定义数据(会员ID) |
| chengshudu | 字符串 | 可选 | 自定义数据(成熟度) |
| customuuid | 字符串 | 可选 | 自定义数据(客户ID) |
接口请求示例(PHP)
<?php
$apiUrl = 'http://127.0.0.1:8080';
$postFields = [
'service' => 'App.Sip_Call.DoubleCall',
'token' => 'ABCDEFG',
'extnumber' => 'abcdefg',
'anumber' => 'abcdefg',
'bnumber' => 'abcdefg',
'disnumber' => 'abcdefg',
'userid' => 'abcdefg',
'memberid' => 'abcdefg',
'chengshudu' => 'abcdefg',
'customuuid' => 'abcdefg'
];
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $apiUrl);
curl_setopt($curl, CURLOPT_POST, 1);
curl_setopt($curl, CURLOPT_POSTFIELDS, $postFields);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
$response = curl_exec($curl);
$curlError = curl_error($curl);
curl_close($curl);
var_dump($response);
?>
返回数据结构示例
{
"ret": 200,
"data": {
"status": 0,
"desc": "双呼命令发送成功",
"reqtime": 1584953473,
"rsptime": 1584953473
},
"msg": ""
}
语音验证码 - 错误码信息
错误码信息
简要描述:
- 错误码信息
| 错误码 | 说明 |
|---|---|
| 1000 | 系统错误 |
| 1001 | 参数错误 |
语音验证码 - 语音验证码
请求URL
http://dashboardapi.infin8linx.com/voiceCode
请求方式
- POST
请求参数
| 参数名 | 必选 | 类型 | 说明 |
|---|---|---|---|
| appid | 是 | string | 鉴权 appid |
| accesskey | 是 | string | 鉴权 accesskey |
| code | 是 | string | 验证码 4位有效数字 |
| phone | 是 | string | 接收验证码的手机号 印尼及墨西哥手机号码不需要加国别号码,例如完整号码为:0062 8123456789,则直接以 8123456789 请求即可。 |
| nationCode | 是 | string | 语言版本 en:英语 id:印尼 sp:西班牙语 |
| customuuid | 否 | string | 用户自定义参数 |
返回示例
{
"code": 1,
"msg": "请求成功",
"data": {
"customuuid":"123123"
}
}
返回参数说明
| 参数名 | 类型 | 说明 |
|---|---|---|
| code | int | 返回码 1 成功 其他为失败 |
| msg | string | 返回信息 |
| data | object | 返回数据 |
| —customuuid | string | 任务唯一id |