摘要
當使用 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]"
}
如何設定網路鉤子
前往 WATI 儀表板
瀏覽至網路鉤子
點擊「新增網路鉤子」
輸入網路鉤子 URL
將狀態設為「啟用」
選取所需的事件(例如,模板訊息已發送、傳送、閱讀等。
按照上述步驟操作,您可以有效地追蹤和管理透過 WATI API 發送的所有模板訊息。
常見問題解答 (FAQs)
傳送模板訊息
1. 如何使用 WATI 的 API 傳送模板訊息?
→ 若要傳送模板訊息,請使用 sendTemplateMessage V2
終端點。您需要在請求中包含 WhatsApp 號碼、模板名稱和授權令牌。請參閱文件中的 cURL PCF範例請求以了解詳細資訊。
2. 在 API 請求中需要包含哪些參數?
→ 必填參數包括 whatsappNumber
、template_name
、broadcast_name
和 parameters
(如果適用)。請務必提供有效的授權令牌。
追蹤訊息狀態
3. 如何追蹤已傳送訊息的狀態?
→ 每個 API 回應都包含 localMessageId
,可用於透過網路鉤子系統追蹤訊息狀態。網路鉤子提供已傳送、已送達、已閱讀、已回覆和失敗訊息的即時報告。
4. 哪個網路鉤子事件會追蹤訊息發送?”
→ templateMessageSent_v2
網路鉤子事件會追蹤訊息發送。它包含 localMessageId
、whatsappMessageId
和其他元數據。
5.如何知道訊息已傳送?
→ sentMessageDELIVERED_v2
網路鉤子事件表示訊息已傳送。statusString
欄位將顯示 Delivered
。
6.如何追蹤訊息已閱讀?
→ 當收件者閱讀訊息時,會觸發 sentMessageREAD_v2
網路鉤子事件。statusString
欄位將顯示 Read
。
7.可以追蹤用戶是否回覆訊息?
→ 是,當收件者回覆訊息時,會觸發 sentMessageREPLIED_v2
網路鉤子事件。
處理失敗
8.如果模板訊息發送失敗,會發生什麼情況?
→ 如果訊息失敗,會觸發 templateMessageFailed
網路鉤子事件。它會提供 failedCode
和 failedDetail
用以解釋失敗原因。
9.在哪裡可以找到有關失敗代碼的詳細資訊?
→ 失敗代碼包含在 templateMessageFailed
網路鉤子載體中。您可以參考 Meta 的文件,了解每個錯誤代碼的詳細說明。
設定網路鉤子
10.如何在 WATI 中啟用網路鉤子?
→ 若要啟用網路鉤子:
前往 WATI 儀表板。
瀏覽至
網路鉤子
。點擊
新增網路鉤子
。輸入網路鉤子網址。
將狀態設為
啟用
選取您要追蹤的網路鉤子事件。
11.為了解除追蹤訊息整個生命週期,哪些網路鉤子事件應啟用?
→ 若要追蹤整個訊息生命週期,請啟用以下事件:
templateMessageSent_v2
sentMessageDELIVERED_v2
sentMessageREAD_v2
sentMessageREPLIED_v2
messageReceived
templateMessageFailed