本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
您可以通过 Amazon Lex V2 流式传输 API 在 Amazon Lex V2 机器人与您的应用程序之间启动双向流。启动流后,机器人可以管理机器人与用户之间的对话。机器人会响应用户输入,而无需您编写代码来处理用户的响应。该机器人可以:
-
处理在播放提示时来自用户的中断。有关更多信息,请参阅 允许用户打断 Amazon Lex V2 机器人。
-
等待用户提供输入。例如,机器人可以等待用户收集信用卡信息。有关更多信息,请参阅 允许 Amazon Lex V2 机器人在暂停期间等待用户提供更多信息。
-
将双音多频 (DTMF) 和音频输入放在同一个流中。
-
与通过应用程序管理对话相比,可以更好地处理用户输入中的暂停。
Amazon Lex V2 机器人不仅会响应您的应用程序发送的数据,还会将有关对话状态的信息发送到您的应用程序。您可以通过该信息来更改应用程序响应客户的方式。
Amazon Lex V2 机器人还会监控该机器人与您的应用程序之间的连接,并可以确定连接是否已超时。
要通过该 API 向 Amazon Lex V2 机器人发起流传输,请参阅 启动到 Amazon Lex V2 机器人的对话流。
开始从应用程序向 Amazon Lex V2 机器人启动流传输时,您可以将该机器人配置为接受用户的音频输入或文本输入。您还可以选择用户在对他们输入的响应中是接收音频还是文本。
如果您已将 Amazon Lex V2 机器人配置为接受用户的音频输入,则它无法接受文本输入。如果您已将机器人配置为接受文本输入,则用户只能通过书面文本与其通信。
当 Amazon Lex V2 机器人接收流式音频输入时,机器人会确定用户何时开始说话以及何时停止说话。它可以处理用户的任意暂停或中断。它还可以在同一个流中接受 DTMF(双音多频)输入和语音输入。这有助于用户更自然地与机器人互动。您可以向用户提供欢迎消息和提示,也可以允许用户中断这些消息和提示。
当您启动双向流时,Amazon Lex V2 使用 HTTP/2 协议
-
用户的文本、音频或 DTMF 输入。
-
应用程序向 Amazon Lex V2 机器人发送的信号,包括表示消息的音频播放已完成,或者用户已断开会话连接。
有关事件的更多信息,请参阅启动到 Amazon Lex V2 机器人的对话流。有关如何对事件进行编码的信息,请参阅 事件流编码。