Документація

JavaScript API

Глобальні методи, доступні після завантаження скрипту віджета.

Respondo.init(config)#

Ініціалізує та монтує віджет. Має бути викликаний один раз. Повертає екземпляр віджета.

const widget = Respondo.init({
  agentId: 'YOUR_AGENT_ID'
});

Respondo.identify(identity)#

Прикріплює особу користувача до поточної сесії. Викликайте після входу.

Respondo.identify({
  email: 'user@example.com',
  name: 'John Doe',
  userId: 'usr_123',
  userHash: 'hmac_sha256_signature', // необов’язково, для верифікації особи
  metadata: { plan: 'pro' },
  properties: {                      // кастомні властивості контакту
    account_type: 'enterprise',      // ключі, визначені в Agent Settings
    region: 'eu-west'
  }
});

Respondo.track(name, properties?)#

Записує клієнтську подію для поточного відвідувача (наприклад, покупку чи підвищення плану). Події можуть запускати тури з тригером за подією та зараховуватися до цілей турів. Доставка за принципом best-effort із keepalive, тож події, надіслані безпосередньо перед навігацією (редіректом на checkout), усе одно доходять. Викликайте після init().

Події також відкривають спливні опитування, які на них чекають (When and where): одразу на відповідній сторінці або під час переходу на неї протягом 30 хвилин — наприклад, після редиректу.

Respondo.track('purchase_completed', {
  plan: 'pro',
  amount: 49
});

Respondo.startSurvey(surveyId)#

Відкриває запущене спливне опитування зараз, на будь-якій сторінці, без урахування Show on, правил сторінок, часу на сторінці, події-тригера та аудиторії. Id скопіюйте в редакторі опитування (Additional ways to share). Опитування, на яке відвідувач уже відповів, повторно не показується. Можна викликати до завершення завантаження віджета.

Respondo.startSurvey('<survey-id>');

Respondo.destroy()#

Видаляє віджет зі сторінки. Корисно для SPA під час переходу на сторінки, де віджет не має відображатися. Він не очищає особу відвідувача чи збережену розмову — для виходу використовуйте Respondo.reset().

// Видалити віджет зі сторінки
Respondo.destroy();

// За потреби повторно ініціалізувати пізніше (продовжує ту саму розмову)
Respondo.init({ agentId: 'YOUR_AGENT_ID' });

Respondo.reset()#

Вихід / передача спільного пристрою. Очищає анонімний visitor id, збережену розмову й токен сесії з браузера, відкликає токен сесії на боці сервера, щоб його копії перестали працювати, і заново монтує свіжий анонімний віджет. Викликайте це з хука виходу вашого застосунку.

// Під час виходу — стерти особу, розмову й сесію, почати з чистого аркуша
Respondo.reset();

Автоматичний збір даних

Віджет автоматично фіксує та зберігає наступне разом із кожною розмовою:

ДаніДжерело
IP клієнтаHTTP-заголовки
Браузер / ОСЗаголовок User-Agent
МоваЗаголовок Accept-Language
Часовий поясIntl API (JavaScript)
URL сторінкиwindow.location
РеферерЗаголовок Referer