Commit graph dashcam-transfer/README.md
Author SHA1 Message Date
Eddy de Vink
69d08ba8ba fix: kopieer met shutil.copyfile (data-only) i.p.v. copy/copy2
copy doet na copyfile ook copymode (os.chmod); op exfat met mountuid=1000
zijn alle bestanden eigendom van uid 1000 en wordt chmod/utime voor de
niet-eigenaar service-gebruiker geweigerd (EPERM op elke kopie, ook na de
copy2-fix). copyfile schrijft alleen data; verificatie gebeurt op grootte
en mode/opnametijd voegen op exfat niets toe.
2026-10-15 20:17:09 +02:00
Eddy de Vink
dd46ad6d3c fix: kopieer met shutil.copy i.p.v. copy2 (EPERM op exfat voor niet-eigenaar)
copy2 preserveert timestamps via os.utime; de exfat-SSD draait met
uid=1000,allow_utime=0022, waardoor een niet-eigenaar (service-gebruiker
aiaiaiaiagent sinds 2026-10-13, voorheen root) geen willekeurige
tijdsstempels mag zetten -> EPERM op elke kopie. Mode is op exfat altijd
0777 en het opnamemoment staat al in de bestandsnaam.
2026-10-15 20:09:55 +02:00
Eddy de Vink
15678e62be docs: dashcam-transfer service draait als aiaiaiaiagent i.p.v. root
unconfined user -> geen init_t/user_home_t SELinux-randgeval voor het lezen
van de sherpa secret-bestanden; consistent met watchdog-report.
2026-10-13 23:56:04 +02:00
Eddy de Vink
55c282906e feat: verstuur dashcam-notificatie via Matrix (sherpa) i.p.v. WhatsApp
wwebjs-api is vervangen door wuzapi; notificatiekanaal is nu Matrix:
- send_matrix_notification() POST -> sherpa compat-token uit
  ~/whatsed-new/secrets/sherpa-token naar eddy-report-room
- zelfde patronen als watchdog-report/WAN IP Guard
- tests: SendWhatsappTest -> SendMatrixTest (+2 asserts)
2026-10-13 23:49:18 +02:00
Eddy de Vink
0227dbda3f docs: vermeld vibecoded oorsprong bovenaan README 2026-08-11 20:44:43 +02:00
Eddy de Vink
948077623c docs: breid README uit met operations, configuratie, tests en repo-structuur 2026-08-11 20:38:00 +02:00
Eddy de Vink
8cc04ea409 feat: harden dashcam transfer tegen flakke SD-lezer + stale-mount cleanup
- dashcam-transfer.py: log echte OSError (shutil.copy2 i.p.v. cp), pre-flight
  leesbaarheidscheck voor ruimte-wissen, retry (3x) + early-abort (5x), guards
  op bestandssysteem-calls, WhatsApp GESTOPT bij defecte kaart
- dashcam-transfer-mount.sh: skip als service al draait, read-only fsck.exfat
  health check, %k device-naam doorgeven
- dashcam-transfer-cleanup.sh: nieuw - ruimt stale mount op bij udev REMOVE
- udev/99-dashcam-trigger.rules: ADD + REMOVE regels met %k
- tests: 20 python + 7 mount + 12 cleanup checks
- README: architectuur, robuustheid, deploy-instructies
2026-08-11 20:37:48 +02:00
Eddy de Vink
8ef7078ba4 fix: mount SD kaart dynamisch via udev %k i.p.v. hardcoded UUID
dashcam-transfer-mount.sh mountte altijd /dev/disk/by-uuid/00D3-7715.
Een geherformatteerde of andere kaart heeft een ander filesystem UUID,
waardoor de mount faalde (TRIGGER ERROR) en de transfer nooit startte.

De udev rule geeft nu het kernel device (%k) door; de helper mount dat
device dynamisch. Werkt ongeacht het FS-UUID van de kaart.
2026-08-06 20:02:48 +02:00
Eddy de Vink
c7e046f4ab fix: corrigeer WHATSAPP_API URL naar localhost:3001 (nextcloud)
- WHATSAPP_API gebruikte 100.97.199.84:3000 (Mac Mini Tailscale IP, verkeerde poort)
- Gewijzigd naar localhost:3001 (wwebjs-api container op nextcloud zelf)
- Comment toegevoegd om verwarring te voorkomen
- README herschreven met WhatsApp notificatie sectie en correcte architectuur
- Verouderd plan geüpdatet met juiste URL
2026-06-23 11:04:39 +02:00
Eddy de Vink
caac864241 docs: voeg Genesys reader toe aan udev regel in README 2026-06-03 20:31:28 +02:00
Eddy de Vink
e69b9de577 docs: documenteer dashcam automount configuratie op nextcloud 2026-06-02 21:46:10 +02:00
Eddy de Vink
dda50b6d8f docs: README met ontwerp, uitwerking en gebruiksaanwijzing 2026-05-29 22:07:29 +02:00