Canvas وWebGL
يمكن لـ OpenReplay تسجيل محتوى عناصر <canvas> مع دعم WebGL.
ملاحظة: إذا كنت تستخدم سياق WebGL، فتأكد من إضافة
{ preserveDrawingBuffer: true }إلى خيارات .getContext لمنع الإطارات الفارغة، لأن استخراج بيانات الصورة من canvas يعتمد عادةً على طبقة الرسم التي يتم حذفها افتراضيًا.
تفعيل تسجيل Canvas
Section titled تفعيل تسجيل Canvasلتفعيل تسجيل canvas، ما عليك سوى تشغيل openreplay -e ثم إضافة الكتلة أدناه لتحديث خدمة http.
http:
env:
RECORD_CANVAS: true
CANVAS_QUALITY: low
CANVAS_FPS: 1
بمجرد الانتهاء، احفظ التكوين واخرج منه باستخدام :wq حتى يتولى OpenReplay تطبيق التغييرات.
ملاحظة: تسجيل canvas مُفعَّل في جميع عروض SaaS الخاصة بنا. والإعدادات — التي تم ضبطها على قيمها الافتراضية — لا يمكن تغييرها.
خيارات Canvas
Section titled خيارات Canvasيمكنك ضبط الخيارات أدناه بدقة وفقًا لاحتياجاتك. في الواقع، قد تتطلب بعض التطبيقات معدل إطارات أعلى. على الرغم من أن التقاط اللقطات وترميزها يتم في الخلفية (web-worker) ولا يؤثر على أداء تطبيقك، فإن اختيار قيم عالية سيستهلك المزيد من النطاق الترددي على مستوى المستخدم النهائي وسيتطلب مساحة تخزين أكبر على القرص في نسخة OpenReplay الخاصة بك (الخادم الخلفي). تُرسَل الصور/اللقطات، التي يلتقطها الـ tracker، إلى الخادم الخلفي ثم تُعالَج وتُحوَّل إلى فيديو لأغراض إعادة تشغيل الجلسة.
CANVAS_QUALITY: 'low' | 'medium' | 'high': يحدد جودة اللقطات المُسجَّلة. القيمة الافتراضية هيlow.CANVAS_FPS: number: يحدد عدد الإطارات في الثانية التي تُسجَّل بها عناصر canvas. القيمة الافتراضية هي1.
ملاحظة: بسبب قيود برنامج ترميز الفيديو الحالي، قد تكون لإعادة تشغيل تسجيل canvas خلفية سوداء (أو لون آخر صلب) لأنه من المستحيل ترميز قناة ألفا. نحن نتابع هذا الموضوع عن كثب وسنقوم بالتحديث إلى إصدارات أحدث من برنامج الترميز بمجرد توفرها.
تنقية البيانات
Section titled تنقية البياناتمن ناحية الخصوصية، لا يمكن تنقية محتوى عناصر canvas.
جلسات التصفح المشترك
Section titled جلسات التصفح المشتركبالنسبة للجلسات المباشرة (المعروفة أيضًا باسم Assist)، لا يلزم أي إعدادات خاصة. سيتم تفعيل canvas والتقاطه افتراضيًا وستُنقل البيانات عبر بروتوكول P2P. ولضمان الاستخدام الأمثل للشبكة، تُبَث البيانات فقط عندما يشاهد أحد الوكلاء الجلسة المباشرة ويتغير محتوى canvas.
Canvas كطبقة للرسوم المتحركة
Section titled Canvas كطبقة للرسوم المتحركةإذا كنت تستخدم canvas فوق طبقة الواجهة الأمامية (بقيمة zIndex أعلى)، فقد تلاحظ شاشة سوداء أثناء إعادة تشغيل الجلسات المُسجَّلة. يحدث ذلك لأن واجهة برمجة تطبيقات الويب لا تتيح لنا بعد التقاط قناة ألفا. إذا كان هذا هو الحال مع تطبيق الويب الخاص بك، فأضف سمة HTML المسماة data-openreplay-hidden إلى عنصر canvas الذي يسبب المشكلة لإخفائه تمامًا من تسجيل الجلسة.
هل لديك أسئلة؟
Section titled هل لديك أسئلة؟إذا كانت لديك أي أسئلة حول هذه العملية، فلا تتردد في التواصل معنا عبر Slack الخاص بنا أو الاطلاع على المنتدى الخاص بنا.