Buat saluran khusus di Amazon Pinpoint menggunakan fungsi webhook atau Lambda - Amazon Pinpoint

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Buat saluran khusus di Amazon Pinpoint menggunakan fungsi webhook atau Lambda

Amazon Pinpoint menyertakan dukungan bawaan untuk mengirim pesan melalui notifikasi push, emailSMS, dan saluran suara. Anda juga dapat mengonfigurasi Amazon Pinpoint untuk mengirim pesan melalui saluran lain dengan membuat saluran khusus. Saluran khusus di Amazon Pinpoint memungkinkan Anda mengirim pesan melalui layanan apa pun yang memilikiAPI, termasuk layanan pihak ketiga. Anda dapat berinteraksi APIs dengan menggunakan webhook, atau dengan memanggil AWS Lambda fungsi.

Segmen yang Anda kirimi kampanye saluran kustom dapat berisi titik akhir dari semua jenis (yaitu titik akhir yang memiliki nilai ChannelType atributEMAIL,,,, VOICE SMSCUSTOM, atau salah satu dari berbagai jenis titik akhir pemberitahuan push).

Gunakan webhook

Jika Anda menggunakan webhook untuk mengirim pesan saluran khusus, webhook harus dimulai dengan "https://". The webhook URL can only contain alphanumeric characters, plus the following symbols: hyphen (-), period (.), underscore (_), tilde (~), question mark (?), slash or solidus (/), pound or hash sign (#), and semicolon (:). The URL has to comply with. URL RFC3986

Saat Anda membuat kampanye yang menentukan webhookURL, Amazon Pinpoint mengeluarkannya. HTTP HEAD URL Respons terhadap HEAD permintaan harus berisi header yang disebutX-Amz-Pinpoint-AccountId. Nilai header ini harus sama dengan ID AWS akun Anda.

Gunakan fungsi Lambda

Jika Anda memilih untuk mengirim pesan saluran khusus dengan membuat fungsi Lambda, sebaiknya Anda terlebih dahulu membiasakan diri dengan data yang dipancarkan Amazon Pinpoint. Saat kampanye Amazon Pinpoint mengirim pesan melalui saluran khusus, kampanye tersebut akan mengirimkan payload ke fungsi Lambda target yang menyerupai contoh berikut:

{ "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" } } }

Data acara menyediakan atribut berikut:

  • ApplicationId— ID proyek Amazon Pinpoint yang menjadi milik kampanye tersebut.

  • CampaignId— ID kampanye Amazon Pinpoint yang memanggil fungsi Lambda.

  • TreatmentId— ID dari varian kampanye. Jika Anda membuat kampanye standar, nilai ini selalu 0. Jika Anda membuat kampanye pengujian A/B, nilai ini adalah bilangan bulat antara 0 dan 4.

  • ActivityId— ID kegiatan yang dilakukan oleh kampanye.

  • ScheduledTime— Waktu ketika Amazon Pinpoint mengeksekusi kampanye, ditampilkan dalam format ISO 8601.

  • Endpoints— Daftar titik akhir yang ditargetkan oleh kampanye. Setiap muatan dapat berisi hingga 50 titik akhir. Jika segmen tempat kampanye dikirim berisi lebih dari 50 titik akhir, Amazon Pinpoint memanggil fungsi tersebut berulang kali, dengan hingga 50 titik akhir sekaligus, hingga semua titik akhir diproses.

Anda dapat menggunakan data sampel ini saat membuat dan menguji fungsi Lambda saluran kustom Anda.