呼叫中心系统语音识别接口(ASR)怎样设置

159 阅读2分钟

一起养成写作习惯!这是我参与「掘金日新计划 · 4 月更文挑战」的第15天,点击查看活动详情。

启动ASR识别

APP\

| ``` cti_detect_speech_session asrproxy_addr vad_mode vad_min_active_time_ms vad_max_end_silence_time_ms vad_level vad_filter wait_speech_timeout_ms max_speech_time_ms hot_word asr_params asr_notify asr_notify_uuid asr_mode

| ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

例子:

API\


| ```
uuid_cti_start_detect_speech uuid asrproxy_addr vad_mode vad_min_active_time_ms vad_max_end_silence_time_ms vad_level vad_filter wait_speech_timeout_ms max_speech_time_ms hot_word asr_params asr_notify asr_notify_uuid asr_mode 
``` |
| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

-   asrproxy_addr asrproxy程序IIP和端口
-   vad_mode 0:本地VAD 1:远端VAD 2:本地检测声音开始,远端检测声音结束
-   vad_min_active_time_ms 说话时间大于这个值才开始提交ASR
-   vad_max_end_silence_time_ms 静音时间大于这个值认为说话停止
-   vad_level vad检测灵敏度 0-3,值越大越迟钝,建议3
-   vad_filter 噪音过滤等级0-1.0,建议0.2,值越大过滤范围越大,会导致小的声音给过滤。
-   wait_speech_timeout_ms 最大等待说话时间,用于一句话识别(asr_mod:0),等待时间超过这个值还没说话,就停止。
-   max_speech_time_ms 说话事件超过这个值,会强制认为一句话结束。如果对接是是一句话识别ASR接口,建议设置60000以内。
-   hot_word ASR热词
-   asr_params ASR自定义参数
-   asr_notify ASR识别结果通知类型 0:ESL事件 1:FS的内部队列 2:ESL事件和FS的内部队列
-   asr_notify_uuid asr识别结果通知uuid
-   asr_mod 0:只识别一句话就停止 1: 执行一次会持续进行ASR识别,直到挂机或者调用uuid_cti_stop_detect_speech才停止ASR识别

## [](http://www.ddrj.com/callcenter/asr.html#%E5%81%9C%E6%AD%A2ASR%E8%AF%86%E5%88%AB "停止ASR识别")停止ASR识别

API\


| ```
uuid_cti_stop_detect_speech uuid 
``` |
| ----------------------------------------- |

-   uuid 操作通道的UUID

## [](http://www.ddrj.com/callcenter/asr.html#%E6%94%BE%E9%9F%B3%E7%9A%84%E5%90%8C%E6%97%B6%E6%89%A7%E8%A1%8CASR%E8%AF%86%E5%88%AB "放音的同时执行ASR识别")放音的同时执行ASR识别

app\


| ```
cti_play_and_detect_speech <file> <mode> <interrupt> <vad_mode> <vad_filter> <asrproxy_addr> vad_min_active_time_ms vad_max_end_silence_time_ms wait_speech_timeout_ms max_speech_time_ms hot_word asr_params asr_notify_uuid 
``` |
| -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

-   file 放音文件
-   mode 0:不启动ASR识别 1:放音的同时开启ASR识别; 2:放音完成之后才开启ASR识别。
-   interrupt 0:关键词打断; 1:检测到声音打断; 2:有识别结果打断; 3:识别到一句话打断。
-   vad_mode 0:使用本地VAD算法检测说话停止 2:等待ASR反馈说话结束。
-   vad_filter 噪音过滤等级0-1。
-   asrproxy_addr asr代理地址。
-   vad_min_active_time_ms 说话时间大于这个值才开始提交ASR。
-   vad_max_end_silence_time_ms 静音时间大于这个值认为说话停止。
-   wait_speech_timeout_ms 放音完成后等待用户说话的等待时间。
-   max_speech_time_ms 最大说话时间,说话时间超过这个值就停止ASR。
-   hot_word ASR热词。
-   asr_params ASR私有参数,JOSN格式{\”变量\”=\”名字\”}。
-   asr_notify_uuid asr识别结果通知uuid

## [](http://www.ddrj.com/callcenter/asr.html#ASR%E8%AF%86%E5%88%AB%E7%BB%93%E6%9E%9C%E9%80%9A%E7%9F%A5 "ASR识别结果通知")ASR识别结果通知

事件类型 SWITCH_EVENT_CUSTOM cti_asr\
事件头

-   Speech-Notify-UUID asr_notify_uuid

-   Speech-Type 

    -   b:检测到开始说话
    -   0:识别结果更新,如果结果是空,表示远端VAD检测到开始说话
    -   1:一句话结果 ASR_MODE_MULTI模式才有
    -   f:远端结束
    -   F:本段结束
    -   e:本段错误
    -   E:远端错误
    -   t:wait_speech_timeout 超时

-   Speech-Time 开始说话时间,linux时间戳(微妙)

事件体 识别结果

\