

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

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

# 使用 Webhook 或 Lambda 函數在 Amazon Pinpoint 中建立自訂頻道
<a name="channels-custom"></a>

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

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

## 使用 Webhook
<a name="channels-custom-webhook-create"></a>

如果您使用 Webhook 傳送自訂頻道訊息，Webhook 的 URL 必須以「https：//」開頭。Webhook URL 只能包含英數字元，加上下列符號：連字號 (-)、句號 (.)、底線 (\$1)、波狀符號 (\$1)、問號 (?)、斜線或實線 (/)、井號或雜湊符號 (\$1)，以及分號 (:)。URL 必須符合 [RFC3986](https://datatracker.ietf.org/doc/html/rfc3986) 的規定。

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

## 使用 Lambda 函數
<a name="channels-custom-LAM-create"></a>

如果您選擇透過建立 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 函數時使用此範例資料。