85 lines
1.6 KiB
Markdown
85 lines
1.6 KiB
Markdown
# 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
|
|
|
|
```bash
|
|
brew install node sane-backends
|
|
scanimage -L
|
|
```
|
|
|
|
Drucken nutzt später das macOS-Drucksystem/CUPS:
|
|
|
|
```bash
|
|
lpstat -p
|
|
```
|
|
|
|
### Linux und Raspberry Pi OS
|
|
|
|
```bash
|
|
sudo apt update
|
|
sudo apt install -y nodejs npm sane-utils cups
|
|
scanimage -L
|
|
lpstat -p
|
|
```
|
|
|
|
## Konfiguration
|
|
|
|
```bash
|
|
cp .env.example .env
|
|
nano .env
|
|
```
|
|
|
|
Wichtige Werte:
|
|
|
|
```env
|
|
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
|
|
|
|
```bash
|
|
npm install
|
|
npm run dev
|
|
```
|
|
|
|
## Build
|
|
|
|
```bash
|
|
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:
|
|
|
|
```bash
|
|
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`.
|