View a markdown version of this page

Fungsi panduan mulai cepat - AWS Elemental MediaTailor

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

Fungsi panduan mulai cepat

Panduan ini memandu Anda melalui pembuatan fungsi pertama Anda, melampirkannya ke konfigurasi pemutaran, dan memverifikasi bahwa itu berjalan. Pada akhirnya, Anda akan memiliki fungsi kerja yang mengklasifikasikan setiap jenis perangkat pemirsa (ctv,mobile, ataudesktop) dan menyimpannya sebagai parameter pemain yang tersedia di setiap permintaan ADS.

Prasyarat

Sebelum memulai, pastikan Anda memiliki konfigurasi MediaTailor pemutaran yang ada. Jika Anda tidak memilikinya, lihat Memulai dengan MediaTailor.

Langkah 1: Buat fungsi

Pada langkah ini, Anda membuat fungsi yang mengklasifikasikan jenis perangkat penampil berdasarkan string agen pengguna dan menyimpan hasilnya dalam parameter pemain. Fungsi ini menggunakan tipe keluaran Kustom (tidak ada panggilan API eksternal) dengan Referensi ekspresi Jsonata ekspresi untuk mengevaluasi agen pengguna.

  1. Buka MediaTailor konsol di https://console.aws.amazon.com/mediatailor/.

  2. Di panel navigasi, pilih Fungsi.

  3. Pilih Buat fungsi.

  4. Dalam modal create wizard, pilih Create from scratch, lalu pilih Continue.

  5. Di bawah Jenis fungsi, pilih ubin keluaran Kustom.

  6. Di bawah Detail fungsi, masukkan yang berikut ini:

    • ID Fungsi: myFirstFunction

    • Deskripsi: Classify device type from user agent

  7. Di bawah Konfigurasi keluaran khusus, di bagian Output, tambahkan satu baris:

    • Kunci: player_params.deviceType

    • Nilai: {% $contains(session.user_agent, 'CTV') ? 'ctv' : $contains(session.user_agent, 'Mobile') ? 'mobile' : 'desktop' %}

  8. Pilih Buat fungsi.

Pemberitahuan sukses mengonfirmasi bahwa fungsi telah dibuat, dan Anda diarahkan ke halaman detail fungsi.

Konfigurasi fungsi yang dihasilkan adalah:

{ "FunctionId": "myFirstFunction", "FunctionType": "CUSTOM_OUTPUT", "Description": "Classify device type from user agent", "CustomOutputConfiguration": { "Runtime": "JSONATA", "Output": { "player_params.deviceType": "{% $contains(session.user_agent, 'CTV') ? 'ctv' : $contains(session.user_agent, 'Mobile') ? 'mobile' : 'desktop' %}" } } }

Langkah 2: Lampirkan fungsi ke konfigurasi pemutaran

Petakan fungsi ke kait siklus hidup pada konfigurasi pemutaran Anda. Pemetaan memberi tahu MediaTailor kapan harus menjalankan fungsi.

  1. Di panel navigasi, pilih Konfigurasi.

  2. Pilih konfigurasi pemutaran yang ingin Anda perbarui.

  3. Pilih Edit.

  4. Perluas bagian konfigurasi Fungsi.

  5. Untuk hook inisialisasi Sesi, pilih myFirstFunction dari dropdown.

  6. Pilih Simpan.

Ini menempel pada myFirstFunction kait PRE_SESSION_INISIALISASI siklus hidup. Pemetaan fungsi yang dihasilkan adalah:

{ "FunctionMapping": { "PRE_SESSION_INITIALIZATION": "myFirstFunction" } }

MediaTailor menjalankan fungsi sekali di awal setiap sesi baru pada konfigurasi pemutaran ini.

Langkah 3: Mulai sesi dan verifikasi fungsi berjalan

Mulai sesi pemutaran baru untuk memicu fungsi. Gunakan permintaan inisialisasi sesi ke titik akhir inisialisasi sesi konfigurasi pemutaran Anda.

MediaTailor secara otomatis menerbitkan CloudWatch metrik untuk setiap eksekusi fungsi — tidak diperlukan keikutsertaan. Setelah memulai sesi, periksa metrik berikut di AWS/MediaTailor namespace untuk mengonfirmasi fungsi Anda berjalan:

  • PreSessionInitHook.Invocations— Mengonfirmasi kail ditembakkan.

  • PreSessionInitHook.Errors— Harus 0 jika fungsi berhasil.

  • Function.Invocations— Mengonfirmasi fungsi individu yang dijalankan. Metrik ini mencakupFunctionId,FunctionType, dan HookType dimensi sehingga Anda dapat memfilter myFirstFunction secara khusus.

Jika fungsi gagal, MediaTailor memancarkan peristiwa log kesalahan ke Manifest Logs secara default (tidak diperlukan konfigurasi):

  • PRE_SESSION_INIT_HOOK_ERROR Hook-level Kegagalan dengan errorType dancause.

  • PRE_SESSION_INIT_FUNCTION_ERROR— Function-level kegagalan dengan detail spesifik functionId dan kesalahan.

Contoh berikut menunjukkan PRE_SESSION_INIT_FUNCTION_ERROR peristiwa untuk kesalahan sintaks dalam ekspresi fungsi:

{ "eventTimestamp": "2024-01-01T12:00:00.076000000Z", "eventType": "PRE_SESSION_INIT_FUNCTION_ERROR", "eventDescription": "Function execution failed", "awsAccountId": "123456789012", "originId": "my-config", "sessionId": "session-123", "requestId": "req-abc", "eventId": "5dc6f040-0f72-4e8c-a64e-25eeef62708c", "functionId": "myFirstFunction", "functionType": "CUSTOM_OUTPUT", "executionTimeMs": 2, "errorType": "SYNTAX_ERROR", "cause": "Expected \")\" before end of expression", "input": {} }

Gunakan eventId bidang untuk mengkorelasikan peristiwa kesalahan hook dan fungsi untuk eksekusi yang sama. errorTypeBidang memberi tahu Anda kelas kegagalan — lihat Pemecahan masalah dan pemantauan daftar lengkap jenis kesalahan dan perbaikan.

catatan

Untuk pencatatan sukses yang mendetail, ikut PRE_SESSION_INIT_HOOK_SUMMARY serta dan PRE_SESSION_INIT_FUNCTION_COMPLETED acara dalam konfigurasi Manifest Log Anda. Ringkasan peristiwa menunjukkan hasil hook untuk setiap eksekusi. Peristiwa yang telah selesai menampilkan masukan, output, dan request/response detail HTTP setiap fungsi. Ini dinonaktifkan secara default untuk meminimalkan biaya log. Untuk informasi selengkapnya, lihat Pemecahan masalah dan pemantauan.

Apa yang terjadi di balik layar

Berikut adalah alur permintaan lengkap untuk fungsi yang baru saja Anda buat:

  1. Pemain memulai sesi dengan MediaTailor.

  2. MediaTailor mengaktifkan hook PRE_SESSION_INITIALIZATION siklus hidup dan berjalan. myFirstFunction

  3. Fungsi mengevaluasi session.user_agent bidang dan menulisctv,mobile, atau desktop keplayer_params.deviceType.

  4. MediaTailor membuat sesi dan mengembalikan manifes ke pemain.

  5. Pemain menemukan jeda iklan selama pemutaran.

  6. MediaTailor mengaktifkan kait PRE_ADS_REQUEST siklus hidup, lalu membuat permintaan ADS. Karena deviceType disimpan dalam parameter pemain, ini tersedia untuk dimasukkan dalam URL permintaan ADS melalui substitusi variabel dinamis.

  7. ADS menggunakan jenis perangkat untuk menampilkan materi iklan bertarget.

  8. MediaTailor menjahit iklan ke manifes dan mengembalikannya ke pemain.

Jika fungsi gagal karena alasan apa pun, MediaTailor buang output dan lanjutkan seolah-olah tidak ada fungsi yang terpasang. Penampil masih melihat iklan — hanya tanpa penargetan jenis perangkat.

Topik yang disarankan

Anda sekarang memiliki fungsi kerja yang terpasang pada konfigurasi pemutaran. Dari sini:

  • Untuk mempelajari bidang input dan ruang nama keluaran yang tersedia di setiap kait siklus hidup, lihat. Pengait siklus hidup

  • Untuk mempelajari tentang berbagai jenis fungsi dan cara merantainya bersama-sama, lihatJenis dan komposisi fungsi.

  • Untuk melihat contoh kerja lengkap, lihatContoh fungsi.