Skip to content

聊天触发节点常见问题

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

将数据从网站传递到嵌入式聊天触发器节点

在网站中嵌入聊天触发器节点时,您可能需要向聊天触发器传递额外的信息。例如,传递存储在网站 Cookie 中的用户 ID。

为此,请使用传递给嵌入式聊天窗口中的函数的 JSON 对象中的字段:

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

该字段可以包含任意数据,这些数据将与其他输出数据一起出现在聊天触发器输出中。从那里,您可以像往常一样使用 n8n 的数据处理功能查询和处理来自下游节点的数据。

聊天触发器节点无法获取之前的消息

配置聊天触发器节点时,如果您没有仔细配置会话加载,则可能会在获取先前消息时遇到问题。这通常会显示为错误。

在聊天触发器中, “加载上一个会话”选项使用 检索会话的先前聊天消息。当您将“加载上一个会话”选项设置为“从内存”时,几乎总是最好将同一个内存节点连接到工作流程中的聊天触发器和代理:

  1. “聊天触发器”节点中,将“加载上一个会话”选项设置为“从内存” 。仅当您将聊天设置为公开时,此选项才可见。
  2. 简单内存节点附加到内存连接器。
  3. 将相同的简单内存节点附加到代理内存连接器。
  4. Simple Memory节点中,将Session ID设置为Connected Chat Trigger Node

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

如果您要通过表达式检索会话 ID,则同一表达式必须适用于与其关联的每个节点。如果该表达式与每个需要内存的节点不兼容,则可能需要使用单独的内存节点,以便能够根据每个节点自定义会话 ID 的表达式。