Meine eigene Arbeitszeiterfassung

Wir nutzen in der Firma Personio, um unsere Arbeitszeit zu erfassen. Seitdem ich im Homeoffice bin und nicht mehr mit einem NFC-Transponder am Terminal ein- und auschecken kann, passiert das Eintragen selbiger aber nur noch manuell. Manchmal vergesse ich das auch schon mal, und dann muss ich mühselig in Slack oder GitLab nachschauen, wann ich ungefähr begonnen habe, wann ich Pause gemacht habe, wann Feierabend war … Vielleicht hilfreich ist auch dieser Befehl im Terminal:

pmset -g log | grep "Display is turned"

Das zeigt mir, wann der Bildschirm aus war und ich scheinbar nichts gemacht habe. Aber eben nur scheinbar.

Also dachte ich mir: Warum bastele ich mir nicht eine eigene Zeiterfassung via NFC? Immerhin habe ich seit Monaten einen Haufen NFC-Sticker, die ihrer Verwendung harren. Gesagt Gedacht, getan!

Der erste Schritt war die Erstellung einer API. Ich hätte vielleicht etwas mit der Personio API zaubern können, aber dafür bräuchte ich zunächst mal ein entsprechendes Token über die Office IT, und wer weiß, auf was für Hürden ich dann bei der eigentlichen Umsetzung noch stoßen würde – das war mir für ein Feierabendprojekt dann doch zu lästig.

Das simple Konzept meiner API: Ein POST-Request schreibt die aktuelle Uhrzeit und eventuell eine kleine Notiz in eine Datenbank, ein GET-Request holt die Daten des laufenden Tages. Das sieht dann so aus:

$ curl https://<domain>/timetracker -X POST

$ curl https://<domain>/timetracker
2024-06-24
----------

┌ 08:24:51

Cool, damit lässt sich schon mal arbeiten. Für etwas mehr Feedback gibt der POST-Request aber auch nochmal die Daten des Tages zurück:

$ curl https://<domain>/timetracker -X POST -d note=Gardening
2024-06-24
----------

┌ 08:24:51
└ 12:32:15 (Gardening)

Danach habe ich mir diesen Kurzbefehl für macOS und iOS gebaut:

Kurzbefehl für macOS und iOS, der eine POST-Request an den Arbeitszeit-Endpunkt sendet.

Der sendet einen Request, holt sich die letzte Zeile aus der Antwort und packt diese als Feedback in eine Benachrichtigung. Die sieht dann zum Beispiel so aus:

Arbeitszeit: Ende um 19:19:49 Uhr.

Und diesen Kurzbefehl nutze ich dann an vielen Stellen, damit ich auch ja nicht mehr die Zeiterfassung vergesse:

  • Auf dem Action-Button des iPhones, wenn der Arbeiten-Fokus aktiv ist.
  • Als Komplikation auf der Apple Watch; das passende Ziffernblatt wird automatisch über den Arbeiten-Fokus angezeigt.
  • Als angepinnter Kurzbefehl in der macOS-Menüleite.
  • In Alfred über den Shortcuts-Workflow: sc Arbeitszeit und fertig.
  • Und natürlich über eine Automation, wenn ich das Telefon an den NFC-Sticker am Schreibtisch halte.

Und am Ende des Tages oder gar der Woche trage ich die Zeiten dann in Personio nach.

Gut, vielleicht ist es alles etwas zu viel Hexenwerk und es ginge eigentlich viel einfacher. Aber dann hätte es vielleicht weniger Spaß gemacht.

Likes

  • fab1An
  • Alexander Gräfe
  • Simon Praetorius

Antworten

  1. Hej Marc.
    Ich mag diese Art „Frickelei“ … gerne mehr davon :-) Und deine Seite mag ich auch.

    dug
    Oliver