Menggunakan Amazon EventBridge dengan Streaming IVS Waktu Nyata - Amazon IVS

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

Menggunakan Amazon EventBridge dengan Streaming IVS Waktu Nyata

Anda dapat menggunakan Amazon EventBridge untuk memantau aliran Amazon Interactive Video Service (IVS).

Amazon IVS mengirimkan peristiwa perubahan tentang status aliran Anda ke Amazon EventBridge. Semua acara yang dikirimkan valid. Namun, acara dikirim dengan upaya terbaik, yang berarti tidak ada jaminan bahwa:

  • Acara dikirimkan - Acara yang ditunjuk dapat terjadi (misalnya, peserta yang dipublikasikan) tetapi ada kemungkinan bahwa Amazon tidak IVS akan mengirim acara yang sesuai ke EventBridge. Amazon IVS mencoba menyampaikan acara selama beberapa jam sebelum menyerah.

  • Acara yang dikirimkan akan tiba dalam jangka waktu tertentu — Anda mungkin menerima acara hingga beberapa jam.

  • Acara dikirimkan secara berurutan - Acara mungkin rusak, terutama jika dikirim dalam waktu singkat satu sama lain. Misalnya, Anda dapat melihat Peserta Tidak Diterbitkan sebelum Peserta Diterbitkan.

Meskipun jarang terjadi peristiwa yang hilang, terlambat, atau tidak berurutan, Anda harus menangani kemungkinan ini jika Anda menulis program penting bisnis yang bergantung pada urutan atau keberadaan acara pemberitahuan.

Anda dapat membuat EventBridge aturan untuk salah satu acara berikut.

Jenis Acara Peristiwa Dikirim Ketika...
IVSPerubahan Status Komposisi Kegagalan Tujuan Upaya untuk output ke Destination gagal. Misalnya, penyiaran ke saluran gagal karena tidak ada kunci aliran atau siaran lain yang terjadi.
IVSPerubahan Status Komposisi Tujuan Mulai Output ke Destination berhasil dimulai.
IVSPerubahan Status Komposisi Tujuan Akhir Output ke Tujuan selesai.
IVSPerubahan Status Komposisi Tujuan Menghubungkan Kembali Output ke Destination terputus dan penyambungan kembali sedang dicoba.
IVSPerubahan Status Komposisi Sesi Mulai Sesi Komposisi telah dibuat. Peristiwa ini diaktifkan ketika pipeline proses Komposisi berhasil diinisialisasi. Pada titik ini, pipeline Komposisi telah berhasil berlangganan Stage dan menerima media dan mampu membuat video.
IVSPerubahan Status Komposisi Akhir Sesi Sesi Komposisi selesai.
IVSPerubahan Status Komposisi Kegagalan Sesi Pipa Komposisi gagal diinisialisasi karena sumber daya Stage tidak tersedia, atau kesalahan internal lainnya.
IVSPerubahan Status Rekaman Peserta Merekam Mulai Penerbit telah terhubung ke panggung dan sedang direkam ke S3.
IVSPerubahan Status Rekaman Peserta Rekaman Akhir Penerbit telah terputus dari panggung dan semua file yang tersisa telah ditulis ke S3.
IVSPerubahan Status Rekaman Peserta Merekam Kegagalan Mulai Penerbit terhubung ke panggung, tetapi perekaman gagal dimulai karena kesalahan (misalnya, bucket S3 tidak ada atau tidak berada di wilayah yang benar). Streaming langsung penerbit ini tidak direkam
IVSPerubahan Status Rekaman Peserta Merekam Kegagalan Akhir Perekaman berakhir dengan kegagalan, karena kesalahan yang ditemui selama perekaman (misalnya, jika upaya untuk menulis daftar putar media terus gagal). Beberapa objek mungkin masih ditulis ke lokasi penyimpanan yang dikonfigurasi.
IVSPembaruan Tahap Peserta Diterbitkan Seorang peserta mulai menerbitkan ke panggung.
IVSPembaruan Tahap Peserta Tidak Diterbitkan Seorang peserta telah berhenti menerbitkan ke panggung.
IVSPembaruan Tahap Kesalahan Publikasikan Peserta Upaya peserta untuk mempublikasikan ke tahap gagal.

Membuat EventBridge Aturan Amazon untuk Amazon IVS

Anda dapat membuat aturan yang memicu peristiwa yang dipancarkan oleh Amazon. IVS Ikuti langkah-langkah di Buat aturan di Amazon EventBridge di Panduan EventBridge Pengguna Amazon. Saat memilih layanan, pilih Layanan Video Interaktif (IVS).

Contoh: Perubahan Status Komposisi

Kegagalan Tujuan: Peristiwa ini dikirim ketika upaya untuk output ke Tujuan gagal. Misalnya, penyiaran ke saluran gagal karena tidak ada kunci aliran atau siaran lain yang terjadi.

{ "version": "0", "id": "01234567-0123-0123-0123-012345678901", "detail-type": "IVS Composition State Change", "source": "aws.ivs", "account": "aws_account_id", "time": "2017-06-12T10:23:43Z", "region": "us-east-1", "resources": [ "arn:aws:ivs:us-east-1:aws_account_id:composition/123456789012" ], "detail": { "event_name": "Destination Failure", "stage_arn": "<stage-arn>", "id": "<Destination-id>", "reason": "eg. stream key invalid" } }

Tujuan Mulai: Acara ini dikirim ketika output ke Tujuan berhasil dimulai.

{ "version": "0", "id": "01234567-0123-0123-0123-012345678901", "detail-type": "IVS Composition State Change", "source": "aws.ivs", "account": "aws_account_id", "time": "2017-06-12T10:23:43Z", "region": "us-east-1", "resources": [ "arn:aws:ivs:us-east-1:aws_account_id:composition/123456789012" ], "detail": { "event_name": "Destination Start", "stage_arn": "<stage-arn>", "id": "<destination-id>", } }

Tujuan Akhir: Acara ini dikirim ketika output ke Tujuan selesai.

{ "version": "0", "id": "01234567-0123-0123-0123-012345678901", "detail-type": "IVS Composition State Change", "source": "aws.ivs", "account": "aws_account_id", "time": "2017-06-12T10:23:43Z", "region": "us-east-1", "resources": [ "arn:aws:ivs:us-east-1:aws_account_id:composition/123456789012" ], "detail": { "event_name": "Destination End", "stage_arn": "<stage-arn>", "id": "<Destination-id>", } }

Destination Reconnecting: Peristiwa ini dikirim ketika output ke Destination terputus dan penyambungan kembali sedang dicoba.

{ "version": "0", "id": "01234567-0123-0123-0123-012345678901", "detail-type": "IVS Composition State Change", "source": "aws.ivs", "account": "aws_account_id", "time": "2017-06-12T10:23:43Z", "region": "us-east-1", "resources": [ "arn:aws:ivs:us-east-1:aws_account_id:composition/123456789012" ], "detail": { "event_name": "Destination Reconnecting", "stage_arn": "<stage-arn>", "id": "<Destination-id>", } }

Sesi Mulai: Acara ini dikirim ketika sesi Komposisi dibuat. Peristiwa ini diaktifkan ketika pipeline proses Komposisi berhasil diinisialisasi. Pada titik ini, pipeline Komposisi telah berhasil berlangganan Stage dan menerima media dan mampu membuat video.

{ "version": "0", "id": "01234567-0123-0123-0123-012345678901", "detail-type": "IVS Composition State Change", "source": "aws.ivs", "account": "aws_account_id", "time": "2017-06-12T10:23:43Z", "region": "us-east-1", "resources": [ "arn:aws:ivs:us-east-1:aws_account_id:composition/123456789012" ], "detail": { "event_name": "Session Start", "stage_arn": "<stage-arn>" } }

Session End: Acara ini dikirim ketika sesi Komposisi selesai dan semua sumber daya dihapus.

{ "version": "0", "id": "01234567-0123-0123-0123-012345678901", "detail-type": "IVS Composition State Change", "source": "aws.ivs", "account": "aws_account_id", "time": "2017-06-12T10:23:43Z", "region": "us-east-1", "resources": [ "arn:aws:ivs:us-east-1:aws_account_id:composition/123456789012" ], "detail": { "event_name": "Session End", "stage_arn": "<stage-arn>" } }

Kegagalan Sesi: Acara ini dikirim ketika pipeline Komposisi gagal diinisialisasi karena sumber daya Tahap tidak tersedia, tidak ada peserta yang berada di panggung, atau kesalahan internal lainnya.

{ "version": "0", "id": "01234567-0123-0123-0123-012345678901", "detail-type": "IVS Composition State Change", "source": "aws.ivs", "account": "aws_account_id", "time": "2017-06-12T10:23:43Z", "region": "us-east-1", "resources": [ "arn:aws:ivs:us-east-1:aws_account_id:composition/123456789012" ], "detail": { "event_name": "Session Failure", "stage_arn": "<stage-arn>", "reason": "eg. no participants in the stage" } }

Contoh: Perubahan Status Pencatatan Peserta Individu

Merekam Mulai: Acara ini dikirim ketika penerbit telah terhubung ke panggung dan sedang direkam ke S3.

{ "version": "0", "id": "12345678-1a23-4567-a1bc-1a2b34567890", "detail-type": "IVS Participant Recording State Change", "source": "aws.ivs", "account": "123456789012", "time": "2024-03-13T22:09:58Z", "region": "us-east-1", "resources": ["arn:aws:ivs:us-west-2:aws_account_id:stage/AbCdef1G2hij"], "detail": { "session_id": "st-ZyXwvu1T2s", "event_name": "Recording Start", "participant_id": "xYz1c2d3e4f", "recording_s3_bucket_name": "bucket-name", "recording_s3_key_prefix": "<stage_id>/<session_id>/<participant_id>/2024-01-01T12-00-55Z" } }

Recording End: Acara ini dikirim ketika penerbit telah terputus dari panggung dan semua file yang tersisa telah ditulis ke S3.

{ "version": "0", "id": "12345678-1a23-4567-a1bc-1a2b34567890", "detail-type": "IVS Participant Recording State Change", "source": "aws.ivs", "account": "123456789012", "time": "2024-03-13T22:19:04Z", "region": "us-east-1", "resources": ["arn:aws:ivs:us-west-2:aws_account_id:stage/AbCdef1G2hij"], "detail": { "session_id": "st-ZyXwvu1T2s", "event_name": "Recording End", "participant_id": "xYz1c2d3e4f", "recording_s3_bucket_name": "bucket-name", "recording_s3_key_prefix": "<stage_id>/<session_id>/<participant_id>/2024-01-01T12-00-55Z" "recording_duration_ms": 547327 } }

Kegagalan Mulai Perekaman: Peristiwa ini dikirim ketika penerbit terhubung ke panggung, tetapi perekaman gagal dimulai karena kesalahan (misalnya, bucket S3 tidak ada atau tidak berada di wilayah yang benar). Streaming langsung penerbit tidak direkam.

{ "version": "0", "id": "12345678-1a23-4567-a1bc-1a2b34567890", "detail-type": "IVS Participant Recording State Change", "source": "aws.ivs", "account": "123456789012", "time": "2024-03-13T22:09:58Z", "region": "us-east-1", "resources": ["arn:aws:ivs:us-west-2:aws_account_id:stage/AbCdef1G2hij"], "detail": { "session_id": "st-ZyXwvu1T2s", "event_name": "Recording Start Failure", "participant_id": "xYz1c2d3e4f", "recording_s3_bucket_name": "bucket-name", "recording_s3_key_prefix": "<stage_id>/<session_id>/<participant_id>/2024-01-01T12-00-55Z" } }

Kegagalan Akhir Perekaman: Peristiwa ini dikirim ketika rekaman berakhir dengan kegagalan, karena kesalahan yang ditemui selama perekaman (misalnya, jika upaya untuk menulis daftar putar master gagal). Beberapa objek mungkin masih ditulis ke lokasi penyimpanan yang dikonfigurasi.

{ "version": "0", "id": "12345678-1a23-4567-a1bc-1a2b34567890", "detail-type": "IVS Participant Recording State Change", "source": "aws.ivs", "account": "123456789012", "time": "2024-03-13T22:19:04Z", "region": "us-east-1", "resources": ["arn:aws:ivs:us-west-2:aws_account_id:stage/AbCdef1G2hij"], "detail": { "session_id": "st-ZyXwvu1T2s", "event_name": "Recording End Failure", "participant_id": "xYz1c2d3e4f", "recording_s3_bucket_name": "bucket-name", "recording_s3_key_prefix": "<stage_id>/<session_id>/<participant_id>/2024-01-01T12-00-55Z" "recording_duration_ms": 547327 } }

Contoh: Pembaruan Tahap

Acara pembaruan panggung mencakup nama acara (yang mengklasifikasikan acara) dan metadata tentang acara tersebut. Metadata mencakup ID peserta yang memicu peristiwa, tahap dan sesi terkaitIDs, dan ID pengguna.

Peserta Diterbitkan: Acara ini dikirim ketika peserta mulai menerbitkan ke panggung.

{ "version": "0", "id": "12345678-1a23-4567-a1bc-1a2b34567890", "detail-type": "IVS Stage Update", "source": "aws.ivs", "account": "123456789012", "time": "2020-06-23T20:12:36Z", "region": "us-west-2", "resources": [ "arn:aws:ivs:us-west-2:123456789012:stage/AbCdef1G2hij" ], "detail": { "session_id": "st-ZyXwvu1T2s", "event_name": "Participant Published", "user_id": "Your User Id", "participant_id": "xYz1c2d3e4f" } }

Peserta Tidak Diterbitkan: Acara ini dikirim ketika peserta telah berhenti menerbitkan ke panggung.

{ "version": "0", "id": "12345678-1a23-4567-a1bc-1a2b34567890", "detail-type": "IVS Stage Update", "source": "aws.ivs", "account": "123456789012", "time": "2020-06-23T20:12:36Z", "region": "us-west-2", "resources": [ "arn:aws:ivs:us-west-2:123456789012:stage/AbCdef1G2hij" ], "detail": { "session_id": "st-ZyXwvu1T2s", "event_name": "Participant Unpublished", "user_id": "Your User Id", "participant_id": "xYz1c2d3e4f" } }

Kesalahan Publikasikan Peserta: Acara ini dikirim ketika upaya peserta untuk mempublikasikan ke tahap gagal.

{ "version": "0", "id": "12345678-1a23-4567-a1bc-1a2b34567890", "detail-type": "IVS Stage Update", "source": "aws.ivs", "account": "123456789012", "time": "2020-06-23T20:12:36Z", "region": "us-west-2", "resources": [ "arn:aws:ivs:us-west-2:123456789012:stage/AbCdef1G2hij" ], "detail": { "session_id": "st-ZyXwvu1T2s", "event_name": "Participant Publish Error", "event_time": "2024-08-13T14:38:17.089061676Z", "user_id": "Your User Id", "participant_id": "xYz1c2d3e4f", "error_code": "BITRATE_EXCEEDED" } }