Sessões

Uma sessão representa uma conversa entre um agente de agentes conversacionais (Dialogflow CX) e um utilizador final. Cria uma sessão no início de uma conversa e usa-a para cada turno da conversa. Quando a conversa terminar, deixa de usar a sessão.

Não deve usar a mesma sessão para conversas simultâneas com diferentes utilizadores finais. Uma sessão permanece ativa e os respetivos dados são armazenados durante 30 minutos após o envio do último pedido para a sessão.

Cada sessão é determinada como única por um ID da sessão gerado pelo seu sistema. Cria uma nova sessão fornecendo um novo ID de sessão num pedido de intenção de deteção e noutros métodos de sessão. Um ID da sessão é uma string com um tamanho máximo de 36 bytes. O seu sistema é responsável por gerar IDs de sessão exclusivos. Podem ser números aleatórios, identificadores do utilizador final com hash ou quaisquer outros valores que seja conveniente para si gerar.

Consulte a documentação de regionalização para ver informações sobre o valor do ID da localização no nome da sessão.

Sessões de longa duração

Por predefinição, os agentes conversacionais (Dialogflow CX) mantêm os dados da sessão durante 30 minutos. Existem duas formas de prolongar a duração das sessões:

  • (Preferencial) defina o TTL da sessão através de QueryParameters.session_ttl. O valor máximo permitido é de 24 horas.
  • Pode reativar o estado da sessão anterior definindo QueryParameters.current_page e QueryParameters.parameters em DetectIntentRequest.

    Um exemplo de fluxo de trabalho é o seguinte:

    1. O utilizador final fala com o agente na sessão A.
    2. O seu código regista o estado associado à sessão A devolvido na resposta da API, nomeadamente QueryResult.current_page e QueryResult.parameters.
    3. O utilizador final deixa de interagir com o agente após 50 minutos.
    4. O utilizador final fala novamente com o agente.
    5. O seu código envia a entrada do utilizador final, juntamente com os valores QueryParameters.current_page e QueryParameters.parameters registados anteriormente no pedido, para detetar a intenção com o estado da sessão anterior. Não tem de usar o mesmo ID da sessão que o usado pela sessão A.

Referências

Para ver informações sobre os preços das 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 da sessão:

Protocolo V3 V3beta1
REST Recurso de sessão Recurso de sessão
RPC Interface de sessão Interface de sessão
C++ SessionsClient Não disponível
C# SessionsClient Não disponível
Go SessionsClient Não disponível
Java SessionsClient SessionsClient
Node.js SessionsClient SessionsClient
PHP Não disponível Não disponível
Python SessionsClient SessionsClient
Ruby Não disponível Não disponível