213 lines
6.0 KiB
Markdown
213 lines
6.0 KiB
Markdown
# LibreBooking Trigger Node - Anleitung
|
|
|
|
Dieses Dokument beschreibt die drei Trigger-Modi und deren Konfiguration.
|
|
|
|
## Übersicht
|
|
|
|
Der LibreBooking Trigger Node bietet drei Modi:
|
|
|
|
| Modus | Beschreibung | Use Case |
|
|
|-------|-------------|----------|
|
|
| **Alle Abrufen** | Alle Reservierungen für einen Zeitraum | Täglicher Report, Dashboard |
|
|
| **Neue Reservierungen** | Triggert bei neuen Buchungen | Benachrichtigung, Bestätigung |
|
|
| **Geänderte Reservierungen** | Triggert bei Änderungen | Konfliktprüfung, Update-Mail |
|
|
|
|
---
|
|
|
|
## 1. Modus: Alle Abrufen (Einmalig)
|
|
|
|
### Beschreibung
|
|
Dieser Modus ruft bei jedem Poll **alle** Reservierungen im angegebenen Zeitraum ab.
|
|
|
|
### Zeitraum-Optionen
|
|
|
|
| Option | Beschreibung | Beispiel (25.01.2026) |
|
|
|--------|-------------|----------------------|
|
|
| **Benutzerdefiniert** | Manuelle Eingabe | Frei wählbar |
|
|
| **Diese Woche** | Mo-So der aktuellen Woche | 19.01. - 25.01.2026 |
|
|
| **Nächste 2 Wochen** | Ab heute + 14 Tage | 25.01. - 08.02.2026 |
|
|
| **Dieser Monat** | 1. bis letzter Tag | 01.01. - 31.01.2026 |
|
|
| **Nächste 2 Monate** | Ab heute + 2 Monate | 25.01. - 25.03.2026 |
|
|
| **Dieses Jahr** | 1. Jan bis 31. Dez | 01.01. - 31.12.2026 |
|
|
|
|
### Beispiel-Workflow
|
|
```
|
|
[LibreBooking Trigger] --> [Format] --> [E-Mail senden]
|
|
Alle Abrufen Tabellenformat Täglicher Report
|
|
Diese Woche
|
|
```
|
|
|
|
---
|
|
|
|
## 2. Modus: Neue Reservierungen (Polling)
|
|
|
|
### Beschreibung
|
|
Triggert **nur** wenn eine neue Reservierung erstellt wird.
|
|
|
|
### Wichtig
|
|
- **Erster Poll**: Speichert existierende IDs, triggert NICHT
|
|
- **Folgende Polls**: Triggert nur bei wirklich neuen Reservierungen
|
|
|
|
### Zeit-Filter
|
|
Filtert getriggerte Reservierungen nach Startdatum:
|
|
|
|
| Filter | Beschreibung |
|
|
|--------|-------------|
|
|
| **Alle (Kein Filter)** | Alle neuen Reservierungen, unabhängig vom Startdatum |
|
|
| **Nur Heute** | Nur wenn die Reservierung heute stattfindet |
|
|
| **Nächste 3 Tage** | Reservierung startet in den nächsten 3 Tagen |
|
|
| **Nächste 7 Tage** | Reservierung startet in den nächsten 7 Tagen |
|
|
|
|
### Beispiel-Workflow
|
|
```
|
|
[LibreBooking Trigger] --> [IF] --> [E-Mail]
|
|
Neue Reservierungen Prüfe Bestätigung senden
|
|
Nächste 3 Tage Ressource
|
|
```
|
|
|
|
### Use Case: Sofortige Buchungsbestätigung
|
|
- Trigger-Modus: **Neue Reservierungen**
|
|
- Zeit-Filter: **Alle (Kein Filter)**
|
|
- Aktion: E-Mail an Benutzer mit Buchungsdetails
|
|
|
|
---
|
|
|
|
## 3. Modus: Geänderte Reservierungen (Polling)
|
|
|
|
### Beschreibung
|
|
Triggert **nur** wenn eine bestehende Reservierung geändert wird.
|
|
|
|
### Änderungserkennung
|
|
Folgende Felder werden überwacht:
|
|
- `title` (Titel)
|
|
- `description` (Beschreibung)
|
|
- `startDate` / `endDate` (Zeitraum)
|
|
- `resourceId` / `resourceName` (Ressource)
|
|
- `userId` (Benutzer)
|
|
- `statusId` (Status)
|
|
- `participants` / `invitees` (Teilnehmer)
|
|
|
|
### Zeit-Filter
|
|
Gleiche Optionen wie bei "Neue Reservierungen":
|
|
|
|
| Filter | Beschreibung | Use Case |
|
|
|--------|-------------|----------|
|
|
| **Nur Heute** | Änderungen an heutigen Terminen | Tagesaktueller Agent |
|
|
| **Nächste 3 Tage** | Kurzfristige Änderungen | Dringende Benachrichtigungen |
|
|
|
|
### Beispiel-Workflow
|
|
```
|
|
[LibreBooking Trigger] --> [Compare] --> [Slack]
|
|
Geänderte Vorher/ Benachrichtigung
|
|
Reservierungen Nachher "Termin wurde geändert"
|
|
Nur Heute
|
|
```
|
|
|
|
### Use Case: Agent für Tagesänderungen
|
|
- Trigger-Modus: **Geänderte Reservierungen**
|
|
- Zeit-Filter: **Nur Heute**
|
|
- Aktion: Slack/E-Mail wenn sich ein heutiger Termin ändert
|
|
|
|
---
|
|
|
|
## Allgemeine Einstellungen
|
|
|
|
### Filter (für alle Modi)
|
|
| Filter | Beschreibung |
|
|
|--------|-------------|
|
|
| **Ressourcen-ID** | Nur Reservierungen für diese Ressource |
|
|
| **Zeitplan-ID** | Nur Reservierungen für diesen Zeitplan |
|
|
| **Benutzer-ID** | Nur Reservierungen für diesen Benutzer |
|
|
|
|
### Optionen (für alle Modi)
|
|
| Option | Beschreibung |
|
|
|--------|-------------|
|
|
| **Detaillierte Daten Abrufen** | Holt vollständige Daten inkl. Custom Attributes |
|
|
| **Debug-Modus** | Gibt Debug-Informationen aus (für Entwicklung) |
|
|
|
|
---
|
|
|
|
## Polling-Intervall
|
|
|
|
Das Polling-Intervall wird in den n8n Workflow-Einstellungen konfiguriert:
|
|
|
|
- **Empfohlen für "Neue" und "Geänderte"**: 1-5 Minuten
|
|
- **Empfohlen für "Alle Abrufen"**: 15-60 Minuten (je nach Report-Bedarf)
|
|
|
|
---
|
|
|
|
## Fehlerbehebung
|
|
|
|
### Trigger triggert nicht bei neuen/geänderten Reservierungen
|
|
1. **Prüfen**: Ist es der erste Poll? → Triggert absichtlich nicht
|
|
2. **Prüfen**: Ist der Zeit-Filter zu restriktiv?
|
|
3. **Aktivieren**: Debug-Modus für detaillierte Logs
|
|
|
|
### Zu viele Events werden getriggert
|
|
1. **Verwenden**: Zeit-Filter ("Nur Heute", "Nächste 3 Tage")
|
|
2. **Filtern**: Nach Ressourcen-ID, Benutzer-ID
|
|
|
|
### Performance-Probleme
|
|
1. **Reduzieren**: Zeitfenster (z.B. 7 statt 90 Tage)
|
|
2. **Deaktivieren**: "Detaillierte Daten Abrufen" wenn nicht benötigt
|
|
|
|
---
|
|
|
|
## Praxisbeispiele
|
|
|
|
### 1. Täglicher Reservierungsreport
|
|
```yaml
|
|
Modus: Alle Abrufen
|
|
Zeitraum: Diese Woche
|
|
Poll-Intervall: Täglich um 07:00
|
|
Aktion: E-Mail mit Wochenübersicht
|
|
```
|
|
|
|
### 2. Sofortige Buchungsbestätigung
|
|
```yaml
|
|
Modus: Neue Reservierungen
|
|
Zeitfenster: Nächste 90 Tage
|
|
Zeit-Filter: Alle
|
|
Poll-Intervall: 1 Minute
|
|
Aktion: E-Mail an Buchenden
|
|
```
|
|
|
|
### 3. Kurzfristige Änderungsbenachrichtigung
|
|
```yaml
|
|
Modus: Geänderte Reservierungen
|
|
Zeitfenster: Nächste 14 Tage
|
|
Zeit-Filter: Nächste 3 Tage
|
|
Poll-Intervall: 5 Minuten
|
|
Aktion: Slack-Nachricht an Team
|
|
```
|
|
|
|
### 4. Tagesaktueller Terminagent
|
|
```yaml
|
|
Modus: Geänderte Reservierungen
|
|
Zeitfenster: Nächste 7 Tage
|
|
Zeit-Filter: Nur Heute
|
|
Poll-Intervall: 2 Minuten
|
|
Aktion: E-Mail an betroffene Teilnehmer
|
|
```
|
|
|
|
---
|
|
|
|
## Test-Ergebnisse
|
|
|
|
Stand: 25.01.2026
|
|
|
|
| Test | Status |
|
|
|------|--------|
|
|
| Date Range: thisWeek | ✅ |
|
|
| Date Range: next2Weeks | ✅ |
|
|
| Date Range: thisMonth | ✅ |
|
|
| Date Range: next2Months | ✅ |
|
|
| Date Range: thisYear | ✅ |
|
|
| Time Filter: today | ✅ |
|
|
| Time Filter: next3Days | ✅ |
|
|
| Time Filter: next7Days | ✅ |
|
|
| Create Reservation Detection | ✅ |
|
|
| Update Reservation Detection | ✅ |
|
|
| Delete Reservation | ✅ |
|
|
| **Gesamt: 18/18 Tests bestanden** | ✅ |
|