Operaciones de larga duración

Algunos métodos de la API de Dialogflow muestran una operación de larga duración. Estos métodos son asíncronos, y es posible que la operación no se complete cuando el método muestra una respuesta. Puedes verificar el estado o cancelar las operaciones.

Obtén un estado de operación

A continuación, se muestra cómo sondear el estado de una operación. Si tienes que verificar muchas operaciones, debes colocar un límite de frecuencia en las llamadas o usar el método list en su lugar.

LÍNEA DE CMD Y REST

Llama al método get para el tipo Operations.

Antes de usar cualquiera de los siguientes datos de solicitud, realiza estos reemplazos:

  • project-id: Es el ID del proyecto de GCP.
  • operation-id: Es el ID de operación.
  • api-version: Ya sea v2 o v2beta1.

Método HTTP y URL:

GET https://dialogflow.googleapis.com/api-version/projects/my-gcp-project/operations/operation-id

Para enviar tu solicitud, expande una de estas opciones:

Deberías recibir una respuesta JSON similar a la que se muestra a continuación:

{
  "name": "projects/project-id/operations/some-operation-name-operation-id",
  "metadata": {
    "@type": "type.googleapis.com/google.cloud.dialogflow.api-version.SomeOperationType",
    "state": "DONE"
  },
  "done": true,
  ...
}

Cuando se completa la operación, se muestra un valor state de SUCCESSFUL.

Enumera y cancela operaciones

Además de obtener una operación específica, puedes enumerar y cancelar operaciones. Consulta los métodos list y cancel para el tipo Operations.

Los resultados de list pueden contener operaciones que no están relacionadas con tu tarea actual, así que asegúrate de filtrar los resultados.