client.projects.wait(...) o client.exports.wait(...) e ricorrere a client.tasks.* solo quando serve un’ispezione di basso livello delle attività.
client.tasks.get(taskId, options?)
Recupera lo stato corrente di un’attività tramite ID.
Stati dell’attività
| Stato | Terminale? | Significato |
|---|---|---|
created | No | L’attività è stata creata ma non è ancora in coda. |
queued | No | L’attività è in attesa di essere eseguita. |
in-progress | No | L’attività è attualmente in esecuzione. |
completed | Sì | L’attività è terminata con successo. |
finalized | Sì | L’attività è terminata e la post-elaborazione è completata. |
failed | Sì | L’attività è fallita con un errore. |
cancelled | Sì | L’attività è stata annullata. |
timed-out | Sì | L’attività ha raggiunto il suo limite di tempo. |
client.tasks.wait(taskId, options?)
Esegue il polling di un’attività finché non raggiunge uno stato terminale. Restituisce l’attività finale in caso di successo, genera YoukaTaskError in caso di errore.
Opzioni
Millisecondi tra un polling e l’altro. Il valore predefinito è
2000.Annulla l’attesa. La richiesta in corso e qualsiasi ritardo in sospeso vengono annullati
immediatamente.
Errori
client.tasks.wait(...) genera YoukaTaskError quando l’attività termina in failed, cancelled o timed-out:
client.projects.wait(operation, options?)
Attende il completamento di un’operazione con ambito progetto, quindi recupera nuovamente il progetto. Restituisce l’handle dell’operazione, l’attività terminale e il progetto aggiornato.
Di solito il risultato di
client.projects.create(...),
client.projects.separateStems(...) o client.projects.syncLyrics(...).client.exports.wait(operationOrId, options?)
Attende che un’esportazione cloud raggiunga uno stato terminale. Passa l’ExportOperation restituito da client.exports.create(...) oppure una stringa exportId.
Annullamento
Passa unAbortSignal per annullare un’attesa di lunga durata:
Cosa fare dopo
- Errors — gestire
YoukaTaskErrored errori ritentabili - Exports — attendere il completamento di un’esportazione
- API async jobs — lo stesso pattern in HTTP grezzo
