Operações de longa duração

Alguns métodos da API Dialogflow retornam uma operação de longa duração. Esses métodos são assíncronos e a operação pode não ser concluída quando o método retornar uma resposta. Verifique o status ou cancele operações.

Receber status de operação

Veja a seguir como pesquisar o status de uma operação. Se você tiver muitas operações para verificar, limite as chamadas ou use o método list.

REST

Chame o método get para o tipo Operations.

Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:

  • PROJECT_ID: ID do projeto do GCP
  • OPERATION_ID: ID da operação
  • API_VERSION: é v2 ou v2beta1

Método HTTP e URL:

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

Para enviar a solicitação, expanda uma destas opções:

Você receberá uma resposta JSON semelhante a esta:

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

Quando a operação for concluída, um valor state de SUCCESSFUL será retornado.

Listar e cancelar operações

Além de obter uma operação específica, é possível listar e cancelar operações. Veja os métodos list e cancel para o tipo Operations.

É possível que os resultados list contenham operações não relacionadas à sua tarefa atual. Portanto, filtre os resultados.