56 lines
1.9 KiB
Markdown
56 lines
1.9 KiB
Markdown
# TI-Status2Mattermost
|
|
|
|
Dieses Python-Skript überwacht die TI-Lagebild-API [https://ti-lage.prod.ccs.gematik.solutions/lageapi/v2/tilage](https://ti-lage.prod.ccs.gematik.solutions/lageapi/v2/tilage) auf neue Störungs- und Wartungsmeldungen und sendet diese automatisch an einen Mattermost-Webhook.
|
|
|
|
## Funktionsweise
|
|
- Die API wird bei jedem Aufruf auf neue Meldungen geprüft.
|
|
- Neue Meldungen werden erkannt und als formatierte Nachricht an Mattermost gesendet.
|
|
- Bereits gesendete Meldungen werden gespeichert, sodass sie nach einem Neustart nicht erneut verschickt werden.
|
|
|
|
## Voraussetzungen
|
|
- Python 3.8 oder neuer
|
|
- Zugriff auf die Mattermost-Webhook-URL
|
|
|
|
## Installation
|
|
1. Repository klonen oder Dateien herunterladen.
|
|
2. Abhängigkeiten installieren:
|
|
```bash
|
|
pip install -r requirements.txt
|
|
```
|
|
|
|
## Nutzung
|
|
Das Skript kann direkt gestartet werden:
|
|
```bash
|
|
python ti_status_checker.py
|
|
```
|
|
|
|
Das Skript prüft einmalig auf neue Meldungen und beendet sich dann.
|
|
|
|
### Automatisierung mit Cron (Linux)
|
|
Um das Skript alle 5 Minuten auszuführen, kann ein Cronjob eingerichtet werden:
|
|
```cron
|
|
*/5 * * * * cd /pfad/zum/projekt && /usr/bin/python3 ti_status_checker.py
|
|
```
|
|
|
|
### Automatisierung mit Task Scheduler (Windows)
|
|
Nutze die Aufgabenplanung, um das Skript alle 5 Minuten zu starten.
|
|
|
|
## Nutzung mit Docker
|
|
1. Docker-Image bauen:
|
|
```bash
|
|
docker build -t ti-status2mattermost .
|
|
```
|
|
2. Container regelmäßig starten (z.B. mit Cron):
|
|
```cron
|
|
*/5 * * * * docker run --rm -v $(pwd)/ti_status_state.json:/app/ti_status_state.json ti-status2mattermost
|
|
```
|
|
|
|
## Konfiguration
|
|
- Die Mattermost-Webhook-URL und die API-URL sind im Skript als Konstanten hinterlegt.
|
|
|
|
## Hinweise
|
|
- Bereits gesendete Meldungen werden in der Datei `ti_status_state.json` gespeichert.
|
|
- Die Markdown-Formatierung der Nachrichten sorgt für eine übersichtliche Darstellung in Mattermost.
|
|
|
|
## Lizenz
|
|
MIT |