Dokumentacijos turinys
Gautieji ir el. paštas
Užduotys
Failai
Analitika
Paskyra ir mokėjimai
Pokalbių valdiklio JS API
Atnaujinta
Svetainė valdo pokalbių valdiklį per vieną funkciją HrcWidget: perduoda, kas yra lankytojas, atidaro ir uždaro langą, klauso įvykių. Kiekvienas kvietimas atrodo taip: HrcWidget('<komanda>', ...argumentai).
Įkėlimas ir eilė
Naudokite pilną įdėjimo kodą. Kvietimai, padaryti iki įkėliklio atsisiuntimo, laukia eilėje HrcWidget.q ir įvykdomi iš eilės, įskaitant funkcijas (callback). Kvietimai po įkėliklio, bet iki init, saugomi iki 100; perpildžius pirmiausia atmetamas track, niekada identify, reset ar on.
Bloga reikšmė ar nežinoma komanda niekada nemeta klaidos jūsų puslapyje: ji praleidžiama su vienu įspėjimu konsolėje. debug: true parodo daugiau.
TypeScript tipai
Tipai su visomis komandomis: https://widget.hrc.lt/v1/hrc.d.ts. Atsisiųskite failą prie savo kodo:
// Atsisiųskite į projektą:
// https://widget.hrc.lt/v1/hrc.d.ts
/// <reference path="./hrc.d.ts" />
// redaktorius patikrina tipus
HrcWidget('open', { view: 'new', type: 'question' });init
Paleidžia valdiklį. Pakartotinis init su kitu raktu išjungia seną valdiklį ir paleidžia naują.
HrcWidget('init', {
// iš jūsų įdėjimo kodo
widgetKey: 'wk_xxxxxxxxxxxxxxxxxxxx',
// arba 'lt', 'en', 'ru', 'pl', ...
locale: 'auto',
// veikia kaip update
profile: { attributes: { plan: 'pro' } },
context: {
appVersion: '3.8.1',
custom: { page_type: 'checkout' },
},
// 'hidden' savo mygtukui
launcher: 'default',
zIndex: 2147483000,
// true: rodo atmestas reikšmes
debug: false,
});| Parinktis | Reikšmė |
|---|---|
widgetKey |
Valdiklio raktas iš skilties Įdėjimas. Privalomas. |
locale |
'auto' arba kalbos kodas, pavyzdžiui 'lt'. |
identity |
Tas pats kaip identify. |
profile |
Tas pats kaip update, pritaikoma atsiradus sesijai. |
context |
Tas pats kaip setContext. |
launcher |
'default' arba 'hidden' (mygtukas paslėptas, open veikia). |
zIndex |
Valdiklio sluoksnis, pagal nutylėjimą 2147483000. |
debug |
true konsolėje paaiškina praleistas reikšmes. |
identify
Atpažįsta prisijungusį naudotoją: jis mato savo pokalbius bet kuriame įrenginyje. userHash apskaičiuojamas jūsų serveryje, žr. Naudotojų atpažinimas. Kartu galite perduoti profilio laukus.
HrcWidget('identify', {
// jūsų naudotojo ID, visada tekstas
externalId: String(user.id),
email: user.email,
name: user.name,
// žr. „Naudotojų atpažinimas“
userHash: userHashFromYourServer,
company: { id: 'acme-1', name: 'Acme', plan: 'Pro' },
attributes: { plan: 'pro', seats: 12, trial_ends_at: '2026-12-01' },
tags: ['vip'],
});update
Dalinai atnaujina lankytojo profilį: vardą, telefoną, nuotrauką, įmonę ir iki 50 savų laukų. Laukai sujungiami po vieną; null arba '' laukelį pašalina. Per 500 ms padaryti kvietimai išsiunčiami kartu. Taisyklės ir ribos: Lankytojo profilis.
HrcWidget('update', {
phone: '+370 600 00000',
company: {
name: 'Acme',
website: 'https://acme.example',
plan: 'Pro',
},
// skaičius, taip/ne, data ar tekstas
attributes: {
orders: 14,
newsletter: true,
signed_up_at: new Date('2024-03-12'),
app_version: '3.8.1',
// null arba '' pašalina raktą
coupon: null,
},
});setTags
Masyvas prideda žymas, objektas prideda ir pašalina. Iki 20 žymų kontaktui, raidės, skaičiai ir brūkšnelis.
// prideda šias žymas
HrcWidget('setTags', ['vip', 'beta']);
// prideda ir pašalina
HrcWidget('setTags', { add: ['churn-risk'], remove: ['beta'] });track
Įrašo vieną lankytojo veiksmą. Komanda šoninėje juostoje mato paskutinius 5, kontakto puslapyje visus.
HrcWidget('track', 'plan-upgraded', { from: 'free', to: 'pro' });
HrcWidget('track', 'checkout.failed', {
reason: 'card_declined',
amount: 49.9,
});setContext
Pakeičia sesijos reikšmes, kurios siunčiamos su kiekviena kita žinute. Jos neišsaugomos profilyje. Iki 20 savų raktų, reikšmė iki 200 simbolių.
// Tik kitoms šio apsilankymo žinutėms
HrcWidget('setContext', {
appVersion: '3.8.1',
custom: { cart_id: 'c-1042', step: 'payment' },
});open, close, toggle ir mygtukas
open atidaro langą: view yra 'home', 'new' arba 'list', type yra 'bug', 'feature' arba 'question'. Su view: 'new' parinktis message įrašo tekstą į naujo pokalbio laukelį (neišsiunčia, iki 2000 simbolių).
// pradinis langas
HrcWidget('open');
// lankytojo pokalbiai
HrcWidget('open', { view: 'list' });
// iš karto klaidos forma
HrcWidget('open', { view: 'new', type: 'bug' });
// tekstas rašymo lauke, neišsiųstas
HrcWidget('open', { view: 'new', message: 'Order #1042: ' });
HrcWidget('close');
HrcWidget('toggle');
// open() vis tiek veikia
HrcWidget('hideLauncher');
HrcWidget('showLauncher');on ir off: įvykiai
function onUnread(event) {
document.title = event.count ? '(' + event.count + ') Shop' : 'Shop';
}
// iš karto su dabartiniu skaičiumi
HrcWidget('on', 'unread', onUnread);
HrcWidget('on', 'ready', function (event) {
console.log(event.isIdentified, event.locale);
});
HrcWidget('on', 'conversation-started', function (event) {
console.log(event.type);
});
// pašalina šią funkciją
HrcWidget('off', 'unread', onUnread);
// pašalina visas ready funkcijas
HrcWidget('off', 'ready');| Įvykis | Duomenys | Kada |
|---|---|---|
ready |
{ isIdentified, hasConversations, unreadCount, locale } |
Valdiklis paleistas. Vėliau užregistruotas on('ready') gauna paskutinę reikšmę iš karto. |
open |
{ view } |
Kiekvieną kartą atidarius. |
close |
{} |
Kiekvieną kartą uždarius. |
unread |
{ count } |
Iš karto su dabartine reikšme, tada po kiekvieno pasikeitimo. |
message |
{ unreadCount } |
Atėjo komandos atsakymas, kurio lankytojas dar neperskaitė. Teksto nėra, kad kiti puslapio skriptai neskaitytų atsakymų. |
conversation-started |
{ conversationId, type } |
Lankytojas pradėjo pokalbį. |
identified |
{} |
identify pavyko. |
identify-failed |
{ code } |
identify nepavyko, pavyzdžiui IDENTITY_INVALID. |
Callback, kuris meta klaidą, parašo vieną įspėjimą ir nesustabdo nei valdiklio, nei kitų callback.
setLocale, reset ir destroy
// pakeičia kalbą iš karto, arba 'auto'
HrcWidget('setLocale', 'pl');
// atsijungus: pamiršta lankytoją
HrcWidget('reset');
// pašalina valdiklį; vėl kvieskite init
HrcWidget('destroy');reset pamiršta sesiją, atpažinimą ir visus dar neišsiųstus profilio pakeitimus, žymas, veiksmus ir sesijos reikšmes. Kvieskite jį, kai naudotojas atsijungia.
Vieno puslapio programos
Puslapio keitimą (pushState, popstate) įkėliklis pastebi pats, todėl žinutėse matote tikrą puslapį. React pavyzdys: Įdėjimo kodas, React ir CSP.
Neradote atsakymo? Parašykite mums