Riferimento SDK
Ogni SDK di Telybot — Android, iOS, React Native, Flutter, Ionic — implementa la stessa piccola interfaccia. Se ne hai usato uno, li hai usati tutti.
L'API
| Chiama | Cosa fa |
|---|---|
init / initialize | Memorizza il tuo client id. Lo valida e restituisce un errore evidente se è formattato male. |
show | Mostra la chat sopra la tua app. Accetta una domanda facoltativa per la casella del messaggio (0.2.0). |
dismiss | La chiude. |
isShowing | Se è presentato in questo momento. |
| chat incorporata | La chat dentro una delle tue schermate, come una scheda Aiuto (0.2.0). |
onShow / onDismiss | Avvisato quando la chat si apre e si chiude, su Android e iOS (0.2.0). |
setVisitor | Nome, telefono ed email del tuo cliente che ha effettuato l'accesso, proposti nei moduli della chat (0.2.0). |
hasUnreadReply / onReply | Una risposta del tuo team che il cliente non ha ancora visto (0.2.0). |
Apri con una domanda. Passa una domanda a show e viene inserita nella casella del messaggio della chat; il cliente la legge e tocca invia. Viaggia nel #fragment del link, quindi non raggiunge mai un log del server. Fino a 500 caratteri, su una sola riga.
La chat dentro la tua schermata. Android KeydaBotView, iOS KeydaBot.makeChatViewController o SwiftUI KeydaBotView, React Native <KeydaBotChat />, Flutter KeydaBotChat, e il embedWidget() del pacchetto Ionic. Non ha un pulsante di chiusura: la navigazione della tua schermata è la via d'uscita. Su Android, Indietro chiude prima un articolo o un carrello aperto: React Native e Flutter lo fanno per te finché la chat è la schermata in primo piano, e con la KeydaBotView nativa la tua gestione di Indietro chiama il suo goBack().
Il tuo cliente che ha effettuato l'accesso. Dai all'SDK il nome, il numero di telefono o l'email del tuo cliente e la chat compila ciò che la tua app già sa. I dati vengono proposti, mai inviati: compaiono nel modulo «parla con una persona», in un ordine, una prenotazione e una domanda di benvenuto che chiede nome, telefono o email, ed è il cliente a inviarli. Viaggiano nel #fragment del link e sono la parola della tua app, non un'identità verificata. Un valore che la chat rifiuterebbe viene omesso: un nome più lungo di 80 caratteri, un numero di telefono senza 8–15 cifre, un indirizzo email senza un dominio valido. La chat a schermo intero di Ionic si apre nel browser di sistema, che conserva gli indirizzi nella cronologia, quindi non li accetta; il suo widget incorporato sì.
Una risposta mentre la chat è chiusa. Quando un cliente chiede di parlare con una persona e chiude la chat, la tua risposta dal pannello attende nella conversazione. Gli SDK per Android, iOS, React Native e Flutter la controllano quando la tua app torna in primo piano e lo comunicano alla tua app, così puoi mostrare un puntino sul pulsante della chat finché il cliente non la apre. Chiedono solo delle chat in cui il cliente ha chiesto una persona negli ultimi 14 giorni. Una chat che la tua app tiene caricata fuori dalla vista, come una scheda Aiuto in background, non conta come letta: il puntino resta finché il cliente non guarda. Non è una notifica push: una risposta viene notata quando l'app viene aperta.
Deliberatamente non c'è altro. Nessuna API per inviare messaggi e nessuna chiamata per l'identità dell'utente — perché nessuna delle due funziona ancora da un capo all'altro, e un metodo che non funziona è peggio di uno che manca.
L'URL che ogni SDK apre
{baseUrl}/chat/{clientId}baseUrl è impostato su https://telybot.com per predefinita ed è modificabile su ogni piattaforma, per ambienti di staging o un'installazione self-hosted.
Perché una vista web e quanto ti costa
C'è un'unica interfaccia di chat, gestita dalla piattaforma, che viene caricata su ogni canale.
Cosa ottieni: una modifica effettuata dal proprietario nella dashboard — colore di accento, messaggio di benvenuto, nome del bot, messa online — raggiunge immediatamente ogni app, senza alcuna nuova release. Una correzione viene applicata ovunque nello stesso momento. La chat è identica su tutte le piattaforme.
Costi: la chat richiede una connessione. Non c'è una modalità offline e non ci sono ancora notifiche push.
Preferiamo che tu lo sappia prima di pubblicare piuttosto che scoprirlo dopo.
Garanzie offerte da ogni SDK
- Fuga dalla navigazione. Un link verso qualsiasi altra origine si apre nel browser di sistema invece di sostituire la chat. Senza questo, un singolo tocco su un link nel footer interrompe la conversazione del cliente senza possibilità di ritorno.
- Continuità della conversazione. La memorizzazione DOM è attiva, quindi un cliente che chiude l'app e la riapre ritrova la sua chat esattamente dove l'aveva lasciata (per 24 ore).
- La tastiera non copre mai il campo di input.
- Le aree sicure vengono rispettate: nessuna chat viene posizionata sotto una tacca o una barra di navigazione.
- Nessun arresto anomalo raggiunge la tua app. Un caricamento non riuscito mostra un tentativo di ripetizione.
- Nessun analytics, nessun identificatore di dispositivo, nessuna dipendenza di terze parti. Aggiungere un SDK di Telybot non aggiunge alcun tracker alla tua app.
- Indietro chiude prima ciò che il cliente sta guardando. Su Android, Indietro sopra un articolo, un carrello o una prenotazione aperti chiude quello, e solo dopo la chat (SDK 0.2.0 e successivi).
Dentro la chat
Tutto questo arriva dalla pagina ospitata, quindi raggiunge ogni app senza aggiornare l'SDK:
- Un messaggio di benvenuto con pulsanti di suggerimento, nella lingua impostata per il bot.
- La conversazione resta sul dispositivo per 24 ore, e la chat non crea alcun id visitatore. Su un sito web una conversazione dura una scheda del browser. (La chat a schermo intero dell'SDK Ionic richiede la 0.2.0 per questo.)
- Ordini e prenotazioni, quando l'attività li accetta: un carrello, date e orari di prenotazione, un link per chiamare l'attività quando un ordine o una prenotazione ha atteso troppo, e «Aggiungi al calendario» per una prenotazione confermata.
- Allegati: foto (JPEG, PNG, WebP, GIF) e file PDF, DOCX, TXT, CSV e MD. Gli SDK Android e Flutter richiedono la 0.1.4 o successiva per il pulsante allega, e Flutter richiede la 0.2.0 per i documenti.
- «Aggiungi al calendario» è un link a un file
.ics. iOS lo apre in Calendario come un calendario a cui iscriversi. Android propone l'app calendario del telefono quando questa importa file.ics— l'attuale Google Calendar lo fa — altrimenti il browser scarica il file.
Formato del Client ID
kb_live_ followed by 8-48 hexadecimal charactersQualsiasi altra richiesta viene rifiutata all'inizializzazione invece di mostrare un errore 404 davanti a un cliente. Il Client ID è pubblico per progettazione — è visibile in qualsiasi sito web che integri il widget — e non consente in alcun modo di leggere o modificare il tuo account. Consulta la sezione limiti e sicurezza.
Origine
Pubblico, con licenza MIT: github.com/telybotai/telybot-Sdks. Il contratto condiviso a cui ogni pacchetto deve attenersi si trova in CONTRACT.md in cima a quel repository.