Certaines méthodes de l'API Dialogflow renvoient une opération de longue durée. Ces méthodes sont asynchrones, et l'opération risque de ne pas être terminée lorsque la méthode renverra une réponse. Vous pouvez vérifier l'état ou annuler des opérations.
Obtenir l'état d'une opération
Pour interroger l'état d'une opération, procédez comme suit : Si vous avez de nombreuses opérations à vérifier, vous devez limiter vos appels ou utiliser la méthode list à la place.
REST
Appelez la méthode get
pour le type Operations
.
Avant d'utiliser les données de requête ci-dessous, effectuez les remplacements suivants :
- PROJECT_ID : ID de votre projet GCP
- OPERATION_ID : ID d'opération
- API_VERSION :
v2
ouv2beta1
Méthode HTTP et URL :
GET https://dialogflow.googleapis.com/API_VERSION/projects/my-gcp-project/operations/OPERATION_ID
Pour envoyer votre requête, développez l'une des options suivantes :
Vous devriez recevoir une réponse JSON de ce type :
{ "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, ... }
Lorsque l'opération est terminée, la valeur SUCCESSFUL
est renvoyée pour state
.
Répertorier et annuler des opérations
En plus d'obtenir une opération spécifique, vous pouvez répertorier et annuler des opérations.
Consultez les méthodes list
et cancel
pour le type Operations
.
Les résultats list
peuvent contenir des opérations sans rapport avec votre tâche actuelle. Veillez donc à filtrer les résultats.