JavaScript API

तुमच्या कोडसाठी mp.js: संमती, ग्राहक ID, सानुकूल घटना, पत्ता न बदलणारे टप्पे, हुक आणि 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.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 ने एकाच व्यक्तीची सर्व उपकरणे एक अभ्यागत; माहीत क्रमांकाने मदत प्रकरण शोधता येते. त्याच ब्राउझरच्या मागील 30 दिवसांच्या भेटींनाही ID लागू.

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

अंतर्गत क्रमांक वापरा, ईमेल किंवा नाव नाही. अभ्यागत जिथे दिसतो तिथे 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. पत्ता न बदलणारे टप्पे

स्क्रीन बदलणारा पण पत्ता न बदलणारा चेकआउट किंवा विझार्ड एकच पृष्ठ मानतो. 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.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. हुक

पृष्ठावरील मोजमापांना कोड प्रतिसाद देऊ शकतो. पहिला क्षण चुकवायचा नसेल तर रांगेतून नोंदवा.

// 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;