跳转到主要内容

高级聊天机器人构建器:使用 Webhook 节点

更新于昨天

摘要

在Wati的Chatbot Builder中,Webhook 允许您使用 GETPOST API 请求在您的聊天机器人与外部应用程序之间发送和接收实时数据。此功能支持动态聊天机器人交互,例如获取用户详细信息、验证数据或与第三方服务集成。

注意:Webhook 功能仅在 Pro & Business 计划中可用。如果您使用的是标准计划,可以创建和保存带有 Webhook 的聊天机器人,但需要升级才能在 Keyword ActionDefault Action 工作流程中使用它们。

说明

高级 Chatbot Builder 仅在 ProBusiness 计划中可用。

如何在 Chatbot Builder 中使用 Webhook

1. 向您的聊天机器人添加 Webhook

  • 打开 Wati Chatbot Builder

  • Webhook 图标拖放到聊天机器人工作流程中。

  • 将其连接到相关的聊天机器人步骤。

2. 配置 Webhook 节点

URL 和方法

  • 选择 请求方法GETPOST

  • 输入外部 API 的 URL 端点

  • 使用 Variables 按钮插入变量,使 URL 动态化。


    示例:

    https://webhook-wa-testing.clare.ai/123456789?name=##{{name}}![](https://brainfish-storage-prod.s3-accelerate.amazonaws.com/uploads/8e891fb2-b8da-40b6-8609-c45377c7118c/3e6b6f07-c5ff-4b63-b18f-b881dd533bdd/SCR-20250304-qcus.png?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAUPPN5IL3QLQZLDSU%2F20251203%2Fus-east-2%2Fs3%2Faws4_request&X-Amz-Date=20251203T050551Z&X-Amz-Expires=3000&X-Amz-Signature=fadf7374dd24de3800f0d21096ec52e22c61a8ced2d283de071d936ae80ed172&X-Amz-SignedHeaders=host&response-content-disposition=attachment"=844x330")

自定义标头

  • 标头允许您在请求中包含额外信息,例如内容类型或授权。

  • 标头是 可选 的,并且默认情况下已 关闭

  • 它们必须遵循 键-值 格式。

示例:

  • = Content-Type

  • = application/json

自定义主体

  • 请求主体是您包含发送到外部 API 的数据的位置。

  • 主体是 可选 的,并且默认情况下已 关闭

  • 启用后,主体始终必须采用 JSON 格式

设置您的测试变量

  • 手动定义测试变量,以在设置 Webhook 时模拟 API 响应。

3. 测试 Webhook 请求

  • 单击 Test the request 以检查 API 调用是否按预期工作。

4. 将 API 响应保存为变量

  • 您可以捕获 API 响应中的值,并将其存储在 变量自定义属性 中。

  • 如果 API 返回具有 键-值 对的 JSON,您可以提取并保存特定值。

示例:存储 API 响应中的“result”: “success”:

{   "result": "success" }

在对象内存储值

  • 使用格式:objectKey.keyName

  • 例如:要存储以下响应中的 QuoteId,请使用 Result.QuoteId

{
"Result": {
"QuoteId": "xxxxx",
"QuoteNumber": "xxxxxx",
"PolicyNumber": null
},
"MessageValidation": null,
"QuoteReferrals": null
}

存储在对象数组中的值

  • 要提取和存储数组中的值,请使用格式:

    $.[0].objectKey.keyName[0].value

  • 示例:要捕获 current_status 的值,请使用:

$.[0].tracking_data.shipment_track[0].current_status

示例 JSON:

[
{
"tracking_data": {
"track_status": 1,
"shipment_track": [
{
"id": 1278937320,
"current_status": "Delivered"
}
]
}
}
]

5. 使用响应路由

  • 响应路由允许您根据响应状态代码 拆分聊天机器人操作

  • 您可以根据 API 响应定义不同的聊天机器人流程。

通过集成 Webhook,您可以增强聊天机器人功能,使其具有外部数据、自动化工作流程和动态改进用户交互的功能。

常见问题 (FAQ)

常规问题

1. Wati 的 Chatbot Builder 中的 Webhook 是什么?

Webhook 允许您的聊天机器人使用 GET 或 POST API 请求从外部应用程序发送或接收实时数据。这有助于创建动态和个性化的聊天机器人响应。

2. 哪些计划支持 Webhook 功能?

Webhook 完全支持 Pro 和 Business 计划。标准计划的用户可以创建和保存带有 Webhook 的聊天机器人,但需要升级才能在 Keyword Action 或 Default Action 工作流程中使用它们。

3. 如何向我的聊天机器人添加 Webhook?

打开 Chatbot Builder,将 Webhook 图标拖动到您的工作流程中,并将其连接到您希望发生 API 调用的聊天机器人步骤。

4. 我可以为 Webhook 请求使用哪些方法和 URL?

您可以使用 GET 或 POST 请求。输入所需的 API 端点,如果想要传递动态用户数据,请在 URL 中插入变量。

5. 标头和请求主体是必需的吗?

不,两者都是可选的。只有 API 需要额外的信息(例如授权或内容类型),才添加标头。仅当您必须将 JSON 数据发送到外部 API 时,才启用主体。

测试和响应处理

6. 如何测试我的 Webhook 是否有效?

使用 Test the request 选项,在设置过程中确认 API 调用是否按预期工作。

7. 我可以存储 API 响应中的值吗?

是的,您可以将返回的值存储在变量或自定义属性中。这适用于简单响应、嵌套 JSON 对象和数组。

8. 如何从嵌套对象或数组中提取值?

对于对象使用点符号(例如:Result.QuoteId),对于列表使用数组格式(例如:$.[0].tracking_data.shipment_track[0].current_status)。

9. 什么是响应路由?

响应路由允许您根据 API 状态代码定义不同的聊天机器人流程,以便聊天机器人能够根据 API 调用的成功或失败以不同的方式响应。

这是否解答了您的问题?