JavaScript API

Այն ամենը, ինչ mp.js-ն առաջարկում է ձեր կոդին՝ համաձայնություն, հաճախորդի ID, հատուկ իրադարձություններ, քայլեր առանց հասցեի փոփոխության, hooks և HTML հատկանիշներ։ Այստեղ ոչինչ պարտադիր չէ. միայն կոդի հատվածն արդեն գրանցում է։

1. Կանչելու երկու եղանակ

mp.js-ը բեռնվում է ասինխրոն։ Մինչև բեռնվելը կատարվող կոդն իր կանչերը դնում է window.mp_qհերթում. mp.js-ն այն մշակում է հասանելի դառնալուն պես։ Այնուհետև նույն գործառույթները հասանելի են 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);

Միշտ գրեք window.mp_q = window.mp_q || [], երբեք՝ window.mp_q = []։ mp.js-ը շարունակում է լսել այդ զանգվածը. նորը կկլաներ հետագա բոլոր կանչերը՝ ներառյալ համաձայնության հետկանչը։

Տեղադրման հատվածը սահմանում է նաև mp(...) ժամանակավոր գործառույթը, որը նույն կերպ հերթագրում է։ Երկու ձևերն էլ ընդունում են նույն հրամանները՝ consent, set, event, step, get, on և off։

2. Համաձայնություն

Առանց համաձայնության ոչինչ չի գրանցվում։ Եթե համաձայնության գործիքը MousePlayer-ի ճանաչածներից է, սրանցից ոչ մեկը պետք չէ. հակառակ դեպքում ինքներդ փոխանցեք որոշումը։

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'

Հետկանչն անմիջապես ուժի մեջ է մտնում էջում. լսիչները հեռացվում են, բուֆերի տվյալները՝ մերժվում, կապը՝ փակվում։ Տես MousePlayer և համաձայնություն։

3. Ձեր հաճախորդի ID-ն

Ձեր սեփական ID-ով մեկ անձի բոլոր սարքերը ցանկերում դառնում են մեկ այցելու, և կարող եք աջակցության դեպքը որոնել ձեզ հայտնի համարով։ ID-ն կիրառվում է նաև նույն դիտարկիչի վերջին 30 օրվա ավելի վաղ այցերի համար։

// 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']);

Օգտագործեք ներքին համար, ոչ էլփոստի հասցե կամ անուն։ MousePlayer-ը ID-ն ցույց է տալիս այցելուի հայտնվելու ամեն տեղում։

ID-ների հետադարձ ընթերցում

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. Հատուկ իրադարձություններ

Ձեր ուղարկած իրադարձությունները հայտնվում են դիտման ժամանակագծում, կարող են լինել նպատակներ ու ձագարի քայլեր և գնում են webhook-ներին ու կապակցված գործիքներին։ Պարամետրերը կարճ արժեքներ են՝ թվեր, մինչև 255 նիշ տողեր, մինչև 64 նիշ բանալիներ։

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' }]);
  • Անունները՝ փոքրատառերով ու ընդգծման գծերով, առավելագույնը 128 նիշ։ Նույն բանի համար ամենուր նույն անունն օգտագործեք. նպատակը ճշգրիտ է համընկնում անուններին։
  • Պարամետրերում անձնական տվյալներ մի դրեք։ Դրանք պահվում և ցուցադրվում են ցանկացած այլ իրադարձության պես։

5. Քայլեր առանց հասցեի փոփոխության

Վճարման կամ օգնականի գործընթացը, որը փոխում է էկրանը, բայց ոչ հասցեն, MousePlayer-ի համար մեկ էջ է։ step() -ը յուրաքանչյուր էկրանը դարձնում է առանձին էջադիտում՝ սեփական պատկերով, ջերմային քարտեզի տողով և ձագարի քայլով։

// 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']);

Անունը 1-ից 40 նիշ է՝ a-z, 0-9, _ և - հավաքածուից. բացատները դառնում են գծիկներ, մյուս ամեն ինչը մերժվում է վահանակի զգուշացմամբ։ Իրական նավարկումն ավարտում է քայլը։

6. Արտադրանքի համատեքստ

Ապրանքի էջում MousePlayer-ին հայտնեք՝ ինչն է դիտվում։ Ընդունվում են միայն այս բանալիները. մնացածը մերժվում է, որպեսզի հաճախորդի տվյալները պատահմամբ ներս չսահեն։

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. Hooks

Ձեր կոդը կարող է արձագանքել MousePlayer-ի էջում չափածին։ Գրանցեք հերթի միջոցով, եթե hook-ը չպետք է բաց թողնի առաջին պահը։

// 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);
ԱնունԵրբԴաշտեր
exit_riskդուրս գալու մոդելը գնահատել է առաջին էջադիտումը՝ մեկ անգամ այցի համարrisk, reasons, session
churn_riskկրկին այցելած այցելուն նշվում է որպես հավանական չվերադարձողrisk, reasons, session
offer_shownցուցադրվում է դուրս գալու առաջարկըart, risk, grund, session
offer_clickսեղմվում է դրա կոճակըart, risk, grund, session, fehler
offer_dismissայն փակվում էart, risk, grund, session
survey_shownբացվում է հարցումsurvey, trigger, session
survey_answerայցելուն պատասխանում էsurvey, type, value, option, sentiment, session
survey_textուղարկվում է հաջորդող տեքստը՝ արդեն զտվածsurvey, text, session
survey_dismissհարցումը փակվում է առանց պատասխանիsurvey, step, session

Երբ GTM կամուրջը միացված է, նույն իրադարձությունները գնում են նաև dataLayer (mp_exit_risk և այլն)։ MousePlayer.exitRisk() -ը վերադարձնում է ընթացիկ դուրս գալու ռիսկը կամ null՝ մինչև այն հայտնի լինելը։

8. HTML հատկանիշներ

<!-- 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 կամ դասը՝ mp-masked. տարրի ներսի տեքստն ու մուտքագրումը փոխարինվում են մինչև դիտարկիչից դուրս գալը՝ պատկերում, փոփոխություններում և սեղմման նկարագրություններում։
  • data-mp-ignore կամ mp-ignore՝ ձևի դաշտի վրա. դրա արժեքն ընդհանրապես չի գրանցվում։
  • 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։ Մյուս արժեքներն անտեսվում են։

9. Ձեր սեփական այցերի բացառում

Մեկ անգամ բացեք կայքը՝ ?mp_exclude=1 -ով, և այս դիտարկիչն այլևս չի գրանցվի. ?mp_exclude=0 -ը չեղարկում է դա։ Ամբողջ գրասենյակային ցանցի համար փոխարենը IP հասցեները մուտքագրեք նախագծի կարգավորումներում։

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. Հղում ձեր գաղտնիության քաղաքականության համար

Այցելուները կարող են տեսնել ու ջնջել իրենց մասին գրանցվածը։ privacyUrl() -ը վերադարձնում է պատրաստ հղումը՝ այս դիտարկիչի ID-ով, կամ null, եթե այն չկա, քանի որ առանց համաձայնության ոչինչ չի գրանցվել։

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