跳至主要內容

追蹤範本訊息狀態使用 Webhooks

昨日已更新

摘要

當使用 WATI 的 傳送模板訊息 API 發送模板訊息時,追蹤其狀態 - 已傳送、已送達、已閱讀、已回覆或失敗非常重要。這有助於更清楚地看到並管理客戶互動。

指示

發送模板訊息

要使用 WATI 的 API 發送模板訊息,請使用 sendTemplateMessage V2 終端點。

cURL 範例請求

curl --location 'https://live-server-123.wati.io/api/v2/sendTemplateMessage?whatsappNumber=<whatsappNumber>' \
  --header 'Authorization: Bearer <Token>' \
  --header 'Content-Type: application/json' \
  --data '{
"template_name": "update_for_you",
"broadcast_name": "JPTestBroadcast",
"parameters": []
}'

API 回應範例

{
"result": true,
"error": null,
"templateName": "update_for_you",
"receivers": [
{
"localMessageId": "d38f0c3a-e833-4725-a894-53a2b1dc1af6",
"waId": "<whatsappNumber>",
"isValidWhatsAppNumber": true,
"errors": []
}
],
"parameters": []
}

重點欄位:

  • localMessageId – 追蹤訊息狀態的唯一標識符,透過網路鉤子系統使用。

使用網路鉤子追蹤訊息狀態

1. 模板訊息已發送

觸發條件: 模板訊息已成功發送。

  • 網路鉤子事件: templateMessageSent_v2

  • 重點欄位: localMessageId

  • 狀態字串: "SENT"

網路鉤子載體範例

{
"eventType": "templateMessageSent_v2",
"localMessageId": "d38f0c3a-e833-4725-a894-53a2b1dc1af6",
"id": "640c8fd48b67615f886237b8",
"whatsappMessageId": "gBEGkXmJQZVJAgkRHwjjZsITS6M",
"templateId": "63766ae83b2e064905789c63",
"templateName": "update_for_you",
"created": "2023-03-11T14:27:32.9655388Z",
"statusString": "SENT",
"sourceType": "API"
}

2. 訊息已傳送

觸發條件: 訊息成功送達給收件者。

  • 網路鉤子事件: sentMessageDELIVERED_v2

  • 狀態字串: "Delivered"

網路鉤子載體範例

{
"eventType": "sentMessageDELIVERED_v2",
"statusString": "Delivered",
"localMessageId": "d38f0c3a-e833-4725-a894-53a2b1dc1af6",
"id": "640c8fd48b67615f886237b8",
"whatsappMessageId": "gBEGkXmJQZVJAgkRHwjjZsITS6M",
"timestamp": "1678544854",
"operatorEmail": "[email protected]"
}

3. 訊息已讀取

觸發條件: 收件者閱讀了訊息。

  • 網路鉤子事件: sentMessageREAD_v2

  • 狀態字串: "Read"

網路鉤子載體範例

{
"eventType": "sentMessageREAD_v2",
"statusString": "Read",
"localMessageId": "d38f0c3a-e833-4725-a894-53a2b1dc1af6",
"id": "640c8fd48b67615f886237b8",
"whatsappMessageId": "gBEGkXmJQZVJAgkRHwjjZsITS6M",
"timestamp": "1678545043",
"operatorEmail": "[email protected]"
}

4. 訊息已回覆

觸發條件: 收件者回覆了訊息。

  • 網路鉤子事件: sentMessageREPLIED_v2

  • 狀態字串: "Replied"

網路鉤子載體範例

{
"eventType": "sentMessageREPLIED_v2",
"statusString": "Replied",
"localMessageId": "d38f0c3a-e833-4725-a894-53a2b1dc1af6",
"id": "640c8fd48b67615f886237b8",
"whatsappMessageId": "gBEGkXmJQZVJAgkRHwjjZsITS6M",
"timestamp": "1678545074",
"operatorEmail": "[email protected]"
}

5. 訊息已接收

觸發條件: 用戶向您的 WATI 號碼發送訊息。

  • 網路鉤子事件: messageReceived

  • 用途: 可與 模板訊息已發送 配合使用,以追蹤快速回覆按鈕點擊次數。

網路鉤子載體範例

{
"eventType": "messageReceived",
"statusString": "Received",
"localMessageId": "fd29c1f-9033-59b2-7d72-5ac964c4c8a7",
"whatsappMessageId": "wamid.HBgMOAE4NjY4NDkzNjAxFAIAERgSOTEENzFCNjEwMkNDNENGQUJGAA==",
"text": "Hello, I need help!",
"timestamp": "1665645642",
"operatorEmail": "[email protected]"
}

6. 模板訊息失敗

觸發條件: 模板訊息未成功發送。

  • 網路鉤子事件: templateMessageFailed

  • 失敗細節: 包括失敗代碼和錯誤訊息。

網路鉤子載體範例

{
"eventType": "templateMessageFailed",
"statusString": "Failed",
"localMessageId": "fd29c1f-9033-59b2-7d72-5ac964c4c8a7",
"failedCode": "131026",
"failedDetail": "Message undeliverable",
"id": "66b2531d4931581381944612",
"whatsappMessageId": "wamid.HBgMOAE4NjY4NDkzNjAxFAIAERgSOTEENzFCNjEwMkNDNENGQUJGAA==",
"timestamp": "1665645642",
"operatorEmail": "[email protected]"
}

如何設定網路鉤子

  1. 前往 WATI 儀表板

  2. 瀏覽至網路鉤子

  3. 點擊「新增網路鉤子」

  4. 輸入網路鉤子 URL

  5. 將狀態設為「啟用」

  6. 選取所需的事件(例如,模板訊息已發送、傳送、閱讀等。

按照上述步驟操作,您可以有效地追蹤和管理透過 WATI API 發送的所有模板訊息。

常見問題解答 (FAQs)

傳送模板訊息

1. 如何使用 WATI 的 API 傳送模板訊息?

→ 若要傳送模板訊息,請使用 sendTemplateMessage V2 終端點。您需要在請求中包含 WhatsApp 號碼、模板名稱和授權令牌。請參閱文件中的 cURL PCF範例請求以了解詳細資訊。

2. 在 API 請求中需要包含哪些參數?

→ 必填參數包括 whatsappNumbertemplate_namebroadcast_nameparameters(如果適用)。請務必提供有效的授權令牌。

追蹤訊息狀態

3. 如何追蹤已傳送訊息的狀態?

→ 每個 API 回應都包含 localMessageId,可用於透過網路鉤子系統追蹤訊息狀態。網路鉤子提供已傳送、已送達、已閱讀、已回覆和失敗訊息的即時報告。

4. 哪個網路鉤子事件會追蹤訊息發送?”

templateMessageSent_v2 網路鉤子事件會追蹤訊息發送。它包含 localMessageIdwhatsappMessageId 和其他元數據。

5.如何知道訊息已傳送?

sentMessageDELIVERED_v2 網路鉤子事件表示訊息已傳送。statusString 欄位將顯示 Delivered

6.如何追蹤訊息已閱讀?

→ 當收件者閱讀訊息時,會觸發 sentMessageREAD_v2 網路鉤子事件。statusString 欄位將顯示 Read

7.可以追蹤用戶是否回覆訊息?

→ 是,當收件者回覆訊息時,會觸發 sentMessageREPLIED_v2 網路鉤子事件。

處理失敗

8.如果模板訊息發送失敗,會發生什麼情況?

→ 如果訊息失敗,會觸發 templateMessageFailed 網路鉤子事件。它會提供 failedCodefailedDetail 用以解釋失敗原因。

9.在哪裡可以找到有關失敗代碼的詳細資訊?

→ 失敗代碼包含在 templateMessageFailed 網路鉤子載體中。您可以參考 Meta 的文件,了解每個錯誤代碼的詳細說明。

設定網路鉤子

10.如何在 WATI 中啟用網路鉤子?

→ 若要啟用網路鉤子:

  • 前往 WATI 儀表板。

  • 瀏覽至 網路鉤子

  • 點擊 新增網路鉤子

  • 輸入網路鉤子網址。

  • 將狀態設為 啟用

  • 選取您要追蹤的網路鉤子事件。

11.為了解除追蹤訊息整個生命週期,哪些網路鉤子事件應啟用?

→ 若要追蹤整個訊息生命週期,請啟用以下事件:

  • templateMessageSent_v2

  • sentMessageDELIVERED_v2

  • sentMessageREAD_v2

  • sentMessageREPLIED_v2

  • messageReceived

  • templateMessageFailed

是否回答了您的問題?