Les rappels de relais de flux en tirage notifient votre application lorsqu'une tâche change d'état ou se termine. Cette rubrique décrit les conditions de déclenchement et fournit des exemples de charges utiles de rappel.
Événements de rappel
Les rappels de relais de flux en tirage couvrent deux types d'événements : les changements d'état des tâches et la fin des tâches.
Une tâche de relais de flux en tirage peut présenter l'un des états suivants :
|
État |
Description |
|
Idle |
État initial d'une tâche créée par un appel d'API. |
|
Running |
État actif lorsque la tâche démarre à l'heure programmée ou est redémarrée via un appel d'API. |
|
Recovering |
État de tentative de récupération après une erreur d'exécution. |
|
Offline |
État atteint lorsque la tâche s'arrête suite à l'expiration des tentatives de nouvelle tentative ou à un arrêt provoqué par un appel d'API. |
|
Exit |
État final après la suppression de la tâche, soit parce que l'heure de fin programmée est atteinte, soit suite à un appel d'API. |
Rappel pour les changements d'état des tâches
Description
Un rappel est déclenché lorsqu'une tâche de relais de flux en tirage passe à l'état Running, Recovering ou Offline.
Conditions de déclenchement
La tâche passe à l'état
Runninglorsqu'elle démarre à l'heure de début programmée ou est redémarrée par un appel d'API.La tâche passe à l'état
Recoveringlorsqu'elle rencontre une erreur durant son exécution.La tâche passe à l'état
Offlinelorsqu'un appel d'API l'arrête ou lorsque les tentatives de nouvelle tentative expirent.
Rappel pour la fin d'une tâche
Description
Un rappel est déclenché lorsqu'une tâche de relais de flux en tirage se termine. La fin d'une tâche signifie que le système a supprimé la tâche expirée.
Conditions de déclenchement
La tâche passe à l'état
Exitlorsque le système la supprime parce que l'heure de fin programmée est atteinte.La tâche passe à l'état
Exitlorsqu'un appel d'API la supprime.
Charge utile du rappel
Le rappel est envoyé sous forme d'objet JSON dans le corps d'une requête HTTP POST adressée à votre URL de rappel. Analysez le corps de la requête pour récupérer le contenu du rappel.
-
Paramètres et exemple de charge utile pour un rappel de changement d'état de tâche
Tableau 1. Charge utile du rappel pour les changements d'état de tâche
Parameter
Description
Event
The event name. Fixed value:
LivePullToPushRunning.EventTime
The time when the event occurred, as a Unix timestamp in seconds.
TaskId
The task ID.
TaskInfo
The task information.
TaskStatus
The current state of the task. Valid values:
-
1: Running
-
2: Recovering
-
3: Offline
TaskInvalidReason
The reason the task ran abnormally or stopped. Valid values:
-
PullStreamFailed: Failed to pull the stream. -
PushStreamFailed: Failed to relay the stream. -
TriggerByUser: Stopped by an API call. -
UnknownError: An unknown error occurred. -
RetryTimesOffline: Retry attempts timed out.
RemarqueThis parameter is returned only when the task state is
Offline.Exemple de charge utile
{ "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" } -
-
Paramètres et exemple de charge utile pour un rappel de fin de tâche
Tableau 2. Charge utile du rappel pour la fin d'une tâche
Parameter
Description
Event
The event name. Fixed value:
LivePullToPushExit.EventTime
The time when the event occurred, as a Unix timestamp in seconds.
TaskId
The task ID.
TaskInfo
The task information.
TaskStatus
The current state of the task. Valid value:
-
-1: Exit
TaskExitTime
The time when the task exited, as a Unix timestamp in seconds.
TaskExitReason
The reason the task exited. Valid values:
-
TriggerByUser: Deleted by an API call. -
OverEndTime: The scheduled end time was reached.
Exemple de charge utile
{ "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", } -