Skip to main content
Cada operación asíncrona en Youka acaba ejecutándose como una tarea, pero la superficie principal del SDK ahora devuelve operation handles en lugar de IDs de tarea sin procesar. La mayoría de los casos de uso deberían emplear client.projects.wait(...) o client.exports.wait(...) y recurrir a client.tasks.* solo cuando necesiten inspección de tareas de bajo nivel.

client.tasks.get(taskId, options?)

Obtiene el estado actual de una tarea por ID.

Estados de tarea

client.tasks.wait(taskId, options?)

Sondea una tarea hasta que alcance un estado terminal. Devuelve la tarea final si tiene éxito y lanza YoukaTaskError si falla.

Opciones

number
Milisegundos entre sondeos. Por defecto, 2000.
AbortSignal
Cancela la espera. La solicitud en curso y cualquier demora pendiente se cancelan inmediatamente.

Errores

client.tasks.wait(...) lanza YoukaTaskError cuando la tarea termina en failed, cancelled o timed-out:

client.projects.wait(operation, options?)

Espera a que finalice una operación con alcance de proyecto y, después, vuelve a obtener el proyecto. Devuelve el operation handle, la tarea terminal y el proyecto actualizado.
ProjectOperation
required
Normalmente, el resultado de client.projects.create(...), client.projects.separateStems(...) o client.projects.syncLyrics(...).

client.exports.wait(operationOrId, options?)

Espera a que una exportación en la nube alcance un estado terminal. Pasa el ExportOperation devuelto por client.exports.create(...) o una cadena exportId.

Cancelación

Pasa un AbortSignal para cancelar una espera de larga duración:
La misma señal también cancela la solicitud subyacente de sondeo de tareas o exportaciones.

Qué sigue

  • Errors — gestiona YoukaTaskError y errores reintentables
  • Exports — espera a que termine una exportación
  • API async jobs — el mismo patrón en HTTP sin procesar