跳至主要內容

如何在 Wati 的聊天機器人建立中使用 Webhook

摘要

Wati 的聊天機器人建置器中的 Webhooks 可讓您在聊天機器人與外部應用程式之間,使用GETPOST API 請求來傳送和接收即時資料。此功能可啟用動態的聊天機器人互動,例如擷取使用者詳細資訊、驗證資料或與第三方服務整合。

注意:聊天機器人 Webhook 節點功能僅在Pro 與 Business 計畫中提供。

操作說明

如何在聊天機器人建置器中使用 Webhooks

1. 將 Webhook 新增至您的聊天機器人

  • 開啟 Wati 聊天機器人建置器

  • Webhook 圖示拖曳至聊天機器人工作流程中。

  • 將其連接到相關的聊天機器人步驟。

2. 設定 Webhook 節點

URL 和方法

  • 選擇一個請求方法GETPOST

  • 輸入外部 API 的URL 端點

  • 透過變數按鈕插入變數,讓 URL 變得動態。


    範例:

    https://webhook-wa-testing.clare.ai/123456789?name={{name}}

自訂標頭

  • 標頭可讓您在請求中包含額外詳細資訊,例如內容類型或授權。

  • 標頭是選填的,預設為關閉

  • 標頭必須遵循鍵值格式。

範例:

  • = Content-Type

  • = application/json

自訂內文

  • 請求內文是您要傳送至外部 API 的資料所在。

  • 內文是選填的,預設為關閉

  • 啟用時,內文必須一律為JSON 格式

設定測試變數

  • 手動定義測試變數,以便在設定 webhook 時模擬 API 回應。

3. 測試 Webhook 請求

  • 按一下測試請求,以檢查 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 回應定義不同的聊天機器人流程。

透過整合 Webhooks,您可以利用外部資料來增強聊天機器人功能、自動化工作流程,並動態改善使用者互動。

常見問題 (FAQ)

一般問題

1. Wati 的聊天機器人建置器中的 Webhooks 是什麼?

Webhooks 讓您的聊天機器人能夠使用 GET 或 POST API 請求,從外部應用程式傳送或接收即時資料。這有助於您建立動態且個人化的聊天機器人回應。

2. 哪些計畫支援 Webhook 功能?

Webhook 功能在 Pro 和 Business 計畫中完全可用。

3. 如何將 Webhook 新增至我的聊天機器人?

開啟聊天機器人建置器,將 Webhook 圖示拖曳至您的工作流程,然後將其連接到您希望 API 呼叫發生的聊天機器人步驟。

4. 我可以使用哪些方法和 URL 進行 Webhook 請求?

您可以使用 GET 或 POST 請求。輸入所需的 API 端點,如果您想傳遞動態的使用者資料,請在 URL 中插入變數。

5. 標頭和請求內文是必需的嗎?

否,兩者均為選填。只有在 API 需要額外詳細資訊(例如授權或內容類型)時才添加標頭。只有當您必須將 JSON 資料傳送至外部 API 時,才啟用內文。

測試與回應處理

6. 如何測試我的 Webhook 是否正在運作?

在設定過程中,使用測試請求選項來確認 API 呼叫是否如預期般運作。

7. 我可以儲存 API 回應中的值嗎?

是的,您可以將傳回的值儲存在變數或自訂屬性中。這適用於簡單的回應、巢狀 JSON 物件和陣列。

8. 如何從巢狀物件或陣列中提取值?

對物件使用點語法(例如:Result.QuoteId),對列表使用陣列格式(例如:$.[0].tracking_data.shipment_track[0].current_status)。

9. 什麼是回應路由?

回應路由可讓您根據 API 狀態碼定義不同的聊天機器人流程,以便聊天機器人能夠針對成功的或失敗的 API 呼叫做出不同的回應。

是否回答了您的問題?