透過 Meta Messenger 整合服務,您可以建立 Meta Messenger 機器人,與使用者互動。
運作方式
整合方式如下:
- 您建立的 Meta 應用程式會使用 Meta Messenger 平台。
- 設定 Conversational Agents (Dialogflow CX) 整合和 Meta 應用程式,讓兩者可以互相通訊。
- Conversational Agents (Dialogflow CX) 整合功能會使用 Meta Messenger API 將訊息傳送給使用者。
- Conversational Agents (Dialogflow CX) 整合功能會做為 Messenger 平台適用的 Meta Webhook,接收使用者的訊息。
設定
如要設定整合,請按照下列步驟操作:
按照「Meta 應用程式開發」一文的步驟建立 Meta 應用程式。
設定 Meta 應用程式,即可使用 Meta Messenger 平台。請按照這篇 Meta Messenger 平台 Webhook 說明文件中的步驟操作,完成下列事項:
- 在 Meta 應用程式中新增 Messenger 平台。
- 訂閱應用程式的 Meta 粉絲專頁。確認頁面訂閱項目已啟用
messages
和messaging_postbacks
。 - 系統會在步驟中提供存取權杖。複製這個值。 這個權杖用於從 Conversational Agents (Dialogflow CX) 控制台設定整合。
- 請勿設定 Webhook 或測試整合功能。
在 Conversational Agents (Dialogflow CX) 控制台中設定整合:
- 前往 Dialogflow CX 主控台。
- 按一下左側面板的「管理」分頁標籤。
- 按一下左側欄選單中的「整合」。
- 按一下「Meta Messenger」圖塊上的「連結」按鈕。
系統會開啟設定對話方塊:
驗證憑證:您可以輸入任何想要的私密權杖。複製這個值。用於設定 Meta Messenger Webhook。
粉絲專頁存取權杖:輸入您在上述 Meta 應用程式設定期間複製的存取權杖。
啟用「開始使用」按鈕:請參閱「開始使用按鈕」一節。
Webhook 網址:複製這個值。用於設定 Meta Messenger Webhook。
開始:按一下即可為代理程式啟動這項整合服務。
完成 Meta 應用程式的設定並進行測試。請按照「Messenger 平台適用的 Meta Webhook」 文件中的步驟,完成下列操作:
- 為應用程式設定 Meta Webhook。使用您在前述步驟複製的「Webhook URL」和「驗證權杖」值。請務必在頁面訂閱中啟用
messages
和messaging_postbacks
。 - 測試應用程式。
- 為應用程式設定 Meta Webhook。使用您在前述步驟複製的「Webhook URL」和「驗證權杖」值。請務必在頁面訂閱中啟用
活動
這項整合功能會叫用下列事件。您可以建立自訂事件處理常式,定義事件觸發時要執行的動作。
事件 | 說明 |
---|---|
FACEBOOK_WELCOME |
在使用者點選 Meta Messenger「開始使用」按鈕時觸發。 |
FACEBOOK_MEDIA |
當來自使用者的訊息包含附件 (例如音訊、圖片、影片等) 時觸發。 |
「開始」按鈕
如何設定 Meta Messenger「開始使用」按鈕:
啟用這項整合服務時,請切換「啟用『開始使用』按鈕」。
這項整合服務會呼叫 Messenger Profile API,為您啟用按鈕。
curl -X POST \ -H "Content-Type: application/json" \ -d '{"get_started": {"payload": "FACEBOOK_WELCOME"}}' \ "https://graph.facebook.com/v10.0/me/messenger_profile?access_token=${PAGE_ACCESS_TOKEN}"
為
FACEBOOK_WELCOME
事件建立自訂事件處理常式。
如要測試這項功能,請按照下列步驟操作:
刪除與 Meta 粉絲專頁的先前對話 (如有)。
- 「開始使用」按鈕只會顯示在新的對話中。
與 Meta 粉絲專頁展開新對話。
按一下「開始使用」按鈕,並驗證自訂事件處理常式傳回的回應。
你隨時可以呼叫 Messenger Profile API 管理「開始使用」按鈕。這項做法在測試時相當實用。
舉例來說,下列要求會檢查「開始使用」按鈕的狀態:
curl -X GET \ "https://graph.facebook.com/v10.0/me/messenger_profile?fields=get_started&access_token=${PAGE_ACCESS_TOKEN}"
下列要求會停用「開始使用」按鈕:
curl -X DELETE \ -H "Content-Type: application/json" \ -d '{"fields": ["get_started"]}' \ "https://graph.facebook.com/v10.0/me/messenger_profile?access_token=${PAGE_ACCESS_TOKEN}"
複合式回應訊息
透過履行中的自訂酬載,即可支援複合式回應訊息。如需訊息格式,請參閱「傳送 API 參數訊息物件」。
舉例來說,下列自訂酬載提供簡單的訊息:
{ "text": "Hello, world" }
以下自訂酬載會提供圖片訊息:
{ "attachment": { "type": "image", "payload": { "url": "https://example.com/test.jpg" } } }
頻道專屬回覆
設定管道專屬回覆後,虛擬服務專員回覆 Meta Messenger 訊息時,會自動使用 DF_CX_FB_MESSENGER
管道。