Sessioni

Una sessione rappresenta una conversazione tra un agente Dialogflow CX e un utente finale. Puoi creare una sessione all'inizio di una conversazione e utilizzarla 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 è determinata in modo univoco da un ID sessione generato dal tuo sistema. Puoi creare 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 massime pari a 36 byte. Il tuo sistema è responsabile della generazione di ID sessione univoci. Possono essere numeri casuali, identificatori degli utenti finali sottoposti ad hashing o qualsiasi altro valore che ti risulti comodo generare.

Consulta la documentazione sulla 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 dell'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 tuo codice invia l'input utente finale, insieme ai valori 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 Session Risorsa Session
RPC Interfaccia della sessione Interfaccia della sessione
C++ SessionsClient Non disponibile
C# SessionsClient Non disponibile
Vai SessionsClient Non disponibile
Java SessionsClient SessionsClient
Node.js SessionsClient SessionsClient
PHP Non disponibile Non disponibile
Python SessionsClient SessionsClient
Ruby Non disponibile Non disponibile