跳转到主要内容

如何在 Wati 聊天机器人中使用联系人属性和变量

摘要

在 Wati 中构建聊天机器人时,您可以从联系人那里收集信息,并在对话后续过程中使用这些信息,或者将其保存到联系人资料中。本指南解释了变量 (variables)联系人属性 (contact attributes) 之间的区别,并展示了如何在聊天机器人中结合使用它们来收集、评估和保存联系人信息。

说明

变量与联系人属性

变量和联系人属性都可以存储信息,但它们的用途不同。

变量用于在聊天机器人运行时临时存储信息。例如,您可以使用变量来保存联系人对问题的回答,并在同一聊天机器人的后续步骤中使用该回答。

联系人属性用于永久存储联系人资料上的信息。即使聊天机器人结束,这些信息仍然可用,并可用于联系人细分、营销活动和个性化设置。

一个简单的理解方式:

  • 变量:在聊天机器人对话期间临时存储信息。

  • 联系人属性:将信息永久保存到联系人资料中。

在许多聊天机器人流程中,您需要将两者结合使用:首先将联系人的回答保存在变量中,然后使用更新属性 (Update Attribute) 节点将该值保存为联系人属性。

将联系人的 WhatsApp 电话号码同步到 Google Sheets

如果您的聊天机器人是在 WhatsApp 上运行,您可以使用 {{phone}} 联系人属性来获取联系人的电话号码,而无需让他们手动输入。

以下情况可以使用 {{phone}} 属性:

  • 对话是在 WhatsApp 上进行的。

  • 联系人未通过使用 WhatsApp 用户名来隐藏其电话号码。

在将联系人数据发送到 Google Sheet 时,您可以使用此属性。

当电话号码不可用时添加回退机制

并非每位联系人都提供 {{phone}} 属性。为确保您的工作流仍能收集到电话号码,请添加一个条件来检查该属性是否存在。

  • 添加一个条件 (Condition) 节点来检查 {{phone}} 是否存在。

  • 如果 {{phone}} 存在,则继续聊天机器人流程,并在将联系人详细信息同步到 Google Sheets 时使用它。

  • 如果 {{phone}} 不存在,请要求联系人分享他们的电话号码。

  • 使用更新属性 (Update Attribute) 节点将他们提供的号码保存到联系人属性中。

  • 继续流程,并在发送联系人详细信息到 Google Sheets 时使用更新后的属性。

此回退机制有助于确保即使 {{phone}} 属性无法自动获取时,您的 Google Sheet 也能收到电话号码。

收集聊天机器人回答并将其保存为联系人属性

请按照以下步骤收集联系人的回答并将其保存到其资料中:

第 1 步:将回答保存到变量

在向联系人展示选项的列表 (List) 节点中,找到将回答保存到变量 (Save Answers in a variable) 字段。

输入一个以 @ 开头的变量名。

示例: @travel_country

聊天机器人变量必须包含 @ 前缀。

当联系人选择一个选项时,Wati 会将他们的回答存储在变量中,以便稍后在聊天机器人中使用。

第 2 步:将变量保存为联系人属性

列表 (List) 节点之后添加一个更新属性 (Update Attribute) 节点。

配置字段如下:

字段

属性类型 (Attribute type)

自定义属性 (Custom Attribute)

属性名称 (Attribute name)

travel_country_attribute

值 (Value)

@travel_country

属性名称是信息将要保存到的联系人属性。使用包含联系人回答的变量。

例如,如果联系人选择了 Spain(西班牙),Wati 会将 Spain 保存到 travel_country_attribute 联系人属性中。

之后,您就可以使用联系人资料中的此信息,并将其用于细分和营销活动等用例。

基于条件更新联系人属性

您还可以将变量与条件 (Condition) 节点结合使用,以评估从联系人收集的信息,然后将结果保存到其资料中。

示例:验证员工 ID

假设您想识别员工 ID 以 INT- 开头的联系人。

第 1 步:询问员工 ID

添加一个问题 (Question) 节点,要求联系人输入他们的员工 ID。

将他们的回答保存在变量中:

@idnumber

例如,如果联系人输入 INT-1111,则在聊天机器人对话的其余部分中,该变量将包含此值。

第 2 步:使用条件检查回答

添加一个条件 (Condition) 节点,并检查该变量是否以 INT- 开头。

条件: @idnumberINT- 开头

注意: 在 Wati 的聊天机器人条件节点中,您可以使用以下运算符:等于 (Equal to)不等于 (Not equal to)包含 (Contains)不包含 (Does not contain)以...开头 (Starts with)不以...开头 (Does not start with)大于 (Greater than)小于 (Less than)

这将为 ID 符合条件的联系人和不符合条件的联系人创建单独的路径。

第 3 步:将结果保存到联系人属性

在条件为真的分支上,添加一个更新属性 (Update Attribute) 节点。

配置属性如下:

属性

{{internalstaff}}

yes

{{idnumber}}

@idnumber

这会将 2 条信息保存到联系人资料中:

  • internalstaff 设置为 yes

  • idnumber 存储联系人输入的实际员工 ID。

第 4 步:在消息中使用变量

您还可以直接在聊天机器人消息中使用变量。

例如:

谢谢。我们已记录您的 ID 为 @idnumber。您可以进入下一步。

Wati 会将 @idnumber 替换为联系人输入的值。

快速参考

变量

联系人属性

持续时间?

聊天机器人会话期间

保留在联系人资料上

用途?

在聊天机器人流程中临时存储信息

存储联系人信息以供在整个 Wati 中使用

如何获取值?

在聊天机器人流程中捕获信息

使用现有联系人信息或保存聊天机器人中收集的信息

格式

@variablename

{{attributename}}

需要 @ 前缀吗?

提示

  • 聊天机器人变量名应以 @ 开头,例如 @travel_country

  • 使用更新属性 (Update Attribute) 将变量的值保存为联系人属性。

  • 当您需要在聊天机器人流程中临时使用信息时,请使用变量。

  • 当您需要在聊天机器人结束后在联系人资料上保留信息时,请使用联系人属性。

  • 在 WhatsApp 上,当 {{phone}} 可用时,请使用它来获取联系人的电话号码。

  • 添加一个回退机制来检查 {{phone}} 是否存在。如果不可用,请要求联系人分享他们的号码并将其保存到联系人属性中。

  • 保存的联系人属性可用于细分和营销活动等用例。

常见问题解答 (FAQs)

变量与联系人属性

1. Wati 中的变量和联系人属性有什么区别?

变量在聊天机器人运行时临时存储信息。联系人属性将信息永久存储在联系人资料中,并在聊天机器人结束后仍然可用。

2. 我应该在什么时候使用聊天机器人变量?

当您需要临时存储信息并在同一聊天机器人对话的后续过程中使用它时,请使用聊天机器人变量。

3. 我应该在什么时候使用联系人属性?

当您需要在聊天机器人结束后将信息保留在联系人资料上时,请使用联系人属性。联系人属性可用于细分、营销活动和个性化设置。

4. 如何将聊天机器人变量保存为联系人属性?

使用更新属性 (Update Attribute) 节点,将聊天机器人变量中存储的值保存到联系人属性中。

WhatsApp 电话号码

5. 我什么时候可以使用 {{phone}} 获取联系人的 WhatsApp 电话号码?

当对话在 WhatsApp 上进行且联系人未通过使用 WhatsApp 用户名隐藏其电话号码时,您可以使用 {{phone}}

6. 如果 {{phone}} 不可用,我该怎么办?

添加一个条件来检查 {{phone}} 是否存在。如果不可用,请要求联系人分享他们的电话号码,并将该号码保存到联系人属性中。

在聊天机器人流程中使用变量

7. 聊天机器人回答是如何存储在变量中的?

聊天机器人可以将联系人的回答保存到变量中,例如 @travel_country。聊天机器人变量必须包含 @ 前缀,存储的值可用于同一聊天机器人对话的后续部分。

这是否解答了您的问题?