Files
FEDEO/agents/fedeo-device-agent

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

Build

npm run build
npm start

FEDEO-Endpunkte

Der Agent nutzt:

  • POST /instance-agent/heartbeat
  • GET /instance-agent/scan-jobs/next
  • POST /instance-agent/scan-jobs/:id/status
  • POST /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.