0

我们有要求用户描述问题的要求,可能需要很长时间。因此,为了收集它,我们将 SpeechTimout 扩展为“6”,但在某些情况下它可能很短,因此我们希望用户可以在完成后按下键“1”以避免不必要的等待时间。

我们已向用户提供消息“请简要描述您的问题。完成后按“1””

下面是代码

this.twilioService.gather(message, {
  ...this.getGatherAttributes(gatherAttrs),
  finishOnKey: '1',
  input: ['speech', 'dtmf'],
  timeout: 3,
  numDigits: 1,
  speechTimeout: 6})

但即使用户从键盘聚集按下“1”也不会停止并调用操作,而是等待很长时间(6 秒)。

4

1 回答 1

0

Twilio 开发人员布道者在这里。

当您设置<Gather>收听语音或 dtmf 输入时,一旦其中一个输入启动,Twilio 将停止收听另一个。因此,如果您开始输入按键,那么finishOnKey将起作用。但是,如果您开始讲话,那么finishOnKey将不再起作用。

speechTimeout属性实际上并不影响呼叫者说话的时间,它是语音暂停的缓冲区。如果您已speechTimeout设置为“6”,那么一旦呼叫者停止讲话,Twilio 将等待 6 秒。

您可以设置speechTimeout为“自动”,这意味着 Twilio 将在检测到语音暂停时停止语音识别并返回结果。

于 2021-08-09T00:47:58.280 回答