Files
Windmill/f/mail_to_talk/mail_to_talk__flow/flow.yaml
T
Sebastian Serfling d22ef502ed sync: Windmill-State übernehmen + neue Reporting-Flows
- Dateien nach Windmill-Naming-Konvention umbenannt (ssh-key_aus_db_testen,
  flow-fehler_per_nextcloud_talk_melden, bitwarden_(fallback))
- testpause-Schritt aus flow.yaml entfernt (Debugging abgeschlossen)
- Neue Flows: f/Reporting/exchange_logins, f/Reporting/run_sql_events
- mail_to_talk: Dateinamen nach Windmill-Konvention synchronisiert

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-07 13:13:35 +02:00

82 lines
2.6 KiB
YAML

summary: E-Mails zu Nextcloud Talk
description: >
Liest ungelesene E-Mails von zwei IMAP-Konten und sendet Benachrichtigungen an
einen Nextcloud Talk Raum. E-Mails werden als gelesen markiert.
value:
modules:
- id: fetch_emails_1
summary: Ungelesene E-Mails Konto 1 abrufen
value:
type: rawscript
content: '!inline ungelesene_e-mails_konto_1_abrufen.py'
input_transforms:
imap_config:
type: javascript
expr: flow_input.imap_config_1
lock: '!inline ungelesene_e-mails_konto_1_abrufen.lock'
language: python3
stop_after_if:
error_message: null
expr: 'false'
skip_if_stopped: false
- id: fetch_emails_2
summary: Ungelesene E-Mails Konto 2 abrufen
value:
type: rawscript
content: '!inline ungelesene_e-mails_konto_2_abrufen.py'
input_transforms:
imap_config:
type: javascript
expr: flow_input.imap_config_2
lock: '!inline ungelesene_e-mails_konto_2_abrufen.lock'
language: python3
stop_after_if:
error_message: null
expr: 'false'
skip_if_stopped: false
- id: send_to_talk
summary: Jede E-Mail an Nextcloud Talk senden
value:
type: forloopflow
modules:
- id: send_message
summary: Nachricht an Nextcloud Talk senden
value:
type: rawscript
content: '!inline nachricht_an_nextcloud_talk_senden.py'
input_transforms:
email:
type: javascript
expr: flow_input.iter.value
nextcloud_config:
type: javascript
expr: flow_input.nextcloud_config
lock: '!inline nachricht_an_nextcloud_talk_senden.lock'
language: python3
iterator:
type: javascript
expr: '[...results.fetch_emails_1, ...results.fetch_emails_2]'
parallel: false
skip_failures: false
schema:
$schema: http://json-schema.org/draft-07/schema
type: object
properties:
imap_config_1:
type: object
description: 'IMAP Konto 1 (Ressource: f/mail_to_talk/imap_config)'
format: resource-imap
imap_config_2:
type: object
description: 'IMAP Konto 2 (Ressource: f/mail_to_talk/imap_config_2)'
format: resource-imap
nextcloud_config:
type: object
description: 'Nextcloud Zugangsdaten (Ressource:
f/mail_to_talk/nextcloud_talk_config)'
format: resource-nextcloud
required:
- imap_config_1
- imap_config_2
- nextcloud_config