JavaScript API

mp.js نىڭ ئۆز كودىڭىزغا تەمىنلەيدىغان ھەممىسى: رازىلىق، خېرىدار كىملىكىڭىز، خاس ھادىسىلەر، ئادرېس ئۆزگەرمەيدىغان قەدەملەر، hook لار ۋە 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 شۇ ماسسىپنى داۋاملىق ئاڭلايدۇ — يېڭى ماسسىپ كېيىنكى بارلىق چاقىرىشلارنى، رازىلىقنى قايتۇرۇۋېلىشنىمۇ يۇتۇۋېتەتتى.

ئورنىتىش كود پارچىسى يەنە ئوخشاش ئۇسۇلدا قاتارغا قويىدىغان stub 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. خېرىدار كىملىكىڭىز

ئۆزىڭىزنىڭ كىملىكى بىلەن بىر كىشىنىڭ بارلىق ئۈسكۈنىلىرى تىزىملىكتە بىر زىيارەتچىگە ئايلىنىدۇ، بىلگەن نومۇرىڭىز ئارقىلىق قوللاش ئىشىنى ئىزدەيسىز. كىملىك ئوخشاش توركۆرگۈچنىڭ ئاخىرقى 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 زىيارەتچى كۆرۈنگەن ھەممە يەردە كىملىكنى كۆرسىتىدۇ.

كىملىكلەرنى قايتا ئوقۇش

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

نام a-z، 0-9، _ ۋە - دىن تەركىب تاپقان 1 دىن 40 ھەرپكىچە بولىدۇ؛ بوشلۇق سىزىققا ئايلىنىدۇ، باشقا نەرسە كونترول سۇپىسىدا ئاگاھلاندۇرۇش بىلەن رەت قىلىنىدۇ. ھەقىقىي يولباشلاش قەدەمنى ئاخىرلاشتۇرىدۇ.

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. Hook لار

كودىڭىز 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() بۇ توركۆرگۈچنىڭ كىملىكى بار تەييار ئۇلىنىشنى، كىملىك بولمىسا null قايتۇرىدۇ، چۈنكى رازىلىقسىز ھېچنېمە خاتىرىلەنمىگەن.

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