REST API文档

AI 管理

AI

查看 AI 配置

  • 请求 URL/api/ais
  • 请求方式GET
  • Body 信息:无
  • 返回值
[
  {
    "context": "default",
    "dial_set_cid_name": "true",
    "dial": "true",
    "dial_full_originate": "true",
    "dial_set_cid_number": "true",
    "created_at": "2022-05-13 15:08:36",
    "default_profile": "default",
    "deleted_at": "",
    "id": 1,
    "dial_set_context": "true",
    "set_vars": "true",
    "updated_at": "2022-05-13 15:08:36",
    "description": "",
    "extended_data": "false",
    "set_params": "true",
    "conference_set_profile": "true",
    "name": "default",
    "dial_set_dialplan": "true",
    "dialplan": "XML",
    "conference": "true",
    "get_vars": "true",
    "expand_vars_in_tag_body": "true"
  }
]
  • curl 示例
curl -H "X-XTRA-AUTH-ID: 62dd0173-4916-4b1c-b958-546e4d7c91fe" 192.168.1.100:8081/api/ais

查看 AI 的配置参数

  • 请求 URL/api/ais/$id
  • 请求方式GET
  • Body 信息:无
  • 返回值
{
  "dial_set_context": "true",
  "deleted_at": "",
  "dial_full_originate": "true",
  "conference_set_profile": "true",
  "updated_at": "2022-05-13 15:08:36",
  "name": "default",
  "extended_data": "false",
  "context": "default",
  "description": "",
  "set_vars": "true",
  "conference": "true",
  "dial_set_dialplan": "true",
  "default_profile": "default",
  "get_vars": "true",
  "dial": "true",
  "set_params": "true",
  "params": [
    {
      "k": "debug",
      "deleted_at": "",
      "updated_at": "2022-05-13 15:08:37",
      "disabled": 0,
      "ref_id": 1,
      "id": 353,
      "v": "true",
      "realm": "AI",
      "created_at": "2022-05-13 15:08:37"
    },
    {
      "k": "post-event-url",
      "deleted_at": "",
      "updated_at": "2022-05-13 15:08:37",
      "disabled": 0,
      "ref_id": 1,
      "id": 364,
      "v": "http://192.168.1.9:8080/freeswitch/event",
      "realm": "AI",
      "created_at": "2022-05-13 15:08:37"
    }
  ],
  "dialplan": "XML",
  "dial_set_cid_number": "true",
  "dial_set_cid_name": "true",
  "id": 1,
  "ai_params": [
    {
      "k": "gateway-url",
      "deleted_at": "",
      "updated_at": "2022-05-13 15:08:37",
      "disabled": 0,
      "ref_id": 1,
      "id": 365,
      "v": "http://www.freeswitch.org/api/index.cgi",
      "realm": "AI-PARAMS",
      "created_at": "2022-05-13 15:08:37"
    }
  ],
  "created_at": "2022-05-13 15:08:36",
  "expand_vars_in_tag_body": "true"
}
  • curl 示例
curl -H "X-XTRA-AUTH-ID: 62dd0173-4916-4b1c-b958-546e4d7c91fe" 192.168.1.100:8081/api/ais/1

查看 AI 配置的 app 参数

  • 请求 URL/api/ais/$id/apps
  • 请求方式GET
  • Body 信息:无
  • 返回值
[
	{
		"deleted_at": "",
		"id": 366,
		"disabled": 0,
		"created_at": "2022-05-13 15:08:37",
		"v": "",
		"k": "info",
		"updated_at": "2022-05-13 15:08:37",
		"ref_id": 1,
		"realm": "AI-APPS"
	},
	{
		"deleted_at": "",
		"id": 367,
		"disabled": 0,
		"created_at": "2022-05-13 15:08:37",
		"v": "",
		"k": "hangup",
		"updated_at": "2022-05-13 15:08:37",
		"ref_id": 1,
		"realm": "AI-APPS"
	}
	...
]
  • curl 示例
curl -H "X-XTRA-AUTH-ID: 62dd0173-4916-4b1c-b958-546e4d7c91fe" 192.168.1.100:8081/api/ais/1/apps

创建 AI 配置

  • 请求 URL/api/ais
  • 请求方式POST
  • Body 信息
参数说明
name配置名称
template默认模板:"default";配置 ID:使用已存在的其他配置作为默认模板
示例1
{
    "name": "test",
    "template": "default"
}

示例2
{
    "name": "copy_1",
    "template": "1"
}
  • 返回值:返回新创建的配置 ID
{
  "data": 3,
  "code": 200,
  "message": "success"
}
  • curl 示例
curl -XPOST -H "X-XTRA-AUTH-ID: 62dd0173-4916-4b1c-b958-546e4d7c91fe" -d '{"name": "test","template": "default"}' 192.168.1.100:8081/api/ais

修改 AI 配置

  • 请求 URL/api/ais/$id
  • 请求方式PUT
  • Body 信息
参数说明
name配置名称
conference会议
context呼叫源
default_profile会议默认配置
description描述
dial拨号
dial_full_originatedial_full_originate
dial_set_cid_number拨号设置主叫号码
dial_set_cid_name拨号设置主叫名称
dial_set_context拨号设置呼叫源
dial_set_dialplan拨号设置拨号规则
dialplan拨号规则
expand_vars_in_tag_body展开标签体中的变量
extended_data扩展数据
get_vars获取变量
set_vars设置变量
set_params设置参数

:以上配置参数均为可选

{
  "conference": "true",
  "context": "default",
  "default_profile": "default",
  "description": "",
  "dial": "true",
  "dial_full_originate": "true",
  "dial_set_cid_name": "true",
  "dial_set_cid_number": "true",
  "dial_set_context": "true",
  "dial_set_dialplan": "true",
  "dialplan": "test",
  "expand_vars_in_tag_body": "true",
  "extended_data": "false",
  "get_vars": "true",
  "id": "3",
  "name": "default",
  "set_params": "true",
  "set_vars": "true"
}
  • 返回值
{
  "message": "success",
  "code": 200,
  "data": "3"
}
  • curl 示例:
curl -XPUT -H "X-XTRA-AUTH-ID: 62dd0173-4916-4b1c-b958-546e4d7c91fe" \
-H "Content-Type: application/json" \
-d '{"name":"test","description": "test"}' \
"http://192.168.1.100:8081/api/ais/3"

在 AI 配置中新增 app 参数

  • 请求 URL/api/ais/$id/apps
  • 请求方式POST
  • Body 信息
参数说明
appapp 名称
{
  "app": "down1"
}
  • 返回值
{
  "message": "success",
  "data": "1524",
  "code": 200
}
  • curl 示例
curl -XPOST -H "X-XTRA-AUTH-ID: 62dd0173-4916-4b1c-b958-546e4d7c91fe" -d '{"app": "down1"}' 192.168.1.100:8081/api/ais

删除 AI 配置中某个 app 参数

  • 请求 URL/api/ais/$id/apps/$apps_id
  • 请求方式DELETE
  • Body 信息:无
  • 返回值
{
  "message": "success",
  "code": 200,
  "data": "1524"
}
curl -H "X-XTRA-AUTH-ID: 62dd0173-4916-4b1c-b958-546e4d7c91fe" -XDELETE https://192.168.3.222/api/ais/3/apps/1524

修改 AI 配置的 settings 参数

  • 请求 URL/api/ais/$id/settings/$param_id
  • 请求方式PUT
  • Body 信息
参数说明
ksettings 参数名称
vsettings 参数值
{
  "k": "default-asr-engine",
  "v": "baidu"
}
  • 返回值
{
  "code": 200,
  "data": "1491",
  "message": "success"
}
  • curl 示例:
curl -XPUT -H "X-XTRA-AUTH-ID: 62dd0173-4916-4b1c-b958-546e4d7c91fe" \
-H "Content-Type: application/json" \
-d '{"k": "default-asr-engine","v": "baidu"}' \
"http://192.168.1.100:8081/api/ais/3/settings/1491"

创建 AI 配置的 Profiles 参数

  • 请求 URL/api/ais/$id/profiles
  • 请求方式POST
  • Body 信息
参数说明
kProfiles 参数名称
vProfiles 参数值
{
  "k": "test1",
  "v": "test"
}
  • 返回值
{
  "code": 200,
  "data": 1526,
  "message": "success"
}
  • curl 示例
curl -XPOST -H "X-XTRA-AUTH-ID: 62dd0173-4916-4b1c-b958-546e4d7c91fe" -d '{"app": "down1"}' 192.168.1.100:8081/api/ais/3/profiles

修改 AI 配置的 Profiles 参数

  • 请求 URL/api/ais/$id/ai_params/$param_id
  • 请求方式PUT
  • Body 信息
参数说明
kProfiles 参数名称
vProfiles 参数值
{
  "k": "gateway-url",
  "v": "http://www.freeswitch.org/api/index.cgi"
}
  • 返回值
{
  "code": 200,
  "data": "1526",
  "message": "success"
}
  • curl 示例
curl -XPUT -H "X-XTRA-AUTH-ID: 62dd0173-4916-4b1c-b958-546e4d7c91fe" -d '{"k": "gateway-url","v": "http://www.freeswitch.org/api/index.cgi"}' 192.168.1.100:8081/api/ais/3/ai_params/1526

启用/禁用 Profiles 的配置

  • 请求 URL/api/ais/$id/ai_params/$param_id
  • 请求方式PUT
  • Body 信息
参数说明
action变更启用状态,固定为"toggle"
{
  "action": "toggle"
}
  • 返回值
{
  "code": 200,
  "data": "1526",
  "message": "success"
}
  • curl 示例
curl -XPUT -H "X-XTRA-AUTH-ID: 62dd0173-4916-4b1c-b958-546e4d7c91fe" -d '{"action": "toggle"}' 192.168.1.100:8081/api/ais/3/ai_params/1526

删除 AI 配置的 Profiles 参数

  • 请求 URL/api/ais/$id/profiles/$profiles_id
  • 请求方式DELETE
  • Body 信息:无
  • 返回值
{
  "data": "1526",
  "message": "success",
  "code": 200
}
  • curl 示例
curl -0 -H "X-XTRA-AUTH-ID: 62dd0173-4916-4b1c-b958-546e4d7c91fe" -XDELETE 192.168.1.100:8081/api/ais/3/profiles/1526

创建 AI 配置 profile 中的 Bindings 参数

  • 请求 URL/api/ais/$id/bindings
  • 请求方式POST
  • Body 信息
参数说明
event_nameBindings 参数名称
subclass_nameBindings 参数值
{
  "event_name": "test01",
  "subclass_name": "ALL"
}
  • 返回值
{
  "code": 200,
  "data": "1550",
  "message": "success"
}
  • curl 示例
curl -XPOST -H "X-XTRA-AUTH-ID: 62dd0173-4916-4b1c-b958-546e4d7c91fe" -d '{"event_name": "test01","subclass_name": "ALL"}' 192.168.1.100:8081/api/ais/3/bindings

修改 AI 配置 profile 中的 Bindings 参数

  • 请求 URL/api/ais/$id/bindings/$param_id
  • 请求方式PUT
  • Body 信息
参数说明
kBindings 参数名称
vBindings 参数值
{
  "k": "CUSTON1",
  "v": "ALL"
}
  • 返回值
{
  "code": 200,
  "message": "success",
  "data": "1550"
}
  • curl 示例
curl -XPUT -H "X-XTRA-AUTH-ID: 62dd0173-4916-4b1c-b958-546e4d7c91fe" -d '{"k": "CUSTON1","v": "ALL"}' 192.168.1.100:8081/api/ais/3/bindings/1550

启用/禁用 AI 配置 profile 中的 Bindings 参数

  • 请求 URL/api/ais/$id/bindings/$param_id
  • 请求方式PUT
  • Body 信息
参数说明
action变更启用状态,固定为"toggle"
{
  "action": "toggle"
}
  • 返回值
{
  "message": "success",
  "data": "1550",
  "code": 200
}
  • curl 示例
curl -XPUT -H "X-XTRA-AUTH-ID: 62dd0173-4916-4b1c-b958-546e4d7c91fe" -d '{"action": "toggle"}' 192.168.1.100:8081/api/ais/3/bindings/1550

删除 AI 配置 profile 中的 Bindings 参数

  • 请求 URL/api/ais/$id/bindings/$param_id
  • 请求方式DELETE
  • Body 信息:无
  • 返回值
{
  "code": 200,
  "data": "1550",
  "message": "success"
}
  • curl 示例
curl -0 -H "X-XTRA-AUTH-ID: 62dd0173-4916-4b1c-b958-546e4d7c91fe" -XDELETE 192.168.1.100:8081/api/ais/3/bindings/1550

创建 AI 配置 profile 中的 Asr 参数

  • 请求 URL/api/ais/$id/asr
  • 请求方式POST
  • Body 信息
参数说明
nameAsr 参数名称
valueAsr 参数数值
realmAsr 参数域
{
  "name": "test",
  "value": "test",
  "realm": "AI-ASR"
}
  • 返回值
{
  "code": 200,
  "message": "success",
  "data": 4059
}
  • curl 示例
curl -XPOST -H "X-XTRA-AUTH-ID: 62dd0173-4916-4b1c-b958-546e4d7c91fe" -d '{"name": "test","value": "test","realm": "AI-ASR"}' 192.168.1.100:8081/api/ais/3/asr

修改 AI 配置 profile 中的 Asr 参数

  • 请求 URL/api/ais/$id/asr/$param_id
  • 请求方式PUT
  • Body 信息
参数说明
kAsr 参数名称
vAsr 参数值
{
  "k": "test",
  "v": "700"
}
  • 返回值
{
  "data": "4059",
  "code": 200,
  "message": "success"
}
  • curl 示例
curl -XPUT -H "X-XTRA-AUTH-ID: 62dd0173-4916-4b1c-b958-546e4d7c91fe" -d '{"k": "test","v": "700"}' 192.168.1.100:8081/api/ais/3/asr/4059

启用/禁用 AI 配置 profile 中的 Asr 参数

  • 请求 URL/api/ais/$id/asr/$param_id
  • 请求方式PUT
  • Body 信息
参数说明
action变更启用状态,固定为"toggle"
{
  "action": "toggle"
}
  • 返回值
{
  "data": "4059",
  "message": "success",
  "code": 200
}
  • curl 示例
curl -XPUT -H "X-XTRA-AUTH-ID: 62dd0173-4916-4b1c-b958-546e4d7c91fe" -d '{"action": "toggle"}' 192.168.1.100:8081/api/ais/3/asr/4059

删除 AI 配置 profile 中的 Asr 参数

  • 请求 URL/api/ais/$id/asr/$param_id
  • 请求方式DELETE
  • Body 信息:无
  • 返回值
{
  "message": "success",
  "data": "4059",
  "code": 200
}
  • curl 示例
curl -0 -H "X-XTRA-AUTH-ID: 62dd0173-4916-4b1c-b958-546e4d7c91fe" -XDELETE 192.168.1.100:8081/api/ais/3/asr/4059

创建 AI 配置 profile 中的 Asr-Models

  • 请求 URL/api/ais/$id/asr
  • 请求方式POST
  • Body 信息
参数说明
nameAsr 参数名称
valueAsr 参数数值
realmAsr-Models 参数域
{
  "name": "test",
  "realm": "AI-ASR-MODELS",
  "value": "xxxx"
}
  • 返回值
{
  "code": 200,
  "data": 4065,
  "message": "success"
}
  • curl 示例
curl -XPOST -H "X-XTRA-AUTH-ID: 62dd0173-4916-4b1c-b958-546e4d7c91fe" -d '{"name": "test","value": "xxxx","realm": "AI-ASR-MODELS"}' 192.168.1.100:8081/api/ais/3/asr

修改 AI 配置 profile 中的 Asr-Models 参数

  • 请求 URL/api/ais/$id/asr_models/$param_id
  • 请求方式PUT
  • Body 信息
参数说明
kAsr-Models 参数名称
vAsr-Models 参数值
{
  "k": "names",
  "v": "values"
}
  • 返回值
{
  "data": "4065",
  "message": "success",
  "code": 200
}
  • curl 示例
curl -XPUT -H "X-XTRA-AUTH-ID: 62dd0173-4916-4b1c-b958-546e4d7c91fe" -d '{"k": "names","v": "values"}' 192.168.1.100:8081/api/ais/3/asr_models/4065

启用/禁用 AI 配置 profile 中的 Asr-Models

  • 请求 URL/api/ais/$id/asr_models/$param_id
  • 请求方式PUT
  • Body 信息
参数说明
action变更启用状态,固定为"toggle"
{
  "action": "toggle"
}
  • 返回值
{
  "code": 200,
  "data": "4065",
  "message": "success"
}
  • curl 示例
curl -XPUT -H "X-XTRA-AUTH-ID: 62dd0173-4916-4b1c-b958-546e4d7c91fe" -d '{"action": "toggle"}' 192.168.1.100:8081/api/ais/3/asr_models/4065

删除 AI 配置 profile 中的 Asr-Models

  • 请求 URL/api/ais/$id/asr_models/$param_id
  • 请求方式DELETE
  • Body 信息:无
  • 返回值
{
  "data": "4065",
  "message": "success",
  "code": 200
}
  • curl 示例
curl -0 -H "X-XTRA-AUTH-ID: 62dd0173-4916-4b1c-b958-546e4d7c91fe" -XDELETE 192.168.1.100:8081/api/ais/3/asr_models/4065

删除 profile

  • 请求 URL/api/ais/$id
  • 请求方式DELETE
  • Body 信息:无
  • 返回值
{
  "data": "3",
  "code": 200,
  "message": "success"
}
  • curl 示例
curl -0 -H "X-XTRA-AUTH-ID: 62dd0173-4916-4b1c-b958-546e4d7c91fe" -XDELETE 192.168.1.100:8081/api/ais/3

"百度"、"阿里"、"华为"、"讯飞"模块

在 AI 接口中,对于"百度","阿里","华为","讯飞"模块,调用接口参数一致,URL 进行调整:

  • 百度:https://192.168.3.222/api/baidus
  • 阿里:https://192.168.3.222/api/ali_profiles
  • 华为:https://192.168.3.222/api/huawei_profiles
  • 讯飞:https://192.168.3.222/api/xunfei_profiles
各模块对应的realm说明
百度BAIDU-TTS BAIDU-ASR BAIDU-ASR-WS
阿里ALI-SETTINGS ALI-TTS ALI-ASR
华为HUAWEI-SETTINGS HUAWEI-TTS HUAWEI-ASR
讯飞XUNFEI-SETTINGS XUNFEI-TTS XUNFEI-ASR

以百度模块为例:

查看百度的配置

  • 请求 URL/api/baidus
  • 请求方式GET
  • Body 信息:无
  • 返回值
[
  {
    "name": "baidu",
    "deleted_at": "",
    "disabled": 1,
    "description": "",
    "updated_at": "2022-05-17 12:20:56",
    "created_at": "2022-05-17 12:20:56",
    "id": 1
  }
]
  • curl 示例
curl -H "X-XTRA-AUTH-ID: 62dd0173-4916-4b1c-b958-546e4d7c91fe" 192.168.1.100:8081/api/baidus

创建百度模块 profile

  • 请求 URL/api/baidus
  • 请求方式POST
  • Body 信息
参数说明
namebaidu profile 名称
descriptionbaidu profile 描述
template模板,默认模板:"default"
{
  "name": "test",
  "description": "test",
  "template": "default"
}
  • 返回值
{
  "code": 200,
  "data": 2,
  "message": "success"
}
  • curl 示例
curl -XPOST -H "X-XTRA-AUTH-ID: 62dd0173-4916-4b1c-b958-546e4d7c91fe" -d '{"name": "test","description": "test","template": "default"}' 192.168.1.100:8081/api/baidus

修改百度模块名称和描述

  • 请求 URL/api/baidus/$id
  • 请求方式PUT
  • Body 信息
参数说明
namebaidu profile 名称
descriptionbaidu profile 描述
idprofile ID
{
  "name": "baidu",
  "description": "百度模块",
  "id": "1"
}
  • 返回值
{
  "data": "1",
  "message": "success",
  "code": 200
}
  • curl 示例
curl -XPUT -H "X-XTRA-AUTH-ID: 62dd0173-4916-4b1c-b958-546e4d7c91fe" -d '{"name": "baidu","description": "百度模块","id": "1"}' 192.168.1.100:8081/api/baidus/1

创建百度模块中 TTS 和 ASR 参数

  • 请求 URL/api/baidus/$id/params
  • 请求方式POST
  • Body 信息
参数说明
k参数名称
v参数数值
realm参数域
// TTS参数
{
	"k": "text1",
	"realm": "BAIDU-TTS",
	"v": "t1"
}

//ASR参数
{
	"k": "text2",
	"realm": "BAIDU-ASR",
	"v": "t2"
}
  • 返回值
{
  "code": 200,
  "message": "success",
  "data": 1574
}
  • curl 示例
curl -XPOST -H "X-XTRA-AUTH-ID: 62dd0173-4916-4b1c-b958-546e4d7c91fe" -d '{"k": "text1","v": "t1","realm": "BAIDU-TTS"}' 192.168.1.100:8081/api/baidus/1/params

修改百度模块中 TTS 或 ASR 参数

  • 请求 URL/api/baidus/$id/params/$param_id
  • 请求方式PUT
  • Body 信息
参数说明
k参数名称
v参数数值
realm参数域
{
  "k": "token-url",
  "realm": "BAIDU-TTS",
  "v": "https://openapi.baidu.com/oauth/2.0/token"
}
  • 返回值
{
  "message": "success",
  "data": "1574",
  "code": 200
}
  • curl 示例
curl -XPUT -H "X-XTRA-AUTH-ID: 62dd0173-4916-4b1c-b958-546e4d7c91fe" -d '{"k": "token-url","v": "https://openapi.baidu.com/oauth/2.0/token","realm": "BAIDU-TTS"}' 192.168.1.100:8081/api/baidus/1/params/1574

启用/禁用百度模块中 TTS 或 ASR 参数

  • 请求 URL/api/baidus/$id/params/$param_id
  • 请求方式PUT
  • Body 信息
参数说明
action变更启用状态,固定为"toggle"
{
  "action": "toggle"
}
  • 返回值
{
  "message": "success",
  "data": "1574",
  "code": 200
}
  • curl 示例
curl -XPUT -H "X-XTRA-AUTH-ID: 62dd0173-4916-4b1c-b958-546e4d7c91fe" -d '{"action": "toggle"}' 192.168.1.100:8081/api/baidus/1/params/1574

删除百度模块中 TTS 或 ASR 参数

  • 请求 URL/api/baidus/$id/params/$params_id
  • 请求方式DELETE
  • Body 信息:无
  • 返回值
{
  "code": 200,
  "message": "success",
  "data": "1"
}
  • curl 示例
curl -0 -H "X-XTRA-AUTH-ID: 62dd0173-4916-4b1c-b958-546e4d7c91fe" -XDELETE 192.168.1.100:8081/api/baidus/1/params/1

删除 profile

  • 请求 URL/api/baidus/$id
  • 请求方式DELETE
  • Body 信息:无
  • 返回值
{
  "message": "success",
  "data": "2",
  "code": 200
}
  • curl 示例
curl -0 -H "X-XTRA-AUTH-ID: 62dd0173-4916-4b1c-b958-546e4d7c91fe" -XDELETE 192.168.1.100:8081/api/baidus/2
呼叫中心