Sessioni

Una sessione rappresenta una conversazione tra un agente Dialogflow CX e un utente finale. Crei una sessione all'inizio di una conversazione e la utilizzi per ogni turno della conversazione. Una volta terminata la conversazione, interrompi l'utilizzo della sessione.

Non devi utilizzare la stessa sessione per conversazioni simultanee con utenti finali diversi. Una sessione rimane attiva e i suoi dati archiviati per 30 minuti dopo l'invio dell'ultima richiesta per la sessione.

Ogni sessione è considerata univoca da un ID sessione generato dal sistema. Crei una nuova sessione fornendo un nuovo ID sessione in una richiesta di rilevamento dell'intent e in altri metodi di sessione. Un ID sessione è una stringa di dimensioni non superiori a 36 byte. Il tuo sistema è responsabile della generazione di ID sessione univoci. Possono essere numeri casuali, identificatori dell'utente finale sottoposti ad hashing o qualsiasi altro valore che ti sia comodo generare.

Consulta la documentazione relativa alla regionalizzazione per informazioni sul valore dell'ID località nel nome della sessione.

Sessioni di lunga durata

Per impostazione predefinita, Dialogflow CX conserva i dati della sessione per 30 minuti. Esistono due modi per estendere la durata delle sessioni:

  • (Preferito) Imposta il TTL della sessione utilizzando QueryParameters.session_ttl. Il valore massimo consentito è 24 ore.
  • Puoi ripristinare lo stato della sessione precedente impostando QueryParameters.current_page e QueryParameters.parameters in DetectIntentRequest.

    Un esempio di workflow è il seguente:

    1. L'utente finale parla con l'agente nella sessione A.
    2. Il codice registra lo stato associato alla sessione A restituito nella risposta API, ovvero QueryResult.current_page e QueryResult.parameters.
    3. L'utente finale interrompe l'interazione con l'agente dopo 50 minuti.
    4. L'utente finale parla di nuovo con l'agente.
    5. Il codice invia l'input utente finale, insieme a QueryParameters.current_page e QueryParameters.parameters registrati in precedenza nella richiesta, per rilevare l'intent con lo stato della sessione precedente. Non è necessario utilizzare lo stesso ID sessione utilizzato dalla sessione A.

Riferimenti

Per informazioni sui prezzi delle sessioni, consulta la pagina dei prezzi.

Per ulteriori informazioni sulle sessioni:

Seleziona un protocollo e una versione per il riferimento alla sessione:

Protocollo V3 V3beta1
REST Risorsa sessione Risorsa sessione
RPC Interfaccia della sessione Interfaccia della sessione
C++ SessionsClient Non disponibile
C# SessionsClient Non disponibile
Go SessionsClient Non disponibile
Java SessionsClient SessionsClient
Node.js SessionsClient SessionsClient
PHP Non disponibile Non disponibile
Python SessionsClient SessionsClient
Ruby Non disponibile Non disponibile