Files
nextcloud-workflow-deck-aut…/README.md
T
Patrick Niebeling 4464e5ad3c
Build package / xml-lint (push) Successful in 1m55s
Build package / unit-tests (push) Successful in 3m39s
Build package / php-lint (8.4) (push) Successful in 3m45s
Build package / php-lint (8.5) (push) Successful in 3m55s
Build package / package (push) Successful in 3m10s
Detect trashed and archived Deck entities, skip archived boards
Deck's Entity getters are magic (__call), so method_exists() never saw
getDeletedAt() or getArchived(): trashed cards were moved, trashed boards
were neither dropped from "my boards" nor detected by findStackIds(), and
every board counted as not archived. DeckIntegrationService now checks the
properties with property_exists() via isTrashed()/isArchived().

Workflows on archived boards stay enabled but are skipped by the runner
(isBoardArchived(), read through BoardMapper) until the board is
unarchived, and the settings list marks them. Archived boards are no
longer offered in the board dropdown at all; editing a workflow on one
clears board and stacks and says why.
2026-10-01 13:54:03 +02:00

8.7 KiB

Deck Workflow-Automatisierung

Nextcloud-App, die Karten der Deck-App automatisch von einem Stapel in einen anderen verschiebt, sobald ihr Fälligkeits- oder Startdatum erreicht ist, und auf Wunsch per E-Mail oder Nextcloud-Benachrichtigung (Push) darüber informiert.

Die Regeln („Workflows“) richtet der Eigentümer eines Boards selbst in seinen persönlichen Einstellungen ein. Admin-Rechte braucht er dafür nicht. Für geteilte Boards anderer Nutzer lassen sich keine Workflows anlegen.

Entwickler-Informationen (Aufbau, Tests, Build, Release) stehen in DEVELOPMENT.md.

Was die App macht

Ein Workflow besteht aus einem Board, einem Quell-Stapel, einem Ziel-Stapel und dem Datum, das das Verschieben auslöst. Bei jedem Durchlauf verschiebt die App alle Karten des Quell-Stapels, bei denen dieses Datum erreicht ist, oben in den Ziel-Stapel.

  • Fälligkeitsdatum (Standard): Die Karte wird verschoben, sobald sie überfällig ist, also ihr Fälligkeitsdatum samt Uhrzeit überschritten ist.
  • Startdatum: Die Karte wird verschoben, sobald ihr Startdatum samt Uhrzeit erreicht ist. Das Startdatum setzt du in Deck in den Kartendetails neben dem Fälligkeitsdatum.

Karten ohne das gewählte Datum sowie erledigte, archivierte oder gelöschte Karten bleiben liegen.

Beispiele:

  • Ein Workflow „Waiting → ToDo“ holt jede Karte aus „Waiting / Blocked“ nach „Work in Progress / ToDo“, sobald ihr Fälligkeitsdatum erreicht ist.
  • Ein Workflow „Geplant → In Arbeit“ mit Startdatum holt jede Karte aus „Geplant“ nach „In Arbeit“, sobald an ihrem Startdatum die Arbeit beginnen soll.

Einrichtung (für Administratoren)

  1. App nach apps/workflow_deck_automation auf den Server kopieren, zum Beispiel aus dem Release-Archiv workflow_deck_automation.tar.gz, und unter Apps aktivieren.
  2. Die Deck-App muss installiert und für die Nutzer aktiviert sein.
  3. Die Hintergrundjobs müssen auf Cron stehen.
  4. Für E-Mails muss in der Nextcloud-Administration ein Mailserver eingerichtet sein.
  5. Für Nextcloud-Benachrichtigungen muss die App Benachrichtigungen (notifications) aktiviert sein, was sie standardmäßig ist. Fehlt sie, verschickt die App einfach keine Benachrichtigungen. E-Mails kommen trotzdem.

Die Workflows laufen bei jedem Cron-Durchlauf von Nextcloud, üblicherweise alle 5 Minuten. Ein eigenes Intervall gibt es nicht.

Workflows anlegen

Die Einstellungen liegen unter Persönliche Einstellungen → Deck Workflow-Automatisierung. Dort legst du Workflows an und kannst sie bearbeiten, deaktivieren oder löschen.

  • Board: Zur Auswahl stehen nur Boards, deren Eigentümer du bist. Geteilte, archivierte und gelöschte Boards erscheinen nicht.
  • Quell- und Ziel-Stapel: Das müssen zwei verschiedene Stapel desselben Boards sein.
  • Karte verschieben, wenn: das Fälligkeitsdatum überschritten oder das Startdatum erreicht ist.
  • Keine Schleifen: Ein aktiver Workflow darf mit den anderen aktiven Workflows des Boards keinen Kreis bilden, etwa „A → B“ und „B → A“. Sonst würden Karten bei jedem Durchlauf hin- und hergeschoben. Beim Speichern wird das abgelehnt, mit den Namen der beteiligten Workflows. Das gilt unabhängig davon, ob die Workflows nach Fälligkeits- oder Startdatum verschieben. Ketten wie „A → B“ und „B → C“ sind erlaubt.
  • Benachrichtigung bei verschobenen Karten und Benachrichtigen per: siehe unten.
  • Workflow aktiv: Deaktivierte Workflows bleiben gespeichert, verschieben aber nichts.

Ein Workflow gehört immer dem Eigentümer des Boards. Überträgst du ein Board in Deck an jemand anderen, wandern seine Workflows mit: Der neue Eigentümer sieht und verwaltet sie ab sofort, und die Karten werden in seinem Namen verschoben.

Benachrichtigungen

Pro Workflow stellst du ein, wer über verschobene Karten informiert wird und wie.

Wer?

Einstellung Wer wird informiert?
Keine Benachrichtigung niemand
Nur an mich der Eigentümer des Boards, unabhängig von seinen Deck-Einstellungen
An Board-Mitglieder laut ihrer Deck-Einstellung alle, die das Board sehen dürfen, je nach ihrer eigenen Deck-Einstellung (siehe unten)

Bei der dritten Stufe entscheidet jedes Board-Mitglied selbst. Dazu gehören der Eigentümer, Personen mit Freigabe sowie Mitglieder freigegebener Gruppen und Teams. Die Einstellung liegt in Deck im Menü … neben dem Board unter Fälligkeitserinnerungen:

  • Alle Karten: für jede verschobene Karte
  • Zugewiesene Karten (Deck-Standard): nur für Karten, denen man zugewiesen ist, direkt oder über eine Gruppe oder ein Team
  • Keine Benachrichtigungen: nie

Bei einem Board, das mit niemandem geteilt ist, bekommt der Eigentümer jede Karte gemeldet, außer er hat die Erinnerungen ausgeschaltet. So verhält sich auch Deck selbst.

Das gilt genauso für Workflows mit Startdatum. Deck hat für das Startdatum keine eigene Benachrichtigungseinstellung.

Wie?

Einstellung Was kommt an?
E-Mail (Standard) eine Sammel-E-Mail pro Durchlauf
Nextcloud-Benachrichtigung (Push) eine Benachrichtigung pro Karte in der Glocke oben rechts und als Push-Nachricht in den Nextcloud-Apps auf Handy und Desktop
E-Mail und Nextcloud-Benachrichtigung beides

Die Empfänger sind in allen drei Fällen dieselben.

Inhalt der E-Mail: Jeder Empfänger bekommt pro Durchlauf höchstens eine E-Mail, auch wenn mehrere Karten verschoben wurden. Pro Karte steht darin ein Satz wie:

„Essensvorräte prüfen“ (Board „Persönlich“) ist überfällig und wurde von „Waiting / Blocked“ nach „Work in Progress / ToDo“ verschoben.

Bei Workflows mit Startdatum heißt es stattdessen:

„Essensvorräte prüfen“ (Board „Persönlich“) hat ihr Startdatum erreicht und wurde von „Geplant“ nach „In Arbeit“ verschoben.

Der Kartentitel ist ein Link direkt zur Karte in Deck. Die Kartenbeschreibung wird nicht mitgeschickt.

Inhalt der Nextcloud-Benachrichtigung: „Kartentitel wurde nach Ziel-Stapel verschoben“, darunter Board, Quell-Stapel und ob die Karte überfällig ist oder ihr Startdatum erreicht hat. Ein Klick öffnet die Karte. Wird dieselbe Karte später noch einmal verschoben, ersetzt die neue Benachrichtigung die alte.

Keine E-Mail erhalten?

  • Ist in deinem Nextcloud-Profil eine E-Mail-Adresse hinterlegt? Ohne Adresse wird die E-Mail übersprungen.
  • Welche Stufe und welcher Weg sind im Workflow eingestellt?
  • Bei „An Board-Mitglieder“: Was steht in Deck unter Fälligkeitserinnerungen für dieses Board?

Keine Push-Nachricht erhalten?

  • Ist die App Benachrichtigungen aktiviert? Die Einstellungsseite weist darauf hin, wenn nicht.
  • Für Push aufs Handy muss dort die Nextcloud-App angemeldet sein und Benachrichtigungen erlauben.

Deck schickt zusätzlich seine eigene Erinnerung, wenn eine Karte fällig wird. Sie kommt von Deck, nicht von dieser App, und lässt sich in Deck unter Fälligkeitserinnerungen abschalten.

Wenn Board oder Stapel gelöscht werden

  • In der Übersicht wird der Workflow rot markiert, zum Beispiel „Board nicht mehr vorhanden“ oder „Quell-Stapel nicht mehr vorhanden“.
  • Beim nächsten Durchlauf wird der Workflow automatisch deaktiviert. Der Eigentümer bekommt einmalig eine E-Mail und, wenn die App Benachrichtigungen aktiv ist, eine Nextcloud-Benachrichtigung. Das gilt unabhängig davon, was für verschobene Karten eingestellt ist. Danach kommt keine weitere Erinnerung.
  • Schleifen aus älteren Workflows (gespeichert vor der Schleifenprüfung) werden in der Übersicht rot markiert und beim Durchlauf übersprungen, bis du einen der Workflows änderst oder deaktivierst.
  • Archivierte Boards deaktivieren den Workflow nicht. Er bleibt gespeichert, wird aber in der Übersicht markiert („Board archiviert, wird übersprungen“) und verschiebt nichts, bis du das Board in Deck aus dem Archiv holst. Archivierte Boards lassen sich auch nicht auswählen. Beim Bearbeiten eines solchen Workflows musst du ein anderes Board wählen.
  • Ist Deck vorübergehend nicht erreichbar, passiert nichts: Der Workflow wird übersprungen und beim nächsten Durchlauf erneut versucht.

Um einen deaktivierten Workflow wieder zu nutzen, stellst du ein vorhandenes Board und vorhandene Stapel ein und aktivierst ihn wieder.

Sprache

Die App ist für den internen Einsatz gedacht und durchgehend deutsch: Oberfläche, Fehlermeldungen, E-Mails und Benachrichtigungen.

Lizenz

AGPL-3.0-or-later