node-red-contrib-fireplan
v0.1.0
Published
Inoffizielle Node-RED-Nodes für die Fireplan-API (data.fireplan.de) - nicht von Fireplan autorisiert oder unterstützt
Readme
node-red-contrib-fireplan
Node-RED-Nodes für die Fireplan-API (https://data.fireplan.de, Swagger:
https://data.fireplan.de/swagger/index.html).
Inoffizielles Community-Projekt. Nicht von Fireplan/codedrei entwickelt, autorisiert oder unterstützt. Nutzung der API unterliegt weiterhin den Fireplan-Nutzungsbedingungen und erfordert einen eigenen API-Key.
Nodes
- fireplan-config (Config-Node): Standort + API-Key. Holt automatisch über
GET /api/Register/{Standort}einAPI-Tokenund cacht es (Fireplan dokumentiert keine Gültigkeitsdauer, deshalb konfigurierbares TTL, Default 30 Min, plus Retry bei HTTP 401). - fireplan-request: ruft eine Fireplan-Ressource auf. Ressource + Methode werden im Editor
gewählt, Pfad-Parameter (Jahr/Standort/KalenderID) sind per Typed-Input auch aus
msg/Flow/ Global lesbar. Bei POST/PUT istmsg.payloadder JSON-Body. Antwort kommt alsmsg.payload(+msg.statusCode,msg.headers) zurück.
Abgedeckte Ressourcen: Alarmierung, Einsatzliste, Einsatztagebuch, FMSStatus, Kalender, Personalakten, SonstigeDienste, Termine.
Installation
Über die Node-RED-Palettenverwaltung (Menü → Manage palette → Install, nach "fireplan" suchen) oder im Node-RED-Userdir per npm:
npm install node-red-contrib-fireplanDanach Node-RED neu starten, damit die Palette den Node lädt.
Bekannte Lücken / Annahmen
Die öffentliche Swagger-Spec dokumentiert für Register keine Response-Schema und für
Einsatzliste/Einsatztagebuch keine genauen Feldnamen. Der Config-Node versucht deshalb
möglichst tolerant ein Token aus der Antwort zu extrahieren (JSON-Feld mit "token" im Namen
oder Plaintext-Body). Falls die echte Antwort davon abweicht, bitte einmal mit einem
fireplan-request-Node auf Register (oder testweise per curl) die reale Antwort prüfen und
extractToken() in fireplan-config.js entsprechend anpassen.
