صيغة التصدير
التصدير، وهو جزء من Deskami Plus، يكتب السجل نفسه دقيقةً بدقيقة الذي يحفظه Deskami على جهاز Mac الخاص بك. لا يُضاف شيء، ولا يُقدَّر، ولا يُملأ. تصف هذه الصفحة ما في الملف.
الاصطلاحات
- الخلية الفارغة في CSV، أو
nullفي JSON، تعني بلا قياس. أما0فيعني قِيس، وكان صفرًا. - أسماء الأعمدة بالإنجليزية في كل اللغات، وهي ثابتة؛ لا تتغيّر إلا مع
export_versionجديد. - الملفات بترميز UTF-8. وملف CSV مفصول بالفواصل، وفي أوله صف للعناوين.
- الأوقات بتوقيت UTC وبصيغة ISO 8601، مثل
2026-09-28T07:41:00Z. والتواريخ بصيغةYYYY-MM-DD، وهي اليوم التقويمي الذي سُجّلت الدقيقة تحته. - تُكتب الأعداد العشرية بنقطة، ولا يُستخدم فاصل للآلاف أبدًا. والقيم المنطقية
trueوfalse. - هناك صف واحد لكل دقيقة سجّل فيها Deskami شيئًا، ولا صف للدقائق التي لم يسجّل فيها شيئًا.
أعمدة الدقيقة
يحتوي ملف CSV على هذه الأعمدة، بهذا الترتيب؛ وفي JSON تتكوّن كل دقيقة من الحقول نفسها. والاسم بين القوسين هو اسم العمود في ملف قاعدة البيانات الخام.
minute_utc— وقت. بداية الدقيقة، بتوقيت UTC. (minute_utc، بثواني Unix)local_day— تاريخ. اليوم التقويمي الذي تنتمي إليه هذه الدقيقة، بحسب المنطقة الزمنية التي كان فيها جهاز Mac حينها. يُثبَّت عند الكتابة؛ ولا يحرّكه تغيير لاحق في المنطقة الزمنية. (day_key)setup_id— عدد صحيح. التهيئة المستخدمة: كاميرا مع ترتيب شاشات. وفي JSON تُدرَج التهيئات تحتsetups. (profile_id)seconds_at_desk— من 0 إلى 60. الثواني التي رأتك فيها الكاميرا في هذه الدقيقة. وحين تكون قيمةcamera_offهي false، فإن 0 يعني أن الكاميرا كانت تعمل ولم ترك. (present_s)posture_deviation— عدد، 0 أو أكثر. كم انخفض رأسك وكتفاك عن مرجعك أنت، في المتوسط على امتداد الدقيقة، معبَّرًا عنه بمضاعفات عتبة التذكير السارية حينها: 0 عند المرجع، و1 عند العتبة. فارغ حين لم تُقَس الوضعية. (posture_dev)posture_peak— عدد، 0 أو أكثر. أكبر قيمة للمقياس نفسه خلال الدقيقة. (posture_peak)distance_deviation— عدد، 0 أو أكثر. كم كان وجهك أقرب إلى الشاشة مما كان عند مرجعك، على المقياس نفسه، مقروءًا من المسافة بين عينيك في الصورة. (distance_dev)blinks— عدد صحيح. الرمشات المعدودة ما دام قياس العينين ممكنًا. فارغ حين لم يكن ممكنًا. (blinks)incomplete_blinks— عدد صحيح. الرمشات التي لم تقترب لحظتها الأضيق من الإغلاق بما يكفي. فارغ حين لم يكن الحكم ممكنًا. (incomplete_blinks)head_pitch_degrees— عدد. متوسط ميل الرأس إلى الأمام أو الخلف بالدرجات كما تبلّغ عنه الكاميرا: نسبةً إلى الكاميرا، لا إلى مرجعك. (head_pitch)confidence— من 0 إلى 1. متوسط ثقة اكتشاف الوجه. (confidence)light— من 0 إلى 1. متوسط سطوع منطقة الوجه، من 0 مظلم إلى 1 ساطع. لا سطوع الغرفة. (light)eyes_measured— قيمة منطقية. أمكن قياس العينين مرة واحدة على الأقل في هذه الدقيقة. وحين تكون false، تبقىblinksوincomplete_blinksوeye_observed_secondsفارغة. (eye_valid)eye_observed_seconds— من 0 إلى 60. الثواني التي رُصدت فيها العينان فعلًا. ومعدّل الرمش في الدقيقة هوblinks× 60 ÷eye_observed_seconds. (eye_observed_s)look_aways— عدد صحيح. النظرات المكتملة إلى البعيد، أي عادة 20-20-20. فارغ حين لم يكن النظر بعيدًا يُقاس. (gaze_breaks)camera_off— قيمة منطقية. كانت الكاميرا مغلقة في هذه الدقيقة: أغلقتها أنت، أو استحوذ عليها تطبيق آخر، أو سُحب الإذن. وتكون أعمدة الكاميرا حينها فارغة؛ وقد تبقى أعمدة التطبيق والنشاط ممتلئة. (camera_off)declared_break— قيمة منطقية. أخبرت Deskami أنك في استراحة. وتُحسب الدقيقة بعيدًا عن المكتب، أيًّا كان ما رأته الكاميرا. (declared_break)front_app— نص. معرّف الحزمة للتطبيق الذي كان في المقدمة معظم الدقيقة، مثلcom.apple.Safari. فارغ حين كانت تلك القراءة موقوفة، أو كانت الشاشة مقفلة، أو لم يكن شيء في المقدمة. وليس عنوان نافذة أبدًا. (app_id)app_switches— عدد صحيح. كم مرة تغيّر التطبيق الذي في المقدمة في هذه الدقيقة. (app_switches)active_seconds— من 0 إلى 60. الثواني التي كانت لوحة المفاتيح أو الفأرة قد لُمست فيها خلال آخر 15 ثانية. لا يُقرأ إلا الوقت المنقضي منذ آخر حدث، لا المفاتيح أبدًا. فارغ حين كانت تلك القراءة موقوفة. (active_s)call_seconds— من 0 إلى 60. الثواني التي كان فيها تطبيق مكالمات في المقدمة، أو كان فيها تطبيق واحد يفتح الميكروفون والسمّاعة معًا. فارغ حين لم يُقَس، بما في ذلك كل دقيقة سُجّلت قبل أن يبدأ Deskami قياس ذلك. (meeting_s)
JSON
ملف JSON كائن واحد. يبدأ بترويسة: export_version، وapp_version، وexported_at، وtime_zone (وقت التصدير)، وdatabase_schema_version، وrange (kind، from، to) وsetups (id، camera_name، created_at).
ثم يأتي days، كائن واحد لكل يوم مسجَّل في النطاق. ويحمل كل يوم ملخّصه ودقائقه وتذكيراته:
local_dayوminutes_at_desk، وهو مجموعseconds_at_deskمقسومًا على 60.breaks: فترات من 5 دقائق أو أكثر بعيدًا عن المكتب وأقل من ساعتين، بين فترتين على المكتب. والوقت الذي تكون فيه الكاميرا مغلقة لا يُحسب في أي من الجانبين.posture_fine_minutes(posture_deviationأقل من 1) وposture_attention_minutes(1 أو أكثر).blink_rate: الرمشات في الدقيقة على امتداد الوقت الذي رُصدت فيه العينان؛nullإذا قلّ الرصد عن دقيقة واحدة.incomplete_blink_ratio:nullحين يكون عدد الرمشات التي أمكن الحكم عليها قليلًا جدًا.reminders_by_signal: التذكيرات المعروضة، معدودةً حسب الإشارة.minutes: أعمدة الدقيقة أعلاه، كائن واحد لكل دقيقة.reminders: كائن واحد لكل تذكير، فيهtime_utc، وlocal_day، وsetup_id، وsignal(postureأوdistanceأوblinkأوincompleteBlinkأوgaze)، وbuild_up_seconds(الوقت فوق العتبة قبل التذكير)، وrecover_seconds(الوقت حتى العودة تحتها؛nullحين توقّف القياس أولًا)، وasked(هل عُرض السؤال عن مرجعك) وanswer(nullحين لم يُطرح السؤال، وإلاtrueأوfalse).
ملف PDF ليس جدولًا: إنه الملخّص نفسه — ملخّص اليوم، أو الأسبوع، أو الشهر — مطبوعًا على صفحة واحدة تمامًا كما يبدو على الشاشة. وكل رقم فيه هو الرقم الذي على الشاشة.
الملف الخام
الإعدادات › عام › البيانات › إظهار في Finder يكشف history.sqlite، بجانب history.sqlite-wal وhistory.sqlite-shm. وما دام Deskami يعمل، فقد تكون أحدث الدقائق لا تزال في ملف -wal؛ فانسخ الملفات الثلاثة كلها، أو اختر إنهاء Deskami أولًا. وإذا حذفتها أثناء عمل Deskami، فإنه يبدأ سجلًا جديدًا فارغًا خلال ثوانٍ قليلة. أما التصدير فيكتب دائمًا لقطة كاملة. وما تحتويه قاعدة البيانات مذكور في صفحة الخصوصية.