Tareas

Actualizado

Una tarea es responsable de realizar todas las cargas de trabajo asíncronas en la API, como establecer una sesión con servicios externos y recuperar y procesar datos.

Las tareas se crean normalmente como parte de la creación de un recurso de sesión o durante la ejecución de una encuesta.

Cualquier dato devuelto de una tarea es descrito por los recursos de resultados asociados.

Algunas tareas, principalmente relacionadas con la administración del sistema y la organización, pueden no estar dirigidas a un usuario, fuente o sesión, o estar asociadas a una encuesta. Ejemplos de este tipo de tareas son las tareas de prueba de configuración de almacenamiento y webhook.

Atributos

nombre tipo descripción
id ID de tarea Identificador de recursos.
resource cadena, siempre task Especificador de tipo de recurso.
organisation ID de organización La organización a la que pertenece el recurso.
key ID de clave La clave asociada a esta tarea.
user opcional, ID de usuario El usuario asociado a esta tarea.
source opcional, ID de fuente La fuente apuntada por esta tarea.
session opcional, ID de sesión La sesión utilizada por esta tarea.
poll opcional, ID de encuesta El sondeo al que está asociada esta tarea.
source_type opcional, cadena El tipo de fuente a la que se dirige esta tarea.
type cuerda El tipo de tarea de la tarea.
target cuerda El argumento de más alto nivel para la tarea. Por ejemplo, una tarea de tipo de data tendrá el tipo de datos que está recuperando como destino (es decir, messages.sms ).
state cuerda Uno de: pending , processing , suspended , succeeded , failed .
results objeto de lista que contiene recursos de resultados Cualquier resultado publicado de la ejecución de la tarea.
error opcional, cadena Se rellena con el código de error, si se produjo uno.
date_created fecha y hora Cuando el recurso fue creado.
date_started opcional, fecha y hora Cuando comenzó el procesamiento de tareas.
date_completed opcional, fecha y hora Cuando finaliza la tarea finalizada.

Tipos de fuente

Si la tarea está asociada a una fuente, el tipo de la fuente se desnormalizará en el source_type tarea source_type . Esto ayuda a simplificar las consultas para tareas de un determinado tipo.

Tipos

El tipo de tarea es un fragmento corto que identifica la tarea subyacente que se ejecuta dentro de la API.

Si la tarea se relaciona con la actividad contra un recurso, como probar una configuración de webhook, se formateará como webhook_config.test .

Si la tarea se dirige a una fuente específica, el atributo source_type almacenará la información relacionada con la fuente, mientras que el atributo type solo almacena la acción principal. Por ejemplo, crear una sesión activará una tarea session.init que se creará contra una fuente de tipo icloud.account .

Objetivo

Esto especifica el destino de la tarea subyacente y no siempre se establece. Por ejemplo, el objetivo de un webhook_config.test será el ID de la configuración de webhook que se va a probar. Para una tarea de data contra una fuente de tipo icloud.account , será el tipo de datos que se recuperará como messages.whatsapp .

Estado

  • pending la tarea se ha creado pero actualmente está esperando en la cola.
  • processing la tarea está siendo ejecutado por un trabajador API.
  • suspended la tarea está esperando que se completen las tareas de bloqueo antes de continuar.
  • succeeded la tarea finalizado sin errores.
  • failed la tarea encontró errores.

Los errores

Si la tarea tiene problemas durante el procesamiento, este campo se establecerá con el código del error encontrado.

Registro de cambios

2020-02-20

  • Mayor El atributo de results del objeto de tarea ahora es un objeto de lista anidada, en lugar de un simple atributo de lista.

2019-10-16

  • El atributo de state del objeto de tarea ahora puede tener el valor suspended . Esto indica que la API está esperando la finalización de las acciones de la aplicación Reincubate Relay, como la carga de un archivo o la actualización de metadatos, para que pueda reanudar y completar la tarea.

Recuperar GET /tasks/{task ID}

Usando cURL

curl https://ricloud-api.reincubate.com/tasks/<task ID> \
  -H 'Authorization: Token <your key_token>'

Utilizando ricloud-py

import ricloud

task = ricloud.Task.retrieve(<task ID>)

Respuesta de muestra

{
  "id": "00000001-1234-1234-1234-9876543210",
  "resource": "task",
  "organisation": 1,
  "key": 1,
  "user": 1,
  "source": 1,
  "session": "00000002-1234-1234-1234-9876543210",
  "poll": "00000003-1234-1234-1234-9876543210",
  "source_type": "mocks.mock",
  "type": "info",
  "target": null,
  "results": {
    "data": [],
    "has_more": false,
    "total_count": 1,
    "url": "/tasks/00000001-1234-1234-1234-9876543210/results"
  },
  "state": "processing",
  "error": null,
  "date_created": "2020-02-20T11:59:15.110451Z",
  "date_started": "2020-02-20T11:59:15.207932Z",
  "date_completed": null
}

Listar GET /tasks

Parámetros

nombre tipo descripción
key ID de clave Filtrar por la organización asociada.
user ID de usuario Filtrar por el usuario asociado.
source ID de fuente Filtrar por la fuente asociada.
session ID de sesión Filtrar por la sesión asociada.
poll ID de encuesta Filtrar por la encuesta propietaria.
source_type cuerda Filtrar por el tipo de fuente.
type cuerda Filtrar por el tipo de tarea.
state cuerda Filtrar por el estado de la tarea.
date_created filtro de fecha y hora Filtrar por fecha de creación del recurso.
date_started filtro de fecha y hora Filtra por cuándo la tarea comenzó a procesarse.
date_completed filtro de fecha y hora Filtra por cuándo la tarea completó el procesamiento.

Usando cURL

curl https://ricloud-api.reincubate.com/tasks \
  -H 'Authorization: Token <your key_token>'

Utilizando ricloud-py

import ricloud

tasks = ricloud.Task.list()

¿Cómo podemos ayudar?

¡Nuestro equipo de soporte está aquí para ayudar!

Nuestro horario de atención es de lunes a viernes de 9 a.m. a 5 p.m. GMT. El tiempo es actualmente 12:13 AM GMT.

Intentamos responder todos los mensajes en un plazo de un día laboral.

Nuestro increíble equipo de soporte.

© 2008 - 2024 Reincubate Ltd. Todos los derechos reservados. Registrado en Inglaterra y Gales #5189175, VAT GB151788978. Reincubate® y Camo® son marcas registradas. Política de privacidad & condiciones.