JavaScript API
Globalne metody dostępne po załadowaniu skryptu widgetu.
Respondo.init(config)#
Inicjalizuje i montuje widget. Musi być wywołane raz. Zwraca instancję widgetu.
const widget = Respondo.init({
agentId: 'YOUR_AGENT_ID'
});Respondo.identify(identity)#
Dołącza tożsamość użytkownika do bieżącej sesji. Wywołaj po zalogowaniu.
Respondo.identify({
email: 'user@example.com',
name: 'John Doe',
userId: 'usr_123',
userHash: 'hmac_sha256_signature', // opcjonalne, do weryfikacji tożsamości
metadata: { plan: 'pro' },
properties: { // niestandardowe właściwości kontaktu
account_type: 'enterprise', // klucze zdefiniowane w ustawieniach agenta
region: 'eu-west'
}
});Respondo.track(name, properties?)#
Rejestruje zdarzenie po stronie klienta dla bieżącego odwiedzającego (np. zakup, zmiana planu na wyższy). Zdarzenia mogą uruchamiać przewodniki (Tours) wyzwalane zdarzeniami i zaliczać się do celów przewodników. Dostarczanie na zasadzie best-effort z keepalive, więc zdarzenia wysłane tuż przed nawigacją (przekierowanie do kasy) i tak docierają. Wywołuj po init().
Respondo.track('purchase_completed', {
plan: 'pro',
amount: 49
});Respondo.destroy()#
Usuwa widget ze strony. Przydatne w SPA przy przechodzeniu na strony, na których widget nie powinien się pojawiać. Nie czyści tożsamości odwiedzającego ani zapisanej rozmowy — do wylogowania użyj Respondo.reset().
// Usuń widget ze strony
Respondo.destroy();
// Zainicjalizuj ponownie w razie potrzeby (wznawia tę samą rozmowę)
Respondo.init({ agentId: 'YOUR_AGENT_ID' });Respondo.reset()#
Wylogowanie / przekazanie współdzielonego urządzenia. Czyści z przeglądarki anonimowy identyfikator odwiedzającego, zapisaną rozmowę i token sesji, unieważnia token sesji po stronie serwera, dzięki czemu jego kopie przestają działać, i montuje ponownie świeży anonimowy widget. Wywołuj z hooka wylogowania w Twojej aplikacji.
// Przy wylogowaniu — wyczyść tożsamość, rozmowę i sesję, zacznij od nowa
Respondo.reset();Automatyczne zbieranie danych
Widget automatycznie przechwytuje i zapisuje wraz z każdą rozmową:
| Dane | Źródło |
|---|---|
| IP klienta | Nagłówki HTTP |
| Przeglądarka / OS | Nagłówek User-Agent |
| Język | Nagłówek Accept-Language |
| Strefa czasowa | API Intl (JavaScript) |
| URL strony | window.location |
| Strona odsyłająca | Nagłówek Referer |