DeskamiMasanda oturan küçük bir arkadaş

Dışa aktarma biçimi

Deskami Plus'taki dışa aktarma, Deskami'nin Mac'inde tuttuğu dakika dakika kaydın aynısını yazıyor. Hiçbir şey eklenmiyor, tahmin edilmiyor, boşluklar doldurulmuyor. Bu sayfa dosyada ne olduğunu anlatıyor.

Kurallar

  • CSV'de boş bir hücre ya da JSON'da null, ölçülmedi demek. 0 ise ölçüldü ve sıfırdı demek.
  • Sütun adları her dilde İngilizce ve sabit; yalnız yeni bir export_version ile birlikte değişiyor.
  • Dosyalar UTF-8. CSV virgülle ayrılmış ve bir başlık satırıyla başlıyor.
  • Saatler UTC'de ve ISO 8601 biçiminde, örneğin 2026-09-28T07:41:00Z. Tarihler YYYY-MM-DD biçiminde: dakikanın kaydedildiği takvim günü.
  • Ondalıklarda nokta kullanılıyor, binlik ayırıcı hiç kullanılmıyor. Mantıksal değerler true ve false.
  • Deskami'nin bir şey kaydettiği her dakika için bir satır var; kaydetmediği dakikalar için satır yok.

Dakika sütunları

CSV'de şu sütunlar bu sırayla bulunuyor; JSON'da her dakikayı aynı alanlar oluşturuyor. Parantez içindeki ad, ham veritabanı dosyasındaki sütun.

  • minute_utc — zaman. Dakikanın başlangıcı, UTC'de. (minute_utc, Unix saniyesi olarak)
  • local_day — tarih. Bu dakikanın ait olduğu takvim günü, Mac'in o sırada bulunduğu saat dilimine göre. Yazılırken sabitleniyor; sonradan saat dilimi değişse de kaymıyor. (day_key)
  • setup_id — tamsayı. Kullanılan kurulum: bir kamera artı bir ekran yerleşimi. JSON'da kurulumlar setups altında listeleniyor. (profile_id)
  • seconds_at_desk — 0 ile 60 arası. Kameranın bu dakikada seni gördüğü saniye sayısı. camera_off false iken 0, kameranın açık olduğu ama seni görmediği anlamına geliyor. (present_s)
  • posture_deviation — sayı, 0 ya da üstü. Başının ve omuzlarının kendi referansının ne kadar altında durduğu, dakika boyunca ortalaması alınarak ve o sırada geçerli uyarı eşiğinin katı olarak: referansta 0, eşikte 1. Duruş ölçülmediyse boş. (posture_dev)
  • posture_peak — sayı, 0 ya da üstü. Aynı ölçünün dakika içindeki en büyük değeri. (posture_peak)
  • distance_deviation — sayı, 0 ya da üstü. Yüzünün ekrana referansındakinden ne kadar daha yakın olduğu, aynı ölçekte; karedeki iki gözünün arasındaki mesafeden okunuyor. (distance_dev)
  • blinks — tamsayı. Gözler ölçülebilirken sayılan kırpmalar. Ölçülemediyse boş. (blinks)
  • incomplete_blinks — tamsayı. En dar anında kapanmaya yeterince yaklaşmayan kırpmalar. Hiçbir değerlendirme yapılamadıysa boş. (incomplete_blinks)
  • head_pitch_degrees — sayı. Kameranın bildirdiği ortalama baş eğimi, derece olarak: referansına göre değil, kameraya göre. (head_pitch)
  • confidence — 0 ile 1 arası. Ortalama yüz algılama güveni. (confidence)
  • light — 0 ile 1 arası. Yüz bölgesinin ortalama parlaklığı; 0 karanlık, 1 aydınlık. Odanın değil. (light)
  • eyes_measured — mantıksal. Gözler bu dakikada en az bir kez ölçülebildi. Değeri false olduğunda blinks, incomplete_blinks ve eye_observed_seconds boş. (eye_valid)
  • eye_observed_seconds — 0 ile 60 arası. Gözlerin gerçekten izlendiği saniye sayısı. Dakikadaki kırpma sayısı blinks × 60 ÷ eye_observed_seconds. (eye_observed_s)
  • look_aways — tamsayı. Tamamlanmış uzağa bakışlar, yani 20-20-20 alışkanlığı. Uzağa bakma ölçülmüyorken boş. (gaze_breaks)
  • camera_off — mantıksal. Kamera bu dakikada kapalıydı: sen kapattın, kamerayı başka bir uygulama tutuyordu ya da izin kaldırıldı. Kamera sütunları o zaman boş; uygulama ve etkinlik sütunları yine dolu olabilir. (camera_off)
  • declared_break — mantıksal. Deskami'ye molada olduğunu söyledin. Kamera ne görmüş olursa olsun dakika masadan uzakta sayılıyor. (declared_break)
  • front_app — metin. Dakikanın büyük kısmında önde olan uygulamanın paket kimliği, örneğin com.apple.Safari. O okuma kapatıldıysa, ekran kilitliyse ya da önde hiçbir şey yoksa boş. Asla bir pencere başlığı değil. (app_id)
  • app_switches — tamsayı. Bu dakikada öndeki uygulamanın kaç kez değiştiği. (app_switches)
  • active_seconds — 0 ile 60 arası. Klavyeye ya da fareye son 15 saniye içinde dokunulmuş olan saniyeler. Yalnız son olaydan bu yana geçen süre okunuyor, tuşlar hiç okunmuyor. O okuma kapatıldıysa boş. (active_s)
  • call_seconds — 0 ile 60 arası. Bir görüşme uygulamasının önde olduğu ya da tek bir uygulamanın mikrofonu ve hoparlörü birlikte açık tuttuğu saniyeler. Ölçülmediyse boş; Deskami bunu ölçmeye başlamadan önce kaydedilen her dakika da buna dahil. (meeting_s)

JSON

JSON dosyası tek bir nesne. Bir başlıkla açılıyor: export_version, app_version, exported_at, time_zone (dışa aktarma anındaki), database_schema_version, range (kind, from, to) ve setups (id, camera_name, created_at).

Ardından days geliyor: aralıktaki her kayıtlı gün için bir nesne. Her gün kendi özetini, dakikalarını ve uyarılarını taşıyor:

  • local_day ve minutes_at_desk: seconds_at_desk toplamının 60'a bölümü.
  • breaks: masada geçen iki dönem arasında, masadan 5 dakika ya da daha uzun ve 2 saatten kısa süre uzak kalınan aralıklar. Kameranın kapalı olduğu süre iki tarafa da sayılmıyor.
  • posture_fine_minutes (posture_deviation 1'in altında) ve posture_attention_minutes (1 ya da üstü).
  • blink_rate: gözlerin izlendiği süre boyunca dakikadaki kırpma sayısı; izleme bir dakikanın altında kaldıysa null.
  • incomplete_blink_ratio: değerlendirilebilen kırpma çok azsa null.
  • reminders_by_signal: gösterilen uyarılar, sinyale göre sayılmış.
  • minutes: yukarıdaki dakika sütunları, dakika başına bir nesne.
  • reminders: uyarı başına bir nesne; içinde time_utc, local_day, setup_id, signal (posture, distance, blink, incompleteBlink ya da gaze), build_up_seconds (uyarıdan önce eşiğin üstünde geçen süre), recover_seconds (yeniden eşiğin altına inene kadar geçen süre; ölçüm daha önce durduysa null), asked (referansınla ilgili sorunun gösterilip gösterilmediği) ve answer (sorulmadıysa null, sorulduysa true ya da false) var.

PDF

PDF bir tablo değil: özetin kendisi — gün özeti, hafta ya da ay — ekranda nasıl görünüyorsa tam öyle, tek sayfaya basılmış hâli. İçindeki her sayı ekrandaki sayı.

Ham dosya

Ayarlar › Genel › Veri › Finder'da göster, history.sqlite dosyasını history.sqlite-wal ve history.sqlite-shm dosyalarıyla yan yana gösteriyor. Deskami çalışırken en yeni dakikalar hâlâ -wal dosyasında olabilir; üç dosyayı birlikte kopyala ya da önce Deskami'den çık. Deskami çalışırken bunları silersen, birkaç saniye içinde yeni, boş bir kayıt başlatıyor. Dışa aktarma her zaman eksiksiz bir anlık görüntü yazıyor. Veritabanında ne tutulduğu gizlilik sayfasında yazıyor.