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

Por padrão, o Dialogflow mantém os dados da sessão por 30 minutos. Há duas maneiras de prolongar a vida útil das sessões:

  • (Preferencial) Defina o TTL da sessão usando QueryParameters.session_ttl. O valor máximo permitido é de 24 horas.
  • É 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++ SessionsClient Indisponível
C# SessionsClient Indisponível
Go SessionsClient Indisponível
Java SessionsClient SessionsClient
Node.js SessionsClient SessionsClient
PHP Indisponível Indisponível
Python SessionsClient SessionsClient
Ruby Indisponível Indisponível