# 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 