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
eQueryParameters.parameters
emDetectIntentRequest
.Veja um exemplo de fluxo de trabalho:
- O usuário final conversa com o agente na sessão A.
- O código registra o estado associado à sessão A retornada na resposta da API,
ou seja,
QueryResult.current_page
eQueryResult.parameters
. - O usuário final para de interagir com o agente após 50 minutos.
- O usuário final conversa com o agente novamente.
- Seu código envia a entrada do usuário final com
QueryParameters.current_page
eQueryParameters.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 |