All Products
Search
Document Center

ApsaraVideo Live:Pulled-stream relay callbacks

Last Updated:May 08, 2026

Topik ini menjelaskan kondisi pemicu callback pulled-stream relay dan menyediakan contoh muatan callback.

Callback events

Callback pulled-stream relay dipicu oleh dua jenis event: perubahan status task dan exit task.

Sebuah task pulled-stream relay dapat berada dalam salah satu status berikut:

State

Description

Idle

Status awal task yang dibuat melalui panggilan API.

Running

Status ketika task mulai secara otomatis pada waktu yang dijadwalkan atau dimulai ulang melalui panggilan API.

Recovering

Status task yang sedang mencoba ulang setelah terjadi error eksekusi.

Offline

Status setelah task berhenti secara otomatis karena upaya retry habis waktu tunggunya, atau dihentikan melalui panggilan API.

Exit

Status setelah task dihapus, baik secara otomatis saat waktu akhir yang dijadwalkan tercapai maupun melalui panggilan API.

Callback for task state changes

Description

Callback dipicu ketika status task pulled-stream relay berubah menjadi Running, Recovering, atau Offline.

Trigger conditions

  • Status task berubah menjadi Running ketika task dimulai secara otomatis pada Waktu mulai yang dijadwalkan atau dimulai ulang melalui panggilan API.

  • Status task berubah menjadi Recovering ketika task mengalami error selama eksekusi.

  • Status task berubah menjadi Offline ketika task dihentikan melalui panggilan API atau upaya retry-nya habis waktu tunggunya.

Callback for task exit

Description

Sistem memicu callback ketika task pulled-stream relay melakukan exit. Exit menandakan bahwa sistem telah menghapus task yang sudah kedaluwarsa.

Trigger conditions

  • Status task berubah menjadi Exit ketika sistem secara otomatis menghapus task karena waktu akhir yang dijadwalkan telah tercapai.

  • Status task berubah menjadi Exit ketika task dihapus melalui panggilan API.

Callback payload

Sistem mengirimkan callback sebagai objek JSON dalam badan permintaan HTTP POST ke URL callback yang Anda tentukan. Anda dapat mengurai badan permintaan tersebut untuk mengambil konten callback.

  • Parameter dan contoh muatan untuk callback perubahan status task

    Tabel 1. Muatan callback untuk perubahan status task

    Parameter

    Description

    Event

    Nama event. Nilai tetap: LivePullToPushRunning.

    EventTime

    Waktu terjadinya event, dalam bentuk Unix timestamp (dalam detik).

    TaskId

    ID task.

    TaskInfo

    Informasi task.

    TaskStatus

    Status saat ini dari task. Nilai yang valid:

    • 1: Running

    • 2: Recovering

    • 3: Offline

    TaskInvalidReason

    Alasan task berjalan tidak normal atau berhenti. Nilai yang valid:

    • PullStreamFailed: Gagal menarik aliran.

    • PushStreamFailed: Gagal meneruskan aliran.

    • TriggerByUser: Task dihentikan melalui panggilan API.

    • UnknownError: Terjadi error yang tidak diketahui.

    • RetryTimesOffline: Upaya retry habis waktu tunggunya.

    Catatan

    Sistem hanya mengembalikan parameter ini ketika status task adalah Offline.

    Contoh muatan

    {
    "Event": "LivePullToPushRunning",
    "EventTime": "1725501246",
    "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"
    }
                        
  • Parameter dan contoh muatan untuk callback exit task

    Tabel 2. Muatan callback untuk exit task

    Parameter

    Description

    Event

    Nama event. Nilai tetap: LivePullToPushExit.

    EventTime

    Waktu terjadinya event, dalam bentuk Unix timestamp (dalam detik).

    TaskId

    ID task.

    TaskInfo

    Informasi task.

    TaskStatus

    Status saat ini dari task. Nilai yang valid:

    • -1: Exit

    TaskExitTime

    Waktu task melakukan exit, dalam bentuk Unix timestamp (dalam detik).

    TaskExitReason

    Alasan task melakukan exit. Nilai yang valid:

    • TriggerByUser: Pengguna menghapus task melalui panggilan API.

    • OverEndTime: Waktu akhir yang ditentukan telah tercapai.

    Contoh muatan

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