MousePlayer چگونه کار میکند
راهنمای سادهٔ معماری ردیابی، مدیریت وضوح صفحه در دستگاههای گوناگون و مرزهای سامانه.
1. چرا از ضبط ویدئو استفاده نمیکنیم
برداشت نادرست رایج این است که ابزار تحلیل دیداری فایل ویدئوی استاندارد (مانند MP4 یا WebM) از صفحهٔ بازدیدکننده ضبط میکند. این کار پهنای باند فراوان مصرف میکند، سایت را بسیار کند میکند و متن تار و ناخوانا میسازد.
MousePlayer بهجای آن از فناوری سبکی با این نام استفاده میکند: دادهسنجی تصویر DOM. سازوکار پایهٔ آن چنین است:
تصویر طرح صفحه
وقتی بازدیدکننده صفحه را باز میکند، اسکریپت ما «طرح» متنی ساختار HTML و سبکهای شما را میگیرد. جای عناصر را بدون کپی فایل تصویر یا ویدئوی صفحه ثبت میکند؛ پخشکننده هنگام بازپخش تصویر را از نشانی اصلی بارگذاری میکند. استثنا عنصر canvas است که محتوای آن بهصورت تصویر منتقل میشود (پایین را ببینید).
دادهسنجی مختصات
هنگام تعامل کاربر، جریان رویدادها را ثبت میکنیم: موقعیت ماوس، عمق پیمایش، مقصد کلیک و تغییر اندازهٔ مرورگر، بهاضافهٔ تغییر خود صفحه و بسته به تنظیمات، پیام کنسول، درخواست ناموفق یا کند و سنجهٔ زمان بارگذاری (Web Vitals). حرکت و کلیک کمحجماند؛ تصویر و تغییر صفحه بسته به صفحه بسیار بزرگتر میشوند و فشرده منتقل میشوند.
بازپخش تئاتر
وقتی نشست را در داشبورد میبینید، پخشکننده صفحه را از روی طرح ثبتشده بازمیسازد و نشانگر مجازی را زنده روی آن حرکت میدهد؛ متن کاملاً واضح میماند.
طراحیشده برای سبک ماندن: اسکریپت ناهمگام بارگذاری و بهجای ویدئو، نقطهدادهٔ عددی کوچک منتقل میکند تا اثر خودش کم بماند. اثر آن بر Core Web Vitals به صفحه، میزبانی و شبکهٔ بازدیدکننده بستگی دارد؛ پس روی سایت خودتان بسنجید و به عدد ما اکتفا نکنید. سرعت بارگذاری مشخصی تضمین نمیشود – بند 20 این سند را ببینید: شرایط استفاده.
2. مدیریت وضوح صفحه & دستگاههای همراه
کاربران امروزی با هر چیزی از تلفن کوچک تا نمایشگر فوقعریض 4K کار میکنند. سایت خودکار چیدمانش را برای عرضهای متفاوت جابهجا، جمع و بازآرایی میکند؛ مفهومی به نام طراحی وب واکنشگرا.
تطبیق با نمای دقیق بازدیدکننده
برای جلوگیری از اعوجاج بازپخش، MousePlayer ابعاد دقیق نمای مرورگر بازدیدکننده را ثبت میکند (مثلاً 390x844 برای تلفن یا 1920x1080 برای نمایشگر رایانه). وقتی پخشکنندهٔ تئاتر را باز میکنید، موتور ما محیط ایزولهٔ مقیاسشدهای میسازد که نسبت صفحهٔ اصلی بازدیدکننده را دقیقاً بازتاب میدهد.
صفحهٔ رایانهٔ رومیزی & لپتاپ
روی رایانهٔ معمولی، حرکت پیوستهٔ ماوس و پیمایش چند برگه را در همان نشست مرورگر ضبط میکنیم. منوی بازشونده با قرارگیری نشانگر وقتی در بازپخش دیده میشود که صفحه سندش را تغییر دهد؛ اثر خالص CSS هنگام قرارگیری نشانگر در سند دیده نمیشود و در بازپخش بازتولید نمیشود.
تلفن هوشمند & تبلت
صفحهٔ لمسی نشانگر شناور ماوس ندارد. MousePlayer خودکار با ضبط لمس، پیمایش با کشیدن و تغییر جهت (عمودی در برابر افقی) سازگار میشود.
چالش تغییر اندازه در میانهٔ نشست
اگر بازدیدکننده وسط نشست تبلت را بچرخاند یا پنجرهٔ مرورگر رایانه را تغییر اندازه دهد، چیدمان سایت پویا تغییر میکند. MousePlayer این رویدادها را ثبت و بوم پخش را همان لحظه روان تنظیم میکند تا زمینهٔ تعامل محفوظ بماند.
3. محدودیتهای سامانه & مرزهای فنی
MousePlayer برای احترام به حریم خصوصی، حفظ امنیت مرورگر و پردازش سریع داده در مرزهای فنی مشخص کار میکند:
| مرز سامانه | شیوهٔ مدیریت در MousePlayer |
|---|---|
| iFrames | iframe با مبدأ یکسان با صفحهٔ شما همراه محتوا و تعامل درونش ضبط میشود. محتوای جاسازیشده از مبدأ دیگر (مثلاً پخشکنندهٔ YouTube یا فرم پرداخت Stripe) بهسبب سیاست امنیتی مرورگر (Same-Origin Policy) درونش ضبط نمیشود؛ در بازپخش جانگهدار نشان میدهد و آنجا بارگذاری نمیشود. |
| فیلد ورودی حساس (PII) | فیلد رمز و پرداخت در همهٔ سطحهای پوشاندن روی دستگاه بازدیدکننده پوشانده میشود و پوشاندن کامل همهٔ ورودی فرم پیشفرض هر ملک است. میبینید تایپ رخ داده، اما متن تایپشده را نمیبینید. دو محدودیت هست: دو سطح ضعیفتر فقط با تأیید کتبی ما فعال میشوند و پوشاندن هرگز به چیزی که صفحهٔ خودتان در سند چاپ میکند نمیرسد – صفحهٔ تأیید دارای نشانی بخشی از تصویر صفحه است. هر دو در این سند آمدهاند: توافقنامهٔ پردازش داده. |
| عناصر Canvas & WebGL | محتوای canvas بهصورت تصویر ضبط میشود: یک بار با تصویر صفحه و سپس با هر تغییر، حداکثر حدود یک بار در ثانیه و با سقف اندازه. بنابراین پویانمایی روان بهشکل توالی قاب دیده میشود. در ناحیهٔ پوشاندهشده یا canvas دارای تصویر از مبدأ دیگر هیچ تصویری منتقل نمیشود؛ محتوای WebGL ممکن است خالی بماند. |
| مؤلفههای وب (Shadow DOM) | ریشهٔ سایهٔ باز همراه محتوا ضبط میشود. ریشهٔ بسته برای اسکریپت دسترسپذیر نیست و محتوایش در بازپخش نیست. |
| انتقال & ذخیرهسازی مرورگر | داده روی اتصال رمزگذاریشدهٔ WebSocket (HTTPS/WSS) فرستاده میشود. اگر مثلاً بهسبب پراکسی برقرار نشود، اسکریپت از مسیر HTTP رمزگذاریشده استفاده میکند؛ تصویر بسیار بزرگ صفحه جداگانه روی HTTPS بارگذاری میشود. MousePlayer کوکی نمیگذارد؛ از ذخیرهسازی محلی و ذخیرهسازی نشست مرورگر در سایت شما استفاده میکند. |
| دورهٔ بیکاری AFK | اگر بازدیدکننده برگه را باز بگذارد و 20 دقیقه دور شود، موتور خودکار بیکاری را تشخیص میدهد و فاصلهٔ بیکار را در بازپخش فشرده میکند تا وقتتان صرف تماشای صفحهٔ ثابت نشود. |