Operazioni a lunga esecuzione

Alcuni metodi dell'API Dialogflow restituiscono un'operazione a lunga esecuzione. Questi metodi sono asincroni e l'operazione potrebbe non essere completata quando il metodo restituisce una risposta. Puoi controllare lo stato o annullare le operazioni.

Recupero dello stato di un'operazione

Di seguito viene mostrato come eseguire il polling dello stato di un'operazione. Se devi controllare molte operazioni, dovresti limitare le chiamate o utilizzare il metodo list.

REST

Richiama il metodo get per il tipo Operations.

Prima di utilizzare i dati della richiesta, effettua le seguenti sostituzioni:

  • PROJECT_ID: l'ID del tuo progetto Google Cloud
  • OPERATION_ID: il tuo ID operazione
  • API_VERSION: v2 o v2beta1

Metodo HTTP e URL:

GET https://dialogflow.googleapis.com/API_VERSION/projects/my-gcp-project/operations/OPERATION_ID

Per inviare la richiesta, espandi una di queste opzioni:

Dovresti ricevere una risposta JSON simile alla seguente:

{
  "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,
  ...
}

Al termine dell'operazione, verrà restituito un valore state di SUCCESSFUL.

Elenco e annullamento delle operazioni

Oltre a ottenere un'operazione specifica, puoi elencare e annullare le operazioni. Visualizza i metodi list e cancel per il tipo Operations.

I risultati list potrebbero contenere operazioni non correlate all'attività attuale, quindi assicurati di filtrare i risultati.