使用 Webhook 或 Lambda 函數在 Amazon Pinpoint 中建立自訂頻道 - Amazon Pinpoint

支援終止通知:2026 年 10 月 30 日, AWS 將結束對 Amazon Pinpoint 的支援。2026 年 10 月 30 日之後,您將無法再存取 Amazon Pinpoint 主控台或 Amazon Pinpoint 資源 (端點、客群、行銷活動、旅程和分析)。如需詳細資訊,請參閱 Amazon Pinpoint 終止支援注意:與 SMS、語音、行動推播、OTP 和電話號碼驗證相關的 APIs 不受此變更影響,並受 AWS 最終使用者傳訊支援。

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

使用 Webhook 或 Lambda 函數在 Amazon Pinpoint 中建立自訂頻道

Amazon Pinpoint 包含內建支援,幫助您透過推播通知、電子郵件、SMS 和語音管道傳送訊息。建立自訂頻道,也可以設定 Amazon Pinpoint 透過其他管道傳送訊息。Amazon Pinpoint 中的自訂頻道可讓您透過任何具有 API 的服務 (包括第三方服務) 傳送訊息。您可以使用 Webhook 或呼叫 AWS Lambda 函數與 APIs 互動。

您傳送自訂頻道行銷活動的區段可以包含所有類型的端點 (意即,ChannelType 屬性值為 EMAIL (電子郵件)、VOICE (語音)、SMS、CUSTOM (自訂) 或其中一種推播通知端點類型)。

使用 Webhook

如果您使用 Webhook 傳送自訂頻道訊息,Webhook 的 URL 必須以「https://」開頭。Webhook URL 只能包含英數字元,加上下列符號:連字號 (-)、句號 (.)、底線 (_)、波狀符號 (~)、問號 (?)、斜線或實線 (/)、井號或雜湊符號 (#),以及分號 (:)。URL 必須符合 RFC3986 的規定。

您建立指定 webhook URL 的行銷活動時,Amazon Pinpoint 會向該 URL 發出 HTTP HEAD。對 HEAD 請求的回應必須包含一個名為 X-Amz-Pinpoint-AccountId 標頭。此標頭的值必須等於 AWS 您的帳戶 ID。

使用 Lambda 函數

如果您選擇透過建立 Lambda 函數來傳送自訂頻道訊息,最好先熟悉 Amazon Pinpoint 發出的資料。Amazon Pinpoint 行銷活動透過自訂管道傳送訊息時,會將承載傳送到與以下範例類似的目標 Lambda 函數:

{ "Message":{}, "Data":"The payload that's provided in the CustomMessage object in MessageConfiguration", "ApplicationId":"3a9b1f4e6c764ba7b031e7183example", "CampaignId":"13978104ce5d6017c72552257example", "TreatmentId":"0", "ActivityId":"575cb1929d5ba43e87e2478eeexample", "ScheduledTime":"2020-04-08T19:00:16.843Z", "Endpoints":{ "1dbcd396df28ac6cf8c1c2b7fexample":{ "ChannelType":"EMAIL", "Address":"mary.major@example.com", "EndpointStatus":"ACTIVE", "OptOut":"NONE", "Location":{ "City":"Seattle", "Country":"USA" }, "Demographic":{ "Make":"OnePlus", "Platform":"android" }, "EffectiveDate":"2020-04-01T01:05:17.267Z", "Attributes":{ "CohortId":[ "42" ] }, "CreationDate":"2020-04-01T01:05:17.267Z" } } }

事件資料可提供以下屬性:

  • ApplicationId – 行銷活動所屬的 Amazon Pinpoint 專案的 ID。

  • CampaignId – 調用 Lambda 函數的 Amazon Pinpoint 行銷活動的 ID。

  • TreatmentId – 行銷活動變體的 ID。如果您建立了標準行銷活動,此值永遠為 0。如果您建立 A/B 測試行銷活動,此值是介於 0 到 4 之間的整數。

  • ActivityId – 行銷活動正在執行的活動的 ID。

  • ScheduledTime – Amazon Pinpoint 執行活動的時間,以 ISO 8601 格式顯示。

  • Endpoints – 行銷活動鎖定的端點的清單。每個承載最多可包含 50 個端點。如果行銷活動傳送的客群包含超過 50 個端點,Amazon Pinpoint 會重複調用函數,一次最多呼叫 50 個端點,直到所有端點處理完畢為止。

您可以在建立和測試自訂管道 Lambda 函數時使用此範例資料。