使用twilio语音识别减少沉默后的等待时间

时间:2017-09-12 23:40:31

标签: twilio twilio-api

我使用Twilio Voice Gather verb收集user speech对某些问题的回复。有没有办法在调用动作网址之前缩短等待时间?根据我的测试,似乎默认行为是在每次Gather调用检测到静音后等待超过6秒。

var gather = new Gather(input: "speech", action: GetActionUrl(), language: Constants.Language, method: "POST", bargeIn: true, speechTimeout: 3, timeout: 3, partialResultCallback: "/RealTimeVoice", partialResultCallbackMethod: "GET");
gather.Say(promptMessage, language: Constants.Language, voice: Constants.Voice);
response.Gather(gather);
response.Redirect(GetRedirectUrl());
return TwiML(response, System.Text.Encoding.UTF8);

1 个答案:

答案 0 :(得分:0)

Twilio开发者传道者在这里。

达到超时后,Twilio需要使用实时录制来生成发布到action网址的最终结果。您目前将speechTimeout设置为3秒,因此在此之后会有更多延迟,以获得最终结果并向您的网址发出请求。

正如亚历克斯在评论中所建议的那样,你可以尝试speechTimeout: 'auto'训练有素识别语音中的空白并提交。

或者,我注意到您也设置了partialResultCallback。这可以在您获得所需结果后中断调用,而无需等待最终结果。如果你确实检测到了你正在寻找的结果,你可以使用REST API to redirect the call来做下一件事,而不是等待。

让我知道这是否有帮助。