Audin Docs
Widget

API & eventi

L'API JavaScript del widget Audin — i metodi e gli eventi di AudinChat (popup) e AudinEmbed (embedded), con le differenze tra le due modalità.

Versione Markdown di questa pagina

Scarica o copia il contenuto di questa pagina in formato .md — utile per fornirlo a un agente AI che integra questa specifica feature.

Scarica .md

Una volta caricato lo script, il widget espone un oggetto globale su window che puoi usare per inizializzarlo, controllarlo e reagire agli eventi:

  • Popupwindow.AudinChat
  • Embeddedwindow.AudinEmbed

I due oggetti condividono il modello (init, on, destroy), ma non hanno la stessa superficie: il popup, avendo una bolla che si apre e si chiude, espone in più open()/close() e i relativi eventi. L'embedded è sempre inline, quindi non ha né open/close né quegli eventi.

Metodi per modalità

MetodoAudinChat (popup)AudinEmbed (embedded)
init(options?)
on(event, cb)
destroy()
open()
close()

init(options?)

Inizializza il widget: inietta l'iframe della chat e avvia la connessione. Va chiamato una sola volta — chiamate successive sono ignorate (no-op).

L'unico argomento è l'oggetto opzioni, con un solo campo documentato:

init(options?: {
  user?: {
    email?: string;
    phone?: string;
    fullName?: string;
    customData?: Record<string, unknown>;
  };
}): void

Tipicamente è già richiamato dallo snippet di installazione nell'handler onload del loader. Vedi Dati utente & lead matching per il dettaglio dei campi user.

open() / close() — solo popup

Apre o chiude la bolla della chat a livello di codice, senza che l'utente clicchi. Esistono solo su AudinChat:

// Apri la chat da un tuo bottone
document.querySelector("#aiuto").addEventListener("click", () => {
  AudinChat.open();
});

// Chiudila programmaticamente
AudinChat.close();

L'embedded è sempre visibile inline, quindi non espone questi metodi.

on(event, cb)

Sottoscrive una callback a un evento del widget (vedi Eventi). Disponibile su entrambe le modalità (cambiano gli eventi emessi):

AudinChat.on("message", (data) => {
  console.log("Nuovo messaggio nella chat", data);
});

destroy()

Smonta il widget: rimuove l'iframe dalla pagina e chiude la connessione. Disponibile su entrambe le modalità. Utile nelle single-page application quando devi rimuovere completamente il widget (vedi Configurazione & comportamento).

Eventi

Ti iscrivi agli eventi con on(event, cb). Anche gli eventi disponibili dipendono dalla modalità: solo il popup ha apertura/chiusura, quindi solo lui emette open e close. Entrambe le modalità emettono message.

EventoAudinChat (popup)AudinEmbed (embedded)Quando
messageÈ arrivato un messaggio nella chat. La callback riceve il data del messaggio.
openLa bolla della chat si apre.
closeLa bolla della chat si chiude.

L'embedded emette solo message: essendo sempre inline non ha uno stato aperto/chiuso e quindi non genera open/close. Iscriversi a open/close su AudinEmbed non produce errori, ma le callback non verranno mai chiamate.

Esempio — popup

AudinChat.on("open", () => {
  // es. tracking: la chat è stata aperta
});

AudinChat.on("close", () => {
  // es. tracking: la chat è stata chiusa
});

AudinChat.on("message", (data) => {
  // un messaggio è arrivato nella conversazione
});

Esempio — embedded

AudinEmbed.on("message", (data) => {
  // un messaggio è arrivato nella conversazione inline
});

Il payload dell'evento message (data) rappresenta il messaggio ricevuto nella chat. Trattalo come un valore opaco per integrazioni semplici (es. logging, tracking dell'attività): la sua struttura interna non fa parte della superficie pubblica e può cambiare.

Prossimi passi

On this page