Sessões

Uma sessão representa uma conversa entre um agente do Dialogflow CX e um utilizador final. Cria uma sessão no início de uma conversa e usa-a para cada interação 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 é considerada única por um ID de 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 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, o 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 devolvida 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
Ir 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