View a markdown version of this page

Contoh 4: Fallback server iklan sekunder - AWS Elemental MediaTailor

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

Contoh 4: Fallback server iklan sekunder

Skenario

ADS utama Anda terkadang menampilkan lebih sedikit iklan daripada yang dapat ditahan jeda iklan. Ketika itu terjadi, Anda ingin mengambil iklan tambahan dari server iklan sekunder dan menambahkannya ke daftar iklan, sehingga iklan tambahan dapat mengisi waktu yang tersisa.

Contoh ini menggunakan kait POST_ADS_RESPONSE siklus hidup. VAST_REQUESTFungsi mengambil iklan sekunder, dan mengatur SEQUENTIAL_EXECUTOR proses. Blok keluaran pelaksana menambahkan iklan yang diambil ke daftar iklan, dan melompati pengam RunCondition bilan sekunder sepenuhnya ketika respons utama sudah memiliki cukup iklan.

Konfigurasi fungsi

Fetch function (fetchBackupAds):

{ "FunctionId": "fetchBackupAds", "FunctionType": "VAST_REQUEST", "VastRequestConfiguration": { "Runtime": "JSONATA", "MethodType": "GET", "Url": "{%'https://backup-ads.example.com/vast?sid=' & session.uuid%}", "Headers": { "Accept": "application/xml" }, "RequestTimeoutMilliseconds": 1000, "Output": { "temp.backupAds": "{%response.parsedAds%}" } } }

Urutan (backupAdsFallback):

{ "FunctionId": "backupAdsFallback", "FunctionType": "SEQUENTIAL_EXECUTOR", "SequentialExecutorConfiguration": { "Runtime": "JSONATA", "TimeoutMilliseconds": 2000, "FunctionList": [ { "FunctionId": "fetchBackupAds", "RunCondition": "{%$count(adsResponse.ads) < 3%}" } ], "Output": { "adsResponse.ads": "{%$count(adsResponse.ads) < 3 ? $append(adsResponse.ads, temp.backupAds)[] : adsResponse.ads[]%}" } } }

Pemetaan fungsi

{ "FunctionMapping": { "POST_ADS_RESPONSE": "backupAdsFallback" } }

Apa yang terjadi saat runtime

  1. MediaTailor menerima dan mengurai respons ADS utama, lalu mengaktifkan kait POST_ADS_RESPONSE siklus hidup.

  2. Jika respons utama berisi kurang dari 3 iklan, maka RunCondition akan mengevaluasi true dan fetchBackupAds memanggil server iklan sekunder. MediaTailor kemudian mengurai respons sebagai VAST, menyelesaikan pengalihan pembungkus, dan menulis iklan yang diurai ke. temp.backupAds

  3. Jika respons utama sudah memiliki 3 iklan atau lebih, pengambilan dilewati dan tidak temp.backupAds disetel.

  4. Blok keluaran urutan menulis daftar iklan gabungan keadsResponse.ads. Ketika pengambilan dilewati, kondisi mengambil else cabang dan mengembalikan iklan asli tidak berubah. Karena iklan sekunder diurai oleh VAST_REQUEST fungsi dalam pemanggilan kait yang sama, MediaTailor mengembalikan data VAST lengkap setiap iklan yang ditambahkan sebelum pemilihan iklan.

  5. Pemilihan iklan dilanjutkan dengan daftar gabungan. Jika pengambilan sekunder gagal, temp.backupAds adalah array kosong dan daftar iklan asli digunakan tidak berubah.

catatan

Terakhir [] dalam ekspresi keluaran diperlukan. Tanpa paksaan array, ekspresi yang menghasilkan nol atau satu iklan tidak menghasilkan array, dan output dibuang atau salah diterapkan. Untuk informasi selengkapnya, lihat Post-ads tanggapan.

Untuk informasi selengkapnya tentang bidang yang digunakan dalam contoh ini, lihat Permintaan VAST danPost-ads tanggapan.