Sessões

Uma sessão representa uma conversa entre um agente do Dialogflow e um usuário final. Você cria uma sessão no início de uma conversa e a usa a cada fala. Depois que a conversa terminar, você deixará de usar a sessão.

Não use a mesma sessão para conversas simultâneas com diferentes usuários finais. Uma sessão permanece ativa e os dados dela são armazenados por 30 minutos após a última solicitação ser enviada para a sessão.

Cada sessão é determinada de forma exclusiva por um ID de sessão gerado pelo sistema. Para criar uma nova sessão, forneça um novo ID em uma solicitação de detecção de intent e outros métodos de sessão. Um ID de sessão é uma string de no máximo 36 bytes. Seu sistema é responsável por gerar IDs de sessão exclusivos. Eles podem ser números aleatórios, identificadores de usuário final com hash ou qualquer outro valor conveniente para a geração.

Consulte a documentação Regionalização para informações sobre o valor do código do local no nome da sessão.

Sessões de longa duração

Atualmente, o Dialogflow não aceita manter os dados da sessão por mais de 30 minutos. No entanto, é possível recuperar o estado anterior da sessão definindo QueryParameters.current_page e QueryParameters.parameters em DetectIntentRequest.

Veja um exemplo de fluxo de trabalho:

  1. O usuário final conversa com o agente na sessão A.
  2. O código registra o estado associado à sessão A retornada na resposta da API, ou seja, QueryResult.current_page e QueryResult.parameters.
  3. O usuário final para de interagir com o agente após 50 minutos.
  4. O usuário final conversa com o agente novamente.
  5. Seu código envia a entrada do usuário final com QueryParameters.current_page e QueryParameters.parameters registrados anteriormente na solicitação, para detectar a intent com o estado anterior da sessão. Não é necessário usar o mesmo ID da sessão A.

Referências

Para informações sobre preços de sessões, consulte a página de preços.

Para mais informações sobre sessões,

Selecione um protocolo e uma versão para a referência de sessão:

Protocolo V3 V3beta1
REST Recurso da sessão Recurso da sessão
RPC (remote procedure call) Interface da sessão Interface da sessão
C# Indisponível Indisponível
Go Indisponível Indisponível
Java SessionsClient SessionsClient
Node.js SessionsClient SessionsClient
PHP Indisponível Indisponível
Python SessionsClient SessionsClient
Ruby Indisponível Indisponível