JavaScript APIa

mp.js-ek zure kodeari eskaintzen dion guztia: baimena, zure bezero-IDa, gertaera pertsonalizatuak, helbide-aldaketarik gabeko urratsak, kakoak eta HTML atributuak. Hemen ez da ezer nahitaezkoa: kode-zatiak bakarrik grabatzen du.

1. Deitzeko bi modu

mp.js asinkronoki kargatzen da. Kargatu aurretik exekutatzen den kodeak bere deiak ilara honetan jartzen ditu: window.mp_q; mp.js-ek erabilgarri dagoen bezain laster prozesatzen du. Ondoren, funtzio berak hemen daude erabilgarri: window.MousePlayer.

// Before mp.js has loaded - the queue keeps every call: (window.mp_q = window.mp_q || []).push(['consent', true]); // After mp.js has loaded - the same, directly: MousePlayer.setConsent(true);

Idatzi beti window.mp_q = window.mp_q || [], inoiz ez window.mp_q = []. mp.js-ek array hori entzuten jarraitzen du; berri batek ondorengo dei guztiak galduko lituzke, baimena kentzea barne.

Instalazio-kodeak honako hau ere definitzen du: mp(...) ordezko funtzioa, ilaran modu berean sartzen duena. Bi formek komando berak onartzen dituzte: consent, set, event, step, get, on eta off.

2. Baimena

Baimenik gabe ez da ezer grabatzen. Zure baimen-tresna MousePlayer-ek ezagutzen dituen horietakoa bada, ez duzu hauetako ezer behar; bestela, helarazi erabakia zuk zeuk.

MousePlayer.setConsent(true); // the visitor agreed MousePlayer.setConsent(false); // withdrawn: recording stops on this page MousePlayer.getConsentState(); // e.g. 'WAITING', 'GRANTED', 'GRANTED_LATE', 'DENIED', 'WITHDRAWN'

Baimena kentzeak berehala eragiten du orrian: entzuleak kentzen dira, bufferreko datuak baztertzen dira eta konexioa ixten da. Ikus MousePlayer eta baimena.

3. Zure bezero-IDa

Zure IDarekin, pertsona baten gailu guztiak bisitari bakar bihurtzen dira zerrendetan, eta ezagutzen duzun zenbakiarekin bila dezakezu laguntza-kasua. IDa nabigatzaile bereko azken 30 egunetako aurreko bisitei ere aplikatzen zaie.

// After login - your own customer number, not an e-mail address: MousePlayer.setUserId('customer-4711'); // or through the queue (window.mp_q = window.mp_q || []).push(['set', 'user_id', 'customer-4711']);

Erabili barneko zenbakia, ez helbide elektronikoa edo izena. MousePlayer-ek IDa erakusten du bisitaria agertzen den toki guztietan.

IDak irakurtzea

MousePlayer.getSessionUrl(); // replay link of the running session MousePlayer.getSessionId(); MousePlayer.getVisitorId(); // null without consent // Through the queue, with a callback: (window.mp_q = window.mp_q || []).push(['get', 'session_url', function (url) { // e.g. attach it to a support ticket }]);

4. Gertaera pertsonalizatuak

Bidaltzen dituzun gertaerak erreprodukzioaren denbora-lerroan agertzen dira, helburuak eta inbutuko urratsak izan daitezke eta zure webhooketara eta konektatutako tresnetara doaz. Parametroak balio laburrak dira: zenbakiak, gehienez 255 karaktereko kateak eta gehienez 64 karaktereko gakoak.

MousePlayer.trackEvent('newsletter_signup', { source: 'footer' }); MousePlayer.trackEvent('purchase', { value: 129.90, currency: 'EUR' }); (window.mp_q = window.mp_q || []).push(['event', 'add_to_cart', { sku: 'SKU-123' }]);
  • Izenak: minuskulak eta azpimarrak, gehienez 128 karaktere. Erabili izen bera gauza berarentzat toki guztietan: helburuak izenarekin zehazki bat egin behar du.
  • Ez jarri datu pertsonalik parametroetan. Beste edozein gertaera bezala gordetzen eta erakusten dira.

5. Helbide-aldaketarik gabeko urratsak

Pantaila bai baina helbidea aldatzen ez duen ordainketa edo morroia orri bakarra da MousePlayer-entzat. step() deiak pantaila bakoitza berezko orri-ikustaldi bihurtzen du, bere kaptura, bero-mapako errenkada eta inbutuko urratsarekin.

// A wizard that keeps its address: MousePlayer.step('shipping'); MousePlayer.step('payment'); MousePlayer.step(''); // back to the page itself (window.mp_q = window.mp_q || []).push(['step', 'payment']);

Izenak 1 eta 40 karaktere artean ditu, a-z, 0-9, _ eta - karaktereetatik; zuriuneak marratxo bihurtzen dira, eta gainerako guztia baztertzen da kontsolako abisuarekin. Benetako nabigazioak urratsa amaitzen du.

6. Produktuaren testuingurua

Produktu-orrian, esan MousePlayer-i zer ikusten ari den. Gako hauek soilik onartzen dira; gainerako guztia baztertzen da, bezero-daturik ustekabean sar ez dadin.

MousePlayer.setContext({ page_type: 'product', product_id: 'SKU-123', variant_id: 'SKU-123-42', price: 89.90, currency: 'EUR', category: 'running-shoes', in_stock: true, cart_value: 0, cart_items: 0 });

7. Kakoak

Zure kodeak MousePlayer-ek orrian neurtzen duenari erantzun diezaioke. Erregistratu ilararen bidez, kakoak lehen unea galdu behar ez badu.

// Register early - exit_risk fires once, a few seconds after the visit starts: (window.mp_q = window.mp_q || []).push(['on', 'exit_risk', function (e) { console.log(e.risk, e.reasons, e.session); }]); function onAnswer(e) { /* e.survey, e.value, e.sentiment */ } MousePlayer.on('survey_answer', onAnswer); MousePlayer.off('survey_answer', onAnswer);
IzenaNoizEremuak
exit_riskirteera-ereduak lehen orri-ikustaldia puntuatu du (behin bisita bakoitzeko)risk, reasons, session
churn_riskbisitari itzulia betiko alde egiteko aukera handikotzat markatzen darisk, reasons, session
offer_shownirteera-eskaintza erakusten daart, risk, grund, session
offer_clickharen botoia klikatzen daart, risk, grund, session, fehler
offer_dismissitxi egiten daart, risk, grund, session
survey_showninkesta irekitzen dasurvey, trigger, session
survey_answerbisitariak erantzuten dusurvey, type, value, option, sentiment, session
survey_textjarraipen-testua bidaltzen da (dagoeneko iragazita)survey, text, session
survey_dismissinkesta erantzunik gabe ixten dasurvey, step, session

GTM zubia aktibo dagoenean, gertaera berak dataLayer-era ere doaz (mp_exit_risk eta abar). MousePlayer.exitRisk() funtzioak uneko irteteko arriskua itzultzen du, edo null oraindik ezagutzen ez denean.

8. HTML atributuak

<!-- Nothing typed in here leaves the browser as text --> <section data-mp-mask> ... </section> <!-- The value of this field is never recorded --> <input name="voucher" data-mp-ignore> <!-- Tell MousePlayer what an element is --> <span class="amount" data-mp-role="price">89,90 EUR</span>
  • data-mp-mask (edo honako klasea: mp-masked): elementu barruko testua eta sarrera ordezten dira nabigatzailetik irten aurretik, kapturan, aldaketetan eta kliken deskribapenetan.
  • data-mp-ignore (edo mp-ignore) inprimaki-eremu batean: haren balioa ez da batere grabatzen.
  • data-mp-role: price, price_old, cta_cart, cta_checkout, product_image, variant, shipping_info, returns_info, reviews, rating, stock, coupon, payment_methods, search, filter, heading, article_body, nav, media, form_field, contact_info balioetako bat. Beste balioak ez dira kontuan hartzen.

9. Zure bisitak baztertzea

Ireki zure webgunea behin honako honekin: ?mp_exclude=1 eta nabigatzaile hau ez da gehiago grabatuko; ?mp_exclude=0 aukerak desegiten du. Bulego-sare osorako, sartu IP helbideak proiektuaren ezarpenetan horren ordez.

https://www.your-shop.com/?mp_exclude=1 <!-- this browser is not recorded any more --> https://www.your-shop.com/?mp_exclude=0 <!-- recorded again -->

10. Zure pribatutasun-politikarako esteka

Bisitariek haiei buruz grabatutakoa ikusi eta ezaba dezakete. privacyUrl() funtzioak nabigatzaile honen IDa duen esteka prest itzultzen du, edo null IDrik ez badago, baimenik gabe ez delako ezer grabatu.

var link = MousePlayer.privacyUrl(); // language from <html lang>, or e.g. privacyUrl('de') if (link) document.getElementById('my-data').href = link;