Sessões

Uma sessão representa uma conversa entre um agente de agentes de conversa (Dialogflow CX) 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, os agentes de conversação (Dialogflow CX) mantêm os dados da sessão por 30 minutos. Há duas maneiras de estender o ciclo de vida das sessões:

  • (Recomendado) 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