JavaScript API
Wszystko, co mp.js oferuje Twojemu kodowi: zgoda, Twój identyfikator klienta, własne zdarzenia, kroki bez zmiany adresu, haki i atrybuty HTML. Nic z tego nie jest wymagane – sam fragment kodu już nagrywa.
1. Dwa sposoby wywołania
mp.js ładuje się asynchronicznie. Kod, który działa wcześniej, wkłada wywołania do kolejki window.mp_q; mp.js przetwarza ją, gdy tylko się załaduje. Potem te same funkcje są dostępne w window.MousePlayer.
Zawsze pisz window.mp_q = window.mp_q || [], nigdy window.mp_q = []. mp.js dalej nasłuchuje na tej tablicy – nowa połknęłaby każde późniejsze wywołanie, także wycofanie zgody.
Fragment instalacyjny tworzy też zaślepkę mp(...), która buforuje w ten sam sposób. Obie formy znają te same polecenia: consent, set, event, step, get, on i off.
2. Zgoda
Bez zgody nic nie jest nagrywane. Jeśli MousePlayer rozpoznaje Twoje narzędzie do zgód, nie potrzebujesz niczego z tej sekcji; w przeciwnym razie przekaż decyzję samodzielnie.
Wycofanie działa na stronie natychmiast: nasłuchiwacze są usuwane, zbuforowane dane odrzucane, połączenie zamykane. Zobacz MousePlayer a zgody.
3. Twój identyfikator klienta
Z własnym identyfikatorem wszystkie urządzenia jednej osoby stają się na listach jednym odwiedzającym, a zgłoszenie do supportu znajdziesz po numerze, który znasz. Identyfikator obejmuje też wcześniejsze wizyty tej samej przeglądarki z ostatnich 30 dni.
Używaj wewnętrznego numeru, a nie adresu e-mail ani nazwiska. MousePlayer pokazuje identyfikator wszędzie tam, gdzie pojawia się odwiedzający.
Odczytywanie identyfikatorów
4. Własne zdarzenia
Wysłane zdarzenia pojawiają się na osi czasu odtwarzania, mogą być celami i krokami lejka oraz trafiają do Twoich webhooków i podłączonych narzędzi. Parametry to krótkie wartości: liczby, ciągi do 255 znaków, klucze do 64 znaków.
- Nazwy: małymi literami z podkreśleniami, najwyżej 128 znaków. Dla tej samej rzeczy używaj wszędzie tej samej nazwy – cel porównuje nazwy dokładnie.
- Nie umieszczaj danych osobowych w parametrach. Są zapisywane i pokazywane jak każde inne zdarzenie.
5. Kroki bez zmiany adresu
Proces płatności lub kreator, który zmienia widok, ale nie adres, jest dla MousePlayera jedną stroną. step() robi z każdego widoku osobną odsłonę – z własnym zrzutem, wierszem mapy cieplnej i krokiem lejka.
Nazwa ma od 1 do 40 znaków spośród a-z, 0-9, _ i -; spacje stają się myślnikami, wszystko inne jest odrzucane z ostrzeżeniem w konsoli. Prawdziwa nawigacja kończy krok.
6. Kontekst produktu
Na stronie produktu powiedz MousePlayerowi, co jest oglądane. Przyjmowane są tylko te klucze; wszystko inne jest odrzucane, żeby żadne dane klientów nie trafiły tam przypadkiem.
7. Haki
Twój kod może reagować na to, co MousePlayer mierzy na stronie. Rejestruj przez kolejkę, jeśli hak nie może przegapić pierwszej chwili.
| Nazwa | Kiedy | Pola |
|---|---|---|
exit_risk | model porzuceń ocenił pierwszą odsłonę (raz na wizytę) | risk, reasons, session |
churn_risk | powracający odwiedzający jest oznaczony jako zagrożony odejściem | risk, reasons, session |
offer_shown | pojawia się oferta wyjścia | art, risk, grund, session |
offer_click | kliknięto jej przycisk | art, risk, grund, session, fehler |
offer_dismiss | zostaje zamknięta | art, risk, grund, session |
survey_shown | otwiera się ankieta | survey, trigger, session |
survey_answer | odwiedzający odpowiada | survey, type, value, option, sentiment, session |
survey_text | wysłano tekst uzupełniający (już przefiltrowany) | survey, text, session |
survey_dismiss | ankietę zamknięto bez odpowiedzi | survey, step, session |
Gdy most GTM jest włączony, te same zdarzenia trafiają też do dataLayer (mp_exit_risk itd.). MousePlayer.exitRisk() zwraca aktualne ryzyko porzucenia albo null, dopóki nie jest znane.
8. Atrybuty HTML
data-mp-mask(lub klasamp-masked): tekst i dane wpisane w elemencie są zastępowane, zanim opuszczą przeglądarkę – w zrzucie, w zmianach i w opisach kliknięć.data-mp-ignore(lubmp-ignore) na polu formularza: jego wartość w ogóle nie jest nagrywana.data-mp-role: jedna z wartości 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. Inne wartości są pomijane.
9. Wykluczanie własnych wizyt
Otwórz swoją stronę raz z ?mp_exclude=1, a ta przeglądarka nie będzie już nagrywana; ?mp_exclude=0 to cofa. Dla całej sieci biurowej wpisz zamiast tego adresy IP w ustawieniach projektu.
10. Link do Twojej polityki prywatności
Odwiedzający mogą zobaczyć i usunąć to, co o nich nagrano. privacyUrl() zwraca gotowy link z identyfikatorem tej przeglądarki – albo null, jeśli go nie ma, bo bez zgody nic nie nagrano.