Formát exportu
Export, součást Deskami Plus, zapisuje stejný záznam po minutách, jaký Deskami uchovává na tvém Macu. Nic se nepřidává, neodhaduje ani nedoplňuje. Tahle stránka popisuje, co v souboru je.
Konvence
- Prázdná buňka v CSV nebo
nullv JSON znamená neměřeno.0znamená naměřeno a byla to nula. - Názvy sloupců jsou ve všech jazycích anglicky a jsou pevné; mění se jen spolu s novou hodnotou
export_version. - Soubory jsou v UTF-8. CSV je oddělené čárkami a má řádek záhlaví.
- Časy jsou v UTC ve formátu ISO 8601, třeba
2026-09-28T07:41:00Z. Data jsou ve formátuYYYY-MM-DDa jde o kalendářní den, pod kterým se minuta zaznamenala. - Desetinná čísla používají tečku, nikdy oddělovač tisíců. Logické hodnoty jsou
trueafalse. - Pro každou minutu, ve které Deskami něco zaznamenalo, je jeden řádek a pro minuty, kdy nezaznamenalo nic, žádný.
Sloupce minut
CSV má tyhle sloupce v tomhle pořadí; v JSON tvoří každou minutu stejná pole. Název v závorce je sloupec v surovém souboru databáze.
minute_utc— čas. Začátek minuty v UTC. (minute_utc, v unixových sekundách)local_day— datum. Kalendářní den, ke kterému minuta patří, v časovém pásmu, ve kterém Mac v tu chvíli byl. Určí se při zápisu; pozdější změna časového pásma ho neposune. (day_key)setup_id— celé číslo. Používané pracovní místo: kamera plus rozložení obrazovek. V JSON jsou pracovní místa vypsaná vsetups. (profile_id)seconds_at_desk— 0 až 60. Vteřiny, kdy tě kamera v téhle minutě viděla. Když jecamera_offfalse, 0 znamená, že kamera byla zapnutá a neviděla tě. (present_s)posture_deviation— číslo, 0 nebo víc. Jak nízko pod tvým vlastním vzorem byly hlava a ramena, v průměru za minutu, jako násobek hranice pro připomenutí platné v tu chvíli: 0 u vzoru, 1 na hranici. Prázdné, když se posed neměřil. (posture_dev)posture_peak— číslo, 0 nebo víc. Nejvyšší hodnota stejné míry v rámci minuty. (posture_peak)distance_deviation— číslo, 0 nebo víc. O kolik blíž k obrazovce byl tvůj obličej než u vzoru, na stejné stupnici, odečteno z rozestupu tvých očí v obraze. (distance_dev)blinks— celé číslo. Mrknutí spočítaná v době, kdy se oči daly měřit. Prázdné, když nedaly. (blinks)incomplete_blinks— celé číslo. Mrknutí, při kterých se oko ani v nejužší chvíli dostatečně nedovřelo. Prázdné, když se to nedalo posoudit. (incomplete_blinks)head_pitch_degrees— číslo. Průměrný náklon hlavy dopředu nebo dozadu ve stupních, jak ho hlásí kamera: vůči kameře, ne vůči tvému vzoru. (head_pitch)confidence— 0 až 1. Průměrná jistota detekce obličeje. (confidence)light— 0 až 1. Průměrný jas oblasti obličeje, od 0 tma po 1 světlo. Ne jas místnosti. (light)eyes_measured— logická hodnota. Oči se v téhle minutě daly změřit aspoň jednou. Když je false, jsoublinks,incomplete_blinksaeye_observed_secondsprázdné. (eye_valid)eye_observed_seconds— 0 až 60. Vteřiny, kdy byly oči opravdu sledované. Mrknutí za minutu jsoublinks× 60 ÷eye_observed_seconds. (eye_observed_s)look_aways— celé číslo. Dokončené pohledy do dálky, návyk 20-20-20. Prázdné, když se pohled do dálky neměřil. (gaze_breaks)camera_off— logická hodnota. Kamera v téhle minutě neběžela: byla vypnutá ručně, držela ji jiná aplikace nebo bylo odebráno povolení. Sloupce kamery jsou pak prázdné; sloupce aplikace a aktivity můžou být vyplněné. (camera_off)declared_break— logická hodnota. Přestávka byla ohlášená v Deskami. Minuta se počítá jako čas mimo stůl, ať kamera viděla cokoli. (declared_break)front_app— text. Identifikátor balíčku (bundle identifier) aplikace, která byla vepředu většinu minuty, třebacom.apple.Safari. Prázdné, když bylo tohle čtení vypnuté, obrazovka byla zamčená nebo nebylo vepředu nic. Nikdy ne název okna. (app_id)app_switches— celé číslo. Kolikrát se v téhle minutě změnila aplikace vepředu. (app_switches)active_seconds— 0 až 60. Vteřiny, ve kterých se někdo během předchozích 15 vteřin dotkl klávesnice nebo myši. Čte se jen čas od poslední události, nikdy klávesy. Prázdné, když bylo tohle čtení vypnuté. (active_s)call_seconds— 0 až 60. Vteřiny, kdy byla vepředu aplikace na hovory nebo měla jedna aplikace zároveň otevřený mikrofon i reproduktor. Prázdné, když se to neměřilo, včetně každé minuty zaznamenané dřív, než to Deskami začalo měřit. (meeting_s)
JSON
Soubor JSON je jeden objekt. Začíná záhlavím: export_version, app_version, exported_at, time_zone (v okamžiku exportu), database_schema_version, range (kind, from, to) a setups (id, camera_name, created_at).
Pak následuje days, jeden objekt za každý zaznamenaný den v rozsahu. Každý den nese vlastní souhrn, minuty a připomenutí:
local_dayaminutes_at_desk, tedy součetseconds_at_deskvydělený 60.breaks: úseky mimo stůl dlouhé 5 minut a víc a kratší než 2 hodiny, mezi dvěma úseky u stolu. Čas s vypnutou kamerou se nepočítá ani na jednu stranu.posture_fine_minutes(posture_deviationpod 1) aposture_attention_minutes(1 a víc).blink_rate: mrknutí za minutu za dobu, kdy byly oči sledované;nullpři sledování kratším než minuta.incomplete_blink_ratio:null, když se dalo posoudit příliš málo mrknutí.reminders_by_signal: zobrazená připomenutí, spočítaná podle signálu.minutes: sloupce minut popsané výše, jeden objekt za minutu.reminders: jeden objekt za každé připomenutí, s politime_utc,local_day,setup_id,signal(posture,distance,blink,incompleteBlinknebogaze),build_up_seconds(čas nad hranicí před připomenutím),recover_seconds(čas do návratu pod ni;null, když měření skončilo dřív),asked(jestli se zobrazila otázka na tvůj vzor) aanswer(null, když otázka nepadla, jinaktruenebofalse).
PDF není tabulka: je to samotný souhrn — souhrn dne, týden nebo měsíc — vytištěný na jednu stránku přesně tak, jak vypadá na obrazovce. Každé číslo v něm je číslo z obrazovky.
Surový soubor
Nastavení › Obecné › Data › Zobrazit ve Finderu ukáže soubor history.sqlite, vedle kterého leží history.sqlite-wal a history.sqlite-shm. Dokud Deskami běží, můžou být nejnovější minuty ještě v souboru -wal; zkopíruj všechny tři soubory, nebo Deskami nejdřív ukonči. Když je smažeš, zatímco Deskami běží, do pár sekund začne vést nový, prázdný záznam. Export vždycky zapíše úplný snímek stavu. Co databáze obsahuje, je vypsané na stránce o soukromí.