client.projects.wait(...) ou client.exports.wait(...) et ne recourir à client.tasks.* que lorsqu’ils ont besoin d’une inspection bas niveau des tâches.
client.tasks.get(taskId, options?)
Récupère l’état actuel d’une tâche par ID.
Statuts de tâche
| Statut | Terminal ? | Signification |
|---|---|---|
created | Non | La tâche a été créée mais n’a pas encore été mise en file d’attente. |
queued | Non | La tâche attend de s’exécuter. |
in-progress | Non | La tâche est en cours d’exécution. |
completed | Oui | La tâche s’est terminée avec succès. |
finalized | Oui | La tâche est terminée et le post-traitement est effectué. |
failed | Oui | La tâche a échoué avec une erreur. |
cancelled | Oui | La tâche a été annulée. |
timed-out | Oui | La tâche a atteint sa limite de temps. |
client.tasks.wait(taskId, options?)
Interroge une tâche jusqu’à ce qu’elle atteigne un état terminal. Renvoie la tâche finale en cas de succès et lève YoukaTaskError en cas d’échec.
Options
Millisecondes entre deux interrogations. Par défaut :
2000.Annule l’attente. La requête en cours et tout délai en attente sont annulés
immédiatement.
Erreurs
client.tasks.wait(...) lève YoukaTaskError lorsque la tâche se termine en failed, cancelled ou timed-out :
client.projects.wait(operation, options?)
Attend la fin d’une opération à l’échelle d’un projet, puis récupère à nouveau le projet. Renvoie le handle d’opération, la tâche terminale et le projet mis à jour.
Généralement le résultat de
client.projects.create(...),
client.projects.separateStems(...) ou client.projects.syncLyrics(...).client.exports.wait(operationOrId, options?)
Attend qu’un export cloud atteigne un état terminal. Passez soit l’ExportOperation renvoyée par client.exports.create(...), soit une chaîne exportId.
Annulation
Passez unAbortSignal pour annuler une attente longue :
Et ensuite
- Erreurs — gérer
YoukaTaskErroret les erreurs pouvant être retentées - Exports — attendre la fin d’un export
- Tâches asynchrones de l’API — le même modèle en HTTP brut
