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 તે ઍરેને સાંભળતું રહે છે — નવું ઍરે સંમતિ પાછી ખેંચવા સહિત પછીના બધા કૉલ ગળી જાય.

સ્થાપન સ્નિપેટ એક કામચલાઉ 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થી એક વ્યક્તિના બધાં ઉપકરણ યાદીમાં એક મુલાકાતી બને છે; જાણીતા નંબરથી સહાય કેસ શોધી શકો. એ જ બ્રાઉઝરની છેલ્લા 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']);

આંતરિક નંબર વાપરો; ઇમેઇલ કે નામ નહીં. મુલાકાતી દેખાય ત્યાં બધે 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. કસ્ટમ ઇવેન્ટ

મોકલેલી ઇવેન્ટ રેકોર્ડિંગની સમયરેખામાં દેખાય છે, લક્ષ્ય અને ફનલ પગલું બની શકે છે તથા વેબહૂક અને જોડાયેલાં સાધનોમાં જાય છે. પરિમાણ ટૂંકાં મૂલ્ય છે: આંકડા, વધુમાં વધુ 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. હૂક

પાના પર MousePlayer જે માપે તેને તમારો કોડ પ્રતિસાદ આપી શકે છે. પ્રથમ ક્ષણ ન ચૂકવી હોય તો કતારથી નોંધાવો.

// 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વાળી તૈયાર લિંક આપે છે — ID ન હોય તો null; કારણ કે સંમતિ વિના કશું રેકોર્ડ થયું નથી.

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