2.5 KiB
FEDEO Geräte-Agent
Der FEDEO Geräte-Agent läuft lokal auf macOS, Linux oder Raspberry Pi OS. Er holt instanzweite Scan-Aufträge von FEDEO ab, führt sie auf einem lokal angeschlossenen Scanner aus und lädt das Ergebnis wieder in FEDEO hoch.
Der Agent ist nicht an einen Mandanten gebunden. Jeder Auftrag enthält seinen Tenant selbst.
Voraussetzungen
macOS
brew install node sane-backends
scanimage -L
Drucken nutzt später das macOS-Drucksystem/CUPS:
lpstat -p
Linux und Raspberry Pi OS
sudo apt update
sudo apt install -y nodejs npm sane-utils cups
scanimage -L
lpstat -p
Konfiguration
cp .env.example .env
nano .env
Wichtige Werte:
FEDEO_URL=https://deine-fedeo-instanz
FEDEO_AGENT_TOKEN=fedeo_agent_...
FEDEO_SCANNER_NAME=
FEDEO_POLL_SECONDS=5
Wenn FEDEO_SCANNER_NAME leer bleibt, verwendet scanimage den Standard-Scanner.
Entwicklung
npm install
npm run dev
OpenCV-Nachbearbeitung
Für automatischen Zuschnitt, leichte Entzerrung, Rotation und Kontrastkorrektur kann die OpenCV-Pipeline aktiviert werden.
npm run setup:opencv
Konfiguration:
FEDEO_SCAN_POSTPROCESS=true
FEDEO_SCAN_POSTPROCESS_PROFILE=receipt
FEDEO_SCAN_POSTPROCESS_PYTHON=/pfad/zum/agent/.venv-opencv/bin/python
FEDEO_SCAN_POSTPROCESS_STRICT=false
Wenn FEDEO_SCAN_POSTPROCESS_PYTHON leer bleibt, verwendet der Agent automatisch .venv-opencv/bin/python, sofern diese Umgebung existiert. Falls OpenCV nicht installiert ist und FEDEO_SCAN_POSTPROCESS_STRICT=false gesetzt ist, lädt der Agent den Rohscan hoch, statt den Auftrag komplett fehlschlagen zu lassen.
Profile:
receipt: Bons und schmale Belege werden bevorzugt hochkant zugeschnitten und kontrastiert.document: allgemeine Dokumente mit Farberhalt und moderater Verbesserung.raw: Zuschnitt/Entzerrung ohne starke Kontrastkorrektur.
Build
npm run build
npm start
FEDEO-Endpunkte
Der Agent nutzt:
POST /instance-agent/heartbeatGET /instance-agent/scan-jobs/nextPOST /instance-agent/scan-jobs/:id/statusPOST /instance-agent/scan-jobs/:id/upload
macOS Autostart
Die Vorlage liegt unter system/macos/com.fedeo.device-agent.plist. Nach Anpassung der Pfade kann sie als LaunchAgent installiert werden:
mkdir -p ~/Library/LaunchAgents
cp system/macos/com.fedeo.device-agent.plist ~/Library/LaunchAgents/
launchctl load ~/Library/LaunchAgents/com.fedeo.device-agent.plist
Linux Autostart
Die Vorlage liegt unter system/linux/fedeo-device-agent.service.