启动和结束对话
了解有关如何使用自动添加到对话的节点来启动和结束交谈的更多信息。
将自动包含以下对话节点:
- 欢迎:定义助手如何问候用户并启动交谈。
- 其他:当通过任何定义的意向都无法满足客户的请求时,助手会说的内容。
启动交谈
“欢迎”节点是使用 welcome
特殊条件定义的,此条件是在助手 (而不是用户) 启动对话时触发的。 当集成或客户机应用程序使用空消息启动会话,然后等待助手与用户打招呼时,会发生此情况,如以下情况所示:
- 助手的 预览
- “试用”窗格
- 已禁用 Web 聊天 与主屏幕的集成
但是,当用户通过发送消息 (例如,通过 Slack 和 Facebook 集成) 来启动对话时,将跳过“欢迎”节点。 在启用主屏幕的情况下使用 Web 聊天 集成时,也会跳过此操作,因为在这种情况下,主屏幕会提供问候语。 缺省情况下,主屏幕处于启用状态。
与 welcome
特殊条件不同,conversation_start
特殊条件总是在对话开始时触发。 您可以将具有这两个特殊条件(welcome
和 conversation_start
)的节点组合使用,以通过一致的方式来管理对话启动。
有关更多信息,请参阅特殊条件。
设置初始上下文
如果需要在每次对话开始时设置初始上下文变量,请确保以与您计划使用的所有集成配合使用的方式进行设置。 请勿使用“欢迎”节点来设置初始上下文变量,除非您确定仅在触发 welcome
特殊条件的情况下才会访问对话。
更安全且更一致的方法是始终在使用 conversation_start
特殊条件定义的节点中设置任何初始上下文,该条件将始终触发。 除了显示问候语的“欢迎”节点外,还可以使用此节点。
要管理任何对话的启动,而不考虑集成,请执行以下步骤:
-
在“欢迎”节点上方添加一个对话节点,“欢迎”节点在创建对话时会自动添加到对话树顶部。
-
将此新添加的节点的节点条件设置为
conversation_start
。 在任何对话开始时都会可靠地触发此节点。 -
在
conversation_start
节点中,定义上下文变量的任何缺省值,并在每个对话开始时调用需要调用的任何 Webhook。 -
不要为此节点定义文本响应。 请改为将此节点配置为在对话树中直接跳至其下方的
Welcome
节点 (或首先要处理的任何其他节点),然后选择 如果助手识别 (条件)。

此设计会使对话如下进行工作:
- 无论对于哪种集成类型,都将处理
conversation_start
节点,这意味着将初始化在其中定义的任何上下文变量。 - 在助手启动对话流的集成中,将触发
Welcome
节点,并显示其文本响应。 - 在用户启动对话流的集成中,将评估用户的第一个输入,然后由可以提供最佳响应的节点进行处理。
正常结束交谈
其他节点设计为识别 anything_else
特殊条件,用于了解用户输入与在对话节点中用作条件的任何意向都不匹配的情况。
不要删除其他节点。
你可能一开始并没有意识到它的价值,但它具有一些重要的功能。 如果您确实删除了它,请不要惊慌。 您可以将其重新添加为对话树末尾的对话节点,并将 anything_else
特殊条件添加到其 如果助手识别 字段。
Anything else 节点提供以下优点:
-
它可以防止您的助理永远保持沉默,完全不回应客户。 Anything else 节点是使助手能够 (如果没有其他内容) 说
I'm sorry, I didn't understand.
或I can't help you with that.
-
分析使用此节点来了解对话无法处理的主题。 覆盖度量值 用于查找在用户对话日志中处理了
anything_else
条件的节点的实例。 它使用这些信息来确定您的对话框能够将用户请求与能够处理这些请求的意图相匹配的频率。 如果该节点单独在anything_else
上或与其他条件 (例如anything_else && #positive_feedback
) 结合使用,那么该节点由度量值注册。 -
如果希望助手在对话无法对其进行寻址时将查询重定向到搜索集成,那么此节点将识别何时是启动搜索的时候。 当客户的信息到达
anything_else
节点时,信息就会被发送到搜索集成,以便在您配置的数据集中找到相关答案。 有关更多信息,请参阅 搜索触发器。以这种方式触发搜索的信息仍会被覆盖率指标登记为未被覆盖的信息。