Dokumentacja SDK
Każdy zestaw narzędzi Telybot SDK — Android, iOS, React Native, Flutter, Ionic — realizuje ten sam prosty kontrakt. Jeśli używałeś jednego, znasz je wszystkie.
API
| Zadzwoń | Co to robi |
|---|---|
init / initialize | Przechowuje Twój Client ID. Waliduje go i zgłasza błąd, jeśli jest nieprawidłowy. |
show | Wyświetla czat nad twoją aplikacją. Przyjmuje opcjonalne pytanie do pola wiadomości (0.2.0). |
dismiss | Zamyka to. |
isShowing | Czy jest obecnie wyświetlany. |
| osadzony czat | Czat w jednym z twoich własnych ekranów, na przykład w karcie Pomoc (0.2.0). |
onShow / onDismiss | Informuje, gdy czat się otwiera i zamyka, na Androidzie i iOS (0.2.0). |
setVisitor | Imię, telefon i e-mail zalogowanego klienta, podpowiadane w formularzach czatu (0.2.0). |
hasUnreadReply / onReply | Odpowiedź twojego zespołu, której klient jeszcze nie widział (0.2.0). |
Otwórz z pytaniem. Przekaż pytanie do show, a trafi ono do pola wiadomości czatu; klient je czyta i stuka Wyślij. Podróżuje we #fragment linku, więc nigdy nie trafia do logu serwera. Do 500 znaków, w jednej linii.
Czat na twoim własnym ekranie. Android KeydaBotView, iOS KeydaBot.makeChatViewController lub SwiftUI KeydaBotView, React Native <KeydaBotChat />, Flutter KeydaBotChat oraz embedWidget() z pakietu Ionic. Nie ma przycisku zamknięcia — wyjściem jest nawigacja twojego ekranu. Na Androidzie Wstecz najpierw zamyka otwartą pozycję lub koszyk: React Native i Flutter robią to za ciebie, gdy czat jest ekranem na wierzchu, a z natywnym KeydaBotView twoja obsługa Wstecz wywołuje jego goBack().
Twój zalogowany klient. Przekaż SDK imię, numer telefonu lub e-mail klienta, a czat uzupełni to, co twoja aplikacja już wie. Dane są podpowiadane, nigdy wysyłane: pojawiają się w formularzu „porozmawiaj z człowiekiem”, w zamówieniu, rezerwacji i pytaniu powitalnym o imię, telefon lub e-mail, a wysyła je klient. Podróżują we #fragment linku i są słowem twojej aplikacji, nie zweryfikowaną tożsamością. Wartość, którą czat by odrzucił, jest pomijana: imię dłuższe niż 80 znaków, numer telefonu bez 8–15 cyfr, adres e-mail bez prawidłowej domeny. Pełnoekranowy czat Ionic otwiera się w przeglądarce systemowej, która zachowuje adresy w historii, więc ich nie przyjmuje; jego osadzony widżet tak.
Odpowiedź, gdy czat jest zamknięty. Gdy klient prosi o rozmowę z człowiekiem i zamyka czat, twoja odpowiedź z panelu czeka w rozmowie. SDK dla Androida, iOS, React Native i Fluttera sprawdzają to, gdy twoja aplikacja wraca na pierwszy plan, i informują aplikację, żebyś mógł pokazać kropkę na przycisku czatu, dopóki klient go nie otworzy. Pytają tylko o czaty, w których klient prosił o człowieka w ciągu ostatnich 14 dni. Czat, który twoja aplikacja trzyma załadowany poza widokiem, na przykład karta Pomoc w tle, nie liczy się jako przeczytany: kropka zostaje, dopóki klient nie spojrzy. To nie jest powiadomienie push: odpowiedź jest zauważana przy otwarciu aplikacji.
Celowo nie ma nic więcej. Żadnego API do wysyłania wiadomości ani wywołania tożsamości użytkownika — bo żadne z nich nie działa jeszcze od początku do końca, a metoda, która nie działa, jest gorsza niż jej brak.
Adres URL, który otwiera każdy pakiet SDK
{baseUrl}/chat/{clientId}baseUrl domyślnie ustawia się na https://telybot.com i można to zastąpić na każdej platformie, w celach testowych lub przy instalacji we własnym zakresie.
Dlaczego widok webowy i ile Cię to kosztuje
Istnieje jeden interfejs czatu obsługiwany przez platformę i każda powierzchnia go ładuje.
Co otrzymujesz: każda zmiana wprowadzona przez właściciela w panelu – kolor akcentu, wiadomość powitalna, nazwa bota, uruchomienie – natychmiast dociera do każdej aplikacji, bez konieczności publikowania nowej wersji. Poprawka pojawia się wszędzie naraz. Czat wygląda identycznie na wszystkich platformach.
Ile to kosztuje: czat wymaga połączenia. Nie ma trybu offline ani jeszcze powiadomień push.
Wolimy, abyś wiedział o tym przed wdrożeniem, niż odkrył to później.
Gwarancje zapewniane przez poszczególne SDK
- Wychodzenie poza nawigację. Link do innej domyślnej lokalizacji otwiera się w przeglądarce systemowej zamiast zastępować czat. Bez tego jedno kliknięcie w link w stopce kończy rozmowę klienta bez możliwości powrotu.
- Ciągłość konwersacji. Pamięć DOM jest włączona, więc klient, który zamknie aplikację i wróci, znajdzie swój wątek w tym samym miejscu (przez 24 godziny).
- Klawiatura nigdy nie zasłania pola wprowadzania.
- Bezpieczne obszary są uwzględniane — czat nie jest rysowany pod wcięciem ekranu ani paskiem nawigacji.
- Żaden błąd nie powoduje awarii Twojej aplikacji. Nieudane ładowanie wyświetla przycisk ponownej próby.
- Żadnych analityk, żadnych identyfikatorów urządzeń, żadnych zależności od firm trzecich. Dodanie zestawu SDK Telybot nie dodaje trackera do Twojej aplikacji.
- Wstecz najpierw zamyka to, na co patrzy klient. Na Androidzie Wstecz nad otwartą pozycją, koszykiem lub rezerwacją zamyka to, a dopiero potem czat (SDK 0.2.0 i nowsze).
W czacie
Wszystko to pochodzi z hostowanej strony, więc trafia do każdej aplikacji bez aktualizacji SDK:
- Wiadomość powitalna z przyciskami podpowiedzi, w języku ustawionym dla bota.
- Rozmowa jest przechowywana na urządzeniu przez 24 godziny, a czat nie tworzy identyfikatora odwiedzającego. Na stronie internetowej rozmowa trwa jedną kartę przeglądarki. (Pełnoekranowy czat Ionic SDK potrzebuje do tego wersji 0.2.0.)
- Zamówienia i rezerwacje, gdy firma je przyjmuje: koszyk, daty i godziny rezerwacji, link do zadzwonienia do firmy, gdy zamówienie lub rezerwacja czeka za długo, oraz „Dodaj do kalendarza” dla potwierdzonej rezerwacji.
- Załączniki: zdjęcia (JPEG, PNG, WebP, GIF) oraz pliki PDF, DOCX, TXT, CSV i MD. SDK dla Androida i Fluttera wymagają wersji 0.1.4 lub nowszej dla przycisku załącznika, a Flutter wersji 0.2.0 dla dokumentów.
- „Dodaj do kalendarza” to link do pliku
.ics. iOS otwiera go w Kalendarzu jako kalendarz do subskrypcji. Android proponuje aplikację kalendarza telefonu, gdy importuje ona pliki.ics— obecny Kalendarz Google to robi — a w przeciwnym razie przeglądarka pobiera plik.
Format identyfikatora klienta (Client ID)
kb_live_ followed by 8-48 hexadecimal charactersWszystko inne jest odrzucane podczas inicjalizacji zamiast otwierania błędu 404 przed klientem. Identyfikator klienta (Client ID) jest publiczny z założenia – jest widoczny na każdej stronie internetowej, która osadza widżet – i nie daje możliwości odczytu ani zmiany Twojego konta. Zobacz limity i bezpieczeństwo.
Źródło
Publiczne, na licencji MIT: github.com/telybotai/telybot-Sdks. Wspólna umowa, której przestrzega każdy pakiet, znajduje się w CONTRACT.md na górze tego repozytorium.