Tema ini menjelaskan kondisi pemicu untuk callback relay aliran tarik serta menyediakan contoh callback.
Peristiwa untuk callback relay aliran tarik
Peristiwa untuk callback relay aliran tarik mencakup perubahan status tugas dan keluarnya tugas relay aliran tarik.
Tabel berikut menggambarkan status dari tugas relay aliran tarik:
Status | Deskripsi |
Idle | Ini adalah status awal dari tugas yang Anda buat dengan memanggil operasi CreateLivePullToPush. |
Running | Ini adalah status tugas yang telah dimulai secara otomatis setelah waktu mulai yang ditentukan, atau yang telah di-restart setelah dihentikan. |
Recovering | Ini adalah status tugas yang sedang mencoba kembali setelah terjadi pengecualian selama berjalan. |
Offline | Ini adalah status tugas yang mengalami pengecualian dan gagal mencoba kembali, atau yang Anda hentikan dengan memanggil operasi StopLivePullToPush. |
Exit | Ini adalah status tugas yang dihapus secara otomatis setelah waktu akhir yang ditentukan, atau yang Anda hapus dengan memanggil operasi DeleteLivePullToPush. |
Callback untuk perubahan status tugas relay aliran tarik
Deskripsi
Ketika status tugas relay aliran tarik berubah menjadi Running, Recovering, atau Offline, sebuah callback dipanggil untuk menunjukkan perubahan tersebut.
Kondisi pemicu
Ketika tugas dimulai secara otomatis pada waktu mulai yang ditentukan atau di-restart dengan memanggil operasi RestartLivePullToPush, status tugas berubah menjadi
Running.Ketika tugas mengalami pengecualian selama berjalan, status tugas berubah menjadi
Recovering.Ketika tugas mengalami pengecualian dan gagal mencoba kembali atau dihentikan dengan memanggil operasi StopLivePullToPush, status tugas berubah menjadi
Offline.
Callback untuk keluarnya tugas relay aliran tarik
Deskripsi
Ketika tugas relay aliran tarik keluar, sebuah callback dipanggil untuk menunjukkan bahwa tugas tersebut telah dibersihkan.
Kondisi pemicu
Ketika tugas dihapus secara otomatis pada waktu akhir yang ditentukan, status tugas berubah menjadi
Exit.Ketika tugas dihapus dengan memanggil operasi DeleteLivePullToPush, status tugas berubah menjadi
Exit.
Isi callback relay aliran tarik
Isi callback dalam format JSON disertakan dalam badan permintaan dari permintaan HTTP POST dan dikirim ke URL callback. Server dapat mengurai badan permintaan dan mendapatkan isi callback.
Parameter dan Contoh Callback untuk Perubahan Status Tugas Relay Aliran Tarik
Tabel 1. Parameter
Parameter
Deskripsi
Event
Nama peristiwa. Nilai tetap:
LivePullToPushRunning.EventTime
Waktu ketika peristiwa terjadi. Nilainya adalah timestamp Unix dalam detik.
TaskId
ID tugas.
TaskInfo
Informasi tentang tugas.
TaskStatus
Status saat ini dari tugas. Nilai valid:
1: Running
2: Recovering
3: Offline
TaskInvalidReason
Alasan mengapa tugas berjalan tidak normal atau berhenti berjalan. Nilai valid:
PullStreamFailed: Penarikan aliran gagal.PushStreamFailed: Relay aliran gagal.TriggerByUser: Operasi API yang sesuai dipanggil.UnknownError: Terjadi kesalahan yang tidak diketahui.RetryTimesOffline: Terjadi timeout.
nullParameter ini hanya dikembalikan ketika status tugas adalah Offline.
Contoh Callback
{ "Event": "LivePullToPushRuning", "EventTime": "1725501246", "TaskId": "08a1b00c-9c2f-4dfa-9f5d-878f2505****", "TaskInfo": { "TaskId": "08a1b00c-9c2f-4dfa-9f5d-878f250****", "StartTime": "2024-09-05T01:54:00Z", "EndTime": "2024-09-05T01:58:00Z", "SourceUrls": [ "\"http://fyl-*******-*****.oss-cn-beijing.aliyuncs.com/record/caster/741584e2557248e98ef332d41e4afc3d/2024-08-30-18:19:40_2024-08-30-18:21:09.mp4\"" ], "DstUrl": "rtmp://pushtest.******.aliyunlive.com/pulltest38/pulltest-w38", "CallbackURL": "https://1833220977******.cn-shanghai.lc.aliyuncs.com/workflows/lc-uf6sd1382ikolc/triggers/manual/methods/invoke?ApiVersion=2018-12-12&Signature=TZT7CGDgc299cC2dtL73Yeq4xY8", "Offset": 0, "SourceType": "url" }, "TaskStatus": "1" }Parameter dan Contoh Callback untuk Keluarnya Tugas Relay Aliran Tarik
Tabel 2. Parameter
Parameter
Deskripsi
Event
Nama peristiwa. Nilai tetap:
LivePullToPushExit.EventTime
Waktu ketika peristiwa terjadi. Nilainya adalah timestamp Unix dalam detik.
TaskId
ID tugas.
TaskInfo
Informasi tentang tugas.
TaskStatus
Status saat ini dari tugas. Nilai valid:
-1: Exit
TaskExitTime
Waktu ketika tugas keluar. Nilainya adalah timestamp Unix dalam detik.
TaskExitReason
Alasan mengapa tugas keluar.
TriggerByUser: Operasi API yang sesuai dipanggil.OverEndTime: Waktu akhir yang ditentukan telah tercapai.
Contoh Callback
{ "Event": "LivePullToPushExit", "EventTime": "1725501483", "TaskId": "08a1b00c-9c2f-4dfa-9f5d-878f2505****", "TaskInfo": { "TaskId": "08a1b00c-9c2f-4dfa-9f5d-878f2505****", "StartTime": "2024-09-05T01:54:00Z", "EndTime": "2024-09-05T01:58:00Z", "SourceUrls": [ "\"http://fyl-******-****.oss-cn-beijing.aliyuncs.com/record/caster/741584e2557248e98ef332d41e4afc3d/2024-08-30-18:19:40_2024-08-30-18:21:09.mp4\"" ], "DstUrl": "rtmp://pushtest.*****.aliyunlive.com/pulltest38/pulltest-w38", "CallbackURL": "https://1833220977******.cn-shanghai.lc.aliyuncs.com/workflows/lc-uf6sd1382ikolc/triggers/manual/methods/invoke?ApiVersion=2018-12-12&Signature=TZT7CGDgc299cC2dtL73Yeq4xY8", "Offset": 0, "SourceType": "url" }, "TaskStatus": "-1", "TaskExitTime": "1725501483", "TaskExitReason": "OverEndTime", }