Advanced Workflows
Beschreibung
Ein Plugin zur flexiblen Konfiguration und Automatisierung von Geschäftsprozessen. Es ermöglicht die Konfiguration und automatische Ausführung komplexer Szenarien, die über die standardmäßigen Workflows von Redmine hinausgehen. Ein flexibles System "benutzerdefinierter Regeln" erlaubt zudem die Festlegung bestimmter Einschränkungen.
Hauptfunktionen
- Neues Format für benutzerdefinierte Felder: "Datum und Uhrzeit"
- Benutzerdefinierte Regeln
- Automatische Aktionen
Kompatibilität
Redmine: 5.0 - 6.0
Webbrowser: Chrome, Firefox, Safari, Edge
Datenbanken: MySQL 5.7, MySQL 8.0, PostgreSQL 14-16, SQLite
Plugins: redmine_kanban, redmine_advanced_checklists, advanced_charts, appearance_custom, module_manager, periodic_reminder, user_group_editor, queries_perfect, selectbox_autocompiler, cost_calculator.
Installation und Update
-
Entfernen Sie die alte Version des Plugins aus Redmine, falls vorhanden.
cd redmine/plugins rm -r advanced_workflows -
Kopieren Sie den neuen Plugin-Ordner
advanced_workflowsnachredmine/plugins/. -
Führen Sie die Migrationen im Redmine-Hauptverzeichnis aus.
bundle exec rake redmine:plugins:migrate RAILS_ENV=production NAME=advanced_workflows -
Stoppen und starten Sie Redmine. (Bei einigen Redmine-Installationen (z. B. Docker) ist es wichtig, den Server zu stoppen und zu starten, anstatt ihn nur neu zu starten.)
Deinstallation
- Führen Sie den Deinstallationsbefehl im Redmine-Hauptverzeichnis aus.
bundle exec rake redmine:plugins:migrate RAILS_ENV=production NAME=advanced_workflows VERSION=0
- Entfernen Sie den Plugin-Ordner
advanced_workflowsausredmine/plugins/.
rm -r advanced_workflows
- Stoppen und starten Sie Redmine.
Konfiguration
- Konfigurieren Sie die Benutzerrollen unter Administration -> Rollen und Rechte.
- Aktivieren Sie das Modul "Advanced Workflows" für Projekte in den Einstellungen jedes Projekts.
- Überprüfen und ändern Sie weitere Plugin-Einstellungen unter Administration -> Plugins -> Advanced Workflows.
Administration
Bereich "Rollen und Rechte"
- Regeln auf Projektebene verwalten - Zugriff zum Bearbeiten von Regeln und Aktionen im Projekt.
Bereich "Benutzerdefinierte Felder"
Das Plugin Advanced Workflows fügt ein neues Format für benutzerdefinierte Felder hinzu: "Datum und Uhrzeit"


"Datum und Uhrzeit" kann als Filter (Bedingung) verwendet werden.

Verfügbare Optionen:
- Nächste Stunde - Der Filter erfasst diejenigen Vorgänge, deren Wert im Feld "Datum und Uhrzeit" innerhalb der nächsten Stunde ab der aktuellen UTC-Zeit liegt.

Bereich "Plugins"
Unter Administration → Plugins → Advanced Workflows können Sie konfigurieren:
- Ausführen als Benutzer - Möglichkeit, einen Admin auszuwählen, in dessen Namen geplante Aktionen ausgeführt werden.
- Maximale Anzahl von Vorgängen bei der Ausführung geplanter Aktionen.

Bereich "Benutzerdefinierte Regeln"
Benutzerdefinierte Regeln ermöglichen es, Einschränkungen für die Zuweisung von Vorgängen an Benutzer unter bestimmten Bedingungen festzulegen.
Unter Administration → Benutzerdefinierte Regeln können Sie Regeln erstellen und konfigurieren:

Regeln erstellen
Bei der Erstellung geben Sie einen Namen und die Anzeige in den Projekteinstellungen an:

Regeln bearbeiten
Nach der Erstellung einer Regel können Sie die Bedingungen und Einschränkungen bearbeiten.

Ein Klick auf den Regelnamen öffnet das Bearbeitungsfenster. Hier können Sie angeben, in welchen Projekten die Regel aktiviert sein soll.

Mögliche Bedingungen
- Projekt
- Tracker
- Version
- Autor
- Aktueller Benutzer
- Gruppe des Bearbeiters
- Gruppe des Autors
- Rolle des Bearbeiters
- Rolle des aktuellen Benutzers
- Vorgangsstatus
- Tracker des übergeordneten Vorgangs
- Version des übergeordneten Vorgangs
- Benutzerdefinierte Felder für "Vorgänge" der Typen "Liste", "Text", "Gleitkommazahl", "Ganzzahl", "Datum", "Datum und Uhrzeit".
- Benutzerdefinierte Felder für "Projekte" der Typen "Liste", "Text", "Gleitkommazahl", "Ganzzahl", "Datum".


Mögliche Einschränkungen
- Bearbeiter
- Gruppe des Bearbeiters
- Rolle des Bearbeiters
- Fälligkeitsdatum
- Tracker
- Version

Bereich "Automatische Aktionen"
Automatische Aktionen ermöglichen die Ausführung ausgewählter Aktionen beim Speichern eines Vorgangs oder nach einem Zeitplan, unter bestimmten Bedingungen.
Unter Administration → Automatische Aktionen können Sie Aktionen erstellen und konfigurieren:

Aktionen erstellen
Bei der Erstellung geben Sie einen Namen, die Ausführungsmethode und die Anzeige in den Projekteinstellungen an. Aktionen können auf zwei verschiedene Arten ausgeführt werden:
- Beim Speichern - Aktionen werden sofort beim Erstellen oder Bearbeiten eines Vorgangs ausgeführt.
- Geplant (cron) - Regeln werden periodisch gemäß einem Cron-Zeitplan ausgeführt.

Aktionen bearbeiten
Nach der Erstellung einer Aktion können Sie die Regel, Bedingungen und Aktionen bearbeiten.

Ein Klick auf den Regelnamen öffnet das Bearbeitungsfenster. Hier können Sie angeben, in welchen Projekten die Regel aktiviert sein soll.

Mögliche Bedingungen
- Standard-Vorgangsfilter
- Benutzerdefinierte Vorgangsfilter
- Vorgangsfilter von anderen Plugins
Mögliche Aktionen
- Bearbeiter
- Speichern verbieten
- E-Mail senden
- Status
- Tracker
- Projekt
- Version
- Version offener Untervorgänge
- Beobachter
- Webhook (GET)
- Mattermost-Webhook
- Telegram-Webhook
- Checkliste (falls das Plugin redmine_advanced_checklists installiert ist)


Für die Aktionen "E-Mail senden", "Webhook (GET)", "Mattermost-Webhook" und "Telegram-Webhook" stehen Aktionsvariablen zur Verfügung.

Verwendung
Aktivieren von Regeln und Aktionen
Nach der Erstellung von Regeln und Aktionen müssen diese separat in den Projekteinstellungen aktiviert werden.
Gehen Sie dazu wie folgt vor:
Projekt → Einstellungen → Benutzerdefinierte Regeln, aktivieren Sie die in diesem Projekt benötigten Regeln.

Projekt → Einstellungen → Automatische Aktionen, aktivieren Sie die in diesem Projekt benötigten Aktionen.

Benutzerdefinierte Regeln
Verfügbare Einschränkungen, die bei erfüllten Bedingungen angewendet werden:
Bearbeiter
Der Vorgang kann nur ausgewählten Benutzern zugewiesen werden.

Gruppe des Bearbeiters
Der Vorgang kann nur Benutzern zugewiesen werden, die zu den ausgewählten Gruppen gehören.

Rolle des Bearbeiters
Der Vorgang kann nur Benutzern mit der ausgewählten Rolle für das Projekt zugewiesen werden.

Fälligkeitsdatum
Das Fälligkeitsdatum für Vorgänge kann nur innerhalb eines bestimmten Datumsbereichs festgelegt werden.

Tracker
Vorgänge können nur die ausgewählten Tracker haben.

Version
Vorgänge können nur die ausgewählten Versionen haben.

Automatische Aktionen
Ausführungsmethode "Geplant"
Aktionen werden periodisch gemäß dem Cron-Zeitplan ausgeführt.
Damit eine automatische Aktion korrekt funktioniert, müssen Sie einen neuen Befehl in die Crontab des Servers einfügen, der den Befehl bundle exec rake advanced_workflows:run_actions ausführt.
Beispielbefehl:
*/5 * * * * cd /absolute/path/to/redmine && bundle exec rake advanced_workflows:run_actions >> /absolute/path/to/redmine/logs/cron_advanced_workflows.log
Fügen Sie diesen Befehl als der Benutzer, unter dem Redmine läuft, in cron ein und ersetzen Sie /absolute/path/to/redmine durch den absoluten Pfad zu Ihrem Redmine-Installationsverzeichnis.
Der Cron-Befehl wird alle 5 Minuten ausgeführt */5 * * * *
Alle Standardmeldungen werden an die Datei .../logs/cron_advanced_workflows.log angehängt.
Verfügbare Aktionen, die bei erfüllten Bedingungen ausgeführt werden:
Webhook (GET)
Sendet eine GET-Anfrage an die angegebene URL. Wird für die Integration mit externen Systemen verwendet, z. B. zur Synchronisierung mit Jira.
Unterstützt alle Variablen der Vorgangsfelder.

Mattermost-Webhook
Sendet eine Nachricht an einen Mattermost-Kanal.
- URL: URL des eingehenden Webhooks für Mattermost.
- POST-Daten: Die zu sendende Nachricht.
Unterstützt alle Variablen der Vorgangsfelder. 
Telegram-Webhook
Sendet eine Nachricht an einen Telegram-Gruppenchat mithilfe eines Bots.
- Token: Token des Telegram-Bots
- Chat-ID: ID des Chats, in dem dieser Bot hinzugefügt wurde
- POST-Daten: Die zu sendende Nachricht
Unterstützt alle Variablen der Vorgangsfelder. 
E-Mail senden
Sendet eine E-Mail an die angegebenen E-Mail-Adressen. Adressen können durch Kommas , oder ; getrennt werden.
Unterstützt alle Variablen der Vorgangsfelder.

Version
Ändert automatisch die Version des Vorgangs.
- Durch aktuelle Version des Vorgangs ersetzen - Ersetzt die Version des Vorgangs durch die aktuelle (aktive) Version des Projekts.

Version offener Untervorgänge
- Ändern zu - Ändert die Version aller offenen Untervorgänge auf die angegebene.
- Gleich der Vorgangsversion setzen - Ändert die Version aller offenen Untervorgänge auf die Version des Vorgangs.

Speichern verbieten
Verhindert das Erstellen/Bearbeiten des Vorgangs. 
Beobachter
Fügt dem Vorgang angegebene Beobachter hinzu. 
Status
Ändert den Status des Vorgangs auf den angegebenen. 
Tracker
Ändert den Tracker des Vorgangs auf den angegebenen. 
Checkliste
Verfügbar, wenn das Plugin redmine_advanced_checklists installiert ist.
Erstellt automatisch eine Checkliste aus Vorlagen, wenn Bedingungen erfüllt sind.
Verwenden Sie vorbereitete Vorlagen. 
Projekt
Ändert das Projekt des Vorgangs auf das angegebene.

Bei problemen oder fragen schreiben sie uns bitte eine e-mail an [email protected]