Kuidas MousePlayer töötab

Lihtne juhend jälgimisarhitektuuri, eri ekraanide ja süsteemipiiride kohta.

1. Miks me videot ei salvesta

Levinud eksiarvamus on ekraani MP4 või WebM salvestamine. See nõuaks palju ribalaiust, aeglustaks saiti ja muudaks teksti uduseks.

MousePlayer kasutab kerget tehnoloogiat nimega DOM-hetktõmmise telemeetria. Põhimõte:

Hetktõmmise kavand

Avamisel teeb skript HTML-i ja stiilide tekstikavandi. Salvestab asukohad pilte ja videot kopeerimata; mängija laadib algsetelt aadressidelt. Erand canvas, mille pilt saadetakse (allpool).

Koordinaattelemeetria

Salvestame hiirekohad, kerimissügavuse, klõpsusihtmärgid, aknasuuruse ja lehemuudatused; seadete järgi konsooli, aeglased või nurjunud päringud ja Web Vitalsi. Koordinaadid väikesed, hetktõmmised ja muudatused võivad olla mahukad, saadetakse tihendatult.

Teatrivaate taasesitus

Mängija taastab kavandist lehe ja liigutab virtuaalkursorit reaalajas, tekst jääb teravaks.

Loodud kergena: asünkroonne skript saadab video asemel väikseid arvandmeid. Mõju Core Web Vitalsile sõltub lehtedest, majutusest ja võrgust: mõõtke oma saidil, ärge usaldage meie arvu. Kindlat kiirust ei garanteerita – jaotis 20: kasutustingimused.

2. Eraldusvõimed & mobiilid

Kasutatakse kõike telefonist ülilaia 4K-monitorini. Lehed nihutavad ja kohandavad paigutust eri laiustele: reageeriv veebikujundus.

Täpne vaateala

Moonutuste vältimiseks salvestatakse vaateala täpsed mõõtmed, nt 390x844 nutitelefonil või 1920x1080 arvutimonitoril. Teatrimängija loob mastaapse liivakasti algsete proportsioonidega.

Laua- & sülearvutid

Pidev hiireliikumine ja vahekaardinavigeerimine ühes brauseriseansis. Hõljukmenüü taasesitub, kui dokument muutub; ainult CSS-i hover-efekt dokumenti ei muuda ja ei taasesitu.

Nutitelefonid & tahvlid

Puuteekraanil hõljuvat hiirt pole. Salvestatakse puudutused, kerimisviiped ja püst-/rõhtsuuna vahetused.

Suuruse muutmine seansi keskel

Tahvli pööramine või akna suuruse muutus muudab paigutust. MousePlayer salvestab selle ja kohandab taasesituspinda jooksvalt, säilitades konteksti.

3. Süsteemi & tehnilised piirid

Privaatsuse, turvalisuse ja kiiruse jaoks on tehnilised piirid:

Süsteemipiir MousePlayeri käsitlus
iFrames Sama päritoluga iframe sisu ja tegevus salvestatakse. Teise päritoluga YouTube’i või Stripe’i sisemust ei saa Same-Origin Policy tõttu salvestada: taasesituses kohatäide, sisu ei laadita.
Tundlikud väljad (isikuandmed) Paroolid ja maksed maskitud igal tasemel seadmes; kogu sisestuse täismaskimine vaikimisi. Näete tegevust, mitte teksti. Nõrgemad tasemed vaid kirjalikul loal ning lehe enda dokumenditeksti ei maskita – aadressiga kinnituseleht kuulub tõmmisesse. Mõlemad on kirjas: DPA.
Canvas & WebGL Canvas salvestub pildina lehega ja muutusel kuni umbes kord sekundis suurusepiiriga. Animatsioon kaadrijadana. Maskitud alal või teise päritolu piltidega canvas’t ei saadeta; WebGL võib tühi jääda.
Veebikomponendid (Shadow DOM) Avatud shadow root salvestub sisuga. Suletud juured pole skriptile ligipääsetavad ja jäävad välja.
Edastus & brauserimälu Krüptitud WebSocket (HTTPS/WSS). Võimatuse, nt puhverserveri korral krüptitud HTTP-varutee; väga suured tõmmised eraldi HTTPS-iga. Küpsiseid ei seata, kasutatakse local storage’it ja session storage’it teie saidil.
AFK-jõudeaeg Kui külastaja jätab lehe 20 minutiks, tuvastatakse jõudeaeg ja tihendatakse paus taasesituses, et mitte raisata aega staatikale.