Skip to content

Chat Trigger 聊天触发器节点常见问题#

以下是 Chat Trigger 聊天触发器节点 的一些常见错误和问题以及解决或故障排除的步骤。

Pass data from a website to an embedded Chat Trigger node 从网站向嵌入式Chat Trigger节点传递数据#

当在网站中 embedding 嵌入 Chat Trigger 聊天触发器节点时,您可能希望向 Chat Trigger 聊天触发器传递额外信息。例如,传递存储在站点 cookie 中的用户 ID。

要做到这一点,在您传递给嵌入式聊天窗口中 createChat 函数的 JSON 对象中使用 metadata 字段:

1
2
3
4
5
6
createChat({
	webhookUrl: 'YOUR_PRODUCTION_WEBHOOK_URL',
	metadata: {
		'YOUR_KEY': 'YOUR_DATA'
	};
});

metadata 字段可以包含任意数据,这些数据将与其他输出数据一起出现在 Chat Trigger 聊天触发器输出中。从那里,您可以使用 n8n 的 data processing features 数据处理功能 从下游节点查询和处理数据。

Chat Trigger node doesn't fetch previous messages Chat Trigger节点无法获取先前的消息#

配置 Chat Trigger 聊天触发器节点时,如果您不小心配置会话加载的方式,可能会遇到获取先前消息的问题。这通常表现为 workflow could not be started! 无法启动工作流! 错误。

在 Chat Triggers 聊天触发器中,Load Previous Session 加载之前的会话 选项使用 sessionID 检索会话的先前聊天消息。当您将 Load Previous Session 加载之前的会话 选项设置为 From memory 从内存 时,几乎总是最好 connect the same memory node 连接相同的内存节点 到工作流中的 Chat Trigger 聊天触发器和 Agent 代理:

  1. 在您的 Chat Trigger 聊天触发器 节点中,将 Load Previous Session 加载之前的会话 选项设置为 From Memory 从内存。只有在您已使聊天公开可用时才可见。
  2. Simple Memory 简单内存 节点附加到 Memory 内存 连接器。
  3. 将相同的 Simple Memory 简单内存 节点附加到您的 Agent 代理Memory 内存 连接器。
  4. Simple Memory 简单内存 节点中,将 Session ID 会话ID 设置为 Connected Chat Trigger Node 连接的聊天触发器节点

您可能希望将单独的内存节点附加到 Chat Trigger 聊天触发器和 Agent 代理的一个实例是,如果您想在内存节点中将 Session ID 会话ID 设置为 Define below 在下面定义

如果您从表达式中检索会话 ID,相同的表达式必须适用于附加到它的每个节点。如果表达式与每个需要内存的节点不兼容,您可能需要使用单独的内存节点,以便可以在每个节点的基础上自定义会话 ID 的表达式。