Algunos métodos de la API de Conversational Agents (Dialogflow CX) 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, esperar a que se completen o cancelar las operaciones.
Espera a que se complete una operación
A continuación, se muestra cómo esperar a que se complete una operación.
Para sondear el estado de una operación, llama al método get
para el recurso Operations
.
Cuando se completa la operación, el campo done
se establece como verdadero.
Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:
- REGION_ID: Es el ID de región
- PROJECT_ID: El Google Cloud ID de tu proyecto
- OPERATION_ID: Es el ID de operación.
Método HTTP y URL:
GET https://REGION_ID -dialogflow.googleapis.com/v3/projects/PROJECT_ID /locations/REGION_ID /operations/OPERATION_ID
Para enviar tu solicitud, expande una de estas opciones:
curl (Linux, macOS o Cloud Shell)
Ejecuta el siguiente comando:
curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "x-goog-user-project:PROJECT_ID " \
"https://REGION_ID -dialogflow.googleapis.com/v3/projects/PROJECT_ID /locations/REGION_ID /operations/OPERATION_ID "
PowerShell (Windows)
Ejecuta el siguiente comando:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred"; "x-goog-user-project" = "PROJECT_ID " }
Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://REGION_ID -dialogflow.googleapis.com/v3/projects/PROJECT_ID /locations/REGION_ID /operations/OPERATION_ID " | Select-Object -Expand Content
Deberías recibir una respuesta JSON similar a la que se muestra a continuación:
{ "name": "projects/PROJECT_ID /locations/REGION_ID /operations/OPERATION_ID ", "metadata": { "@type": "type.googleapis.com/google.cloud.dialogflow.v3.SomeOperationType", "state": "DONE" }, "done": true, ... }
Para autenticarte en Dialogflow, configura las credenciales predeterminadas de la aplicación. Si deseas obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Para autenticarte en Dialogflow, configura las credenciales predeterminadas de la aplicación. Si deseas obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Para autenticarte en Dialogflow, configura las credenciales predeterminadas de la aplicación. Si deseas obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.