Vai al contenuto
Documentazione

Azioni lato client nel browser del visitatore

Esegui un'azione nel browser del visitatore: con un handler JavaScript registrato con IntoChatActions o un endpoint del sito che usa la sessione dell'utente.

Un'azione lato client viene eseguita nella pagina in cui è incorporato il tuo agente, non sui server di intoCHAT. Serve a raggiungere ciò che solo il browser del visitatore può raggiungere: un endpoint del tuo sito che usa la sessione di login del visitatore, oppure dati e funzioni presenti nella pagina.

Quale scegliere

Vuoi chiamareUsa
Un'API pubblica o che richiede la tua chiave segretaUn'azione API lato server
Un endpoint del tuo dominio che usa i cookie del visitatoreUn'azione lato client, senza codice aggiuntivo
Qualcosa nella pagina, come il carrello in JavaScript o una finestra da aprireUn'azione lato client con un handler registrato
Niente: vuoi solo che il visitatore apra una delle tue pagineUn pulsante personalizzato

Configurazione

  1. Nella scheda Actions, crea l'azione come descritto in Azioni API personalizzate: URL, input e When to use.
  2. Nel passaggio 3. When the AI should use it, seleziona Client-side action.
  3. Salva l'azione.

Come funziona una chiamata

Quando l'agente chiama un'azione lato client, il widget della chat passa la chiamata allo script di incorporamento presente nella tua pagina:

  1. Se la pagina ha registrato un handler con il nome dell'azione, viene eseguito e il valore restituito va all'agente.
  2. Altrimenti la pagina richiama l'URL dell'azione dal tuo dominio, includendo i cookie del visitatore.

Ogni chiamata ha 20 secondi di tempo, poi viene segnalata all'agente come non riuscita. L'azione richiede comunque un URL pubblico valido anche se usi solo un handler; con un handler registrato quell'URL non viene chiamato.

Registrare un handler

Il nome dell'handler è il nome dell'azione in cui ogni carattere diverso da lettere, cifre, _ e - viene sostituito da _: "Get cart" diventa Get_cart. L'editor mostra il nome esatto nel suo esempio di codice.

window.IntoChatActions è disponibile non appena lo script dello snippet è stato eseguito, prima ancora che il widget della chat sia caricato. Gli handler vengono cercati quando l'agente chiama l'azione, quindi registrarli prima o dopo che il widget è pronto funziona allo stesso modo. Aggiungi uno script in qualsiasi punto dopo lo snippet:

<script src="https://www.intochat.ai/api/embed.js" data-chatbot-id="YOUR_AGENT_ID"></script>
<script>
  window.IntoChatActions.register("Get_cart", async function (args) {
    // args: gli input compilati dall'agente.
    // Restituisci qualcosa di serializzabile in JSON. L'agente lo vede.
    return { items: window.myStore.cart.items };
  });
</script>

Il codice che potrebbe essere eseguito prima dello snippet può invece aggiungere coppie [name, handler] a window.IntoChatActionsQueue; lo script le registra quando si carica. Nella maggior parte delle pagine non serve. Con più agenti nella stessa pagina, tutti condividono gli stessi handler.

L'handler riceve come args gli input compilati dall'agente. Se genera un errore, il messaggio arriva all'agente come chiamata non riuscita. IntoChatActions.unregister(name) rimuove un handler e IntoChatActions.registered() elenca i nomi registrati.

Provarla

Send test request nell'editor parte dai server di intoCHAT. Controlla che l'URL risponda e mostra la struttura della risposta, ma non vede le sessioni dei visitatori né gli handler della tua pagina. Nel Playground non c'è una tua pagina attorno alla chat, quindi l'URL viene richiamato dal widget stesso, senza i cookie o gli handler del tuo sito. Prova handler ed endpoint legati alla sessione su una pagina del tuo sito in cui è installato il widget.

Visualizza come Markdown