Geräte-Agent für lokale Scan-Aufträge anlegen
This commit is contained in:
84
agents/fedeo-device-agent/README.md
Normal file
84
agents/fedeo-device-agent/README.md
Normal file
@@ -0,0 +1,84 @@
|
||||
# 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`.
|
||||
Reference in New Issue
Block a user