原始:无法连接到使用自定义ASR插件编译的UniMRCP

时间:2019-07-02 08:40:43

标签: asterisk vxml unimrcp voximal

我已经编写了一个自定义UniMRCP ASR插件,并希望它与Asterisk上的Voximal一起使用。

我在这里关注文档:https://wiki.voximal.com/doku.php?id=asrproviders:unimrcp。 VXML可以正常工作,但是当我尝试用VXML记录时,看不到任何流被发送到UniMRCP服务器。我的UniMRCP服务器和Asterisk都在同一台计算机上。我也尝试在EC2上进行Voxibot安装安装,但是遇到相同的问题

以下是星号中的一些配置:

mrcp.conf

[general]
; Default ASR and TTS profiles.
default-asr-profile = uni2
default-tts-profile = speech-nuance5-mrcp2

log-level = DEBUG,NOTICE,INFO
max-connection-count = 100
offer-new-connection = 1

; rx-buffer-size = 1024
; tx-buffer-size = 1024
; request-timeout = 5000
; speech-channel-timeout = 30000

[uni2]
version = 2

; SIP settings
server-ip = 172.17.0.2
server-port = 8060

; SIP user agent
;client-ip = 172.17.0.2
;client-port = 25097

sip-transport = udp

; RTP factory
rtp-ip = 172.17.0.2
rtp-port-min = 4000
rtp-port-max = 5000

; Jitter buffer settings
playout-delay = 50
max-playout-delay = 200

res-speech-unimrcp.conf

[general]
; UniMRCP named profile. Options are:
unimrcp-profile = uni2      ; UniMRCP MRCPv2 Server

log-level = DEBUG,INFO,NOTICE

; Preloaded grammars
[grammars]
;grammar-name = path-to-grammar-file

[mrcpv2-properties]
Recognition-Timeout = 20000
No-Input-Timeout = 15000

[mrcpv1-properties]
Recognition-Timeout = 20000
No-Input-Timeout = 15000

voximal.conf

[general]
autoanswer=yes
videosilence=
audiosilence=
; tried with speechprovider=unimrcp too
speechprovider=unimrcp:uni2
speechscore=50

[control]
forward=#
reverse=*
stop=123456789
pause=
restart=0
skipms=5000

;Optional local license
[license]
;max=1
;key=trial
tts=yes
speech=auto

[prompt]
uri=http://ttsf.voximal.net/tts/pico/tts.php
method=post
format=wav
maxage=-1


[recognize]
sendproperties=0

[account1]
number=8965
name=helloworld
url=file:///var/lib/voximal/record.vxml
speech=automatic

record.vxml

<!-- for testing recording -->
<?xml version="1.0" encoding="UTF-8"?>
<vxml version="2.0" xmlns="http://www.w3.org/2001/vxml" xml:lang="en-US">
    <form>
        <block>
            <prompt>
                <audio src="/var/lib/asterisk/sounds/speech_start.wav"/>
            </prompt>
        </block>
        <record  name="msg" beep="true" maxtime="10s" finalsilence="4000ms" dtmfterm="true" type="audio/x-wav">
            <prompt timeout="5s">
                <audio src="/var/lib/asterisk/sounds/speech_start.wav"/>
            </prompt>
        </record>
    </form>
</vxml>

1 个答案:

答案 0 :(得分:0)

我看不到ASR和记录功能之间的链接(用于在没有的情况下记录用户的语音)。 如果要记录发送到ASR的音频流,可以使用属性“ recordutterance”(是/否),您将具有阴影变量field_name $ .recording,field_name $ .recordingsize,field_name $ .recordingduration。