Arbeitest du mit Redmine und einem Chat-Tool wie Slack, Mattermost, Rocket.Chat oder Matrix? Dann hol mit unserem Automation Plugin für Redmine noch mehr aus diesen Tools heraus.

Das Redmine Automation Plugin sorgt dafür, dass wichtige Projekt-Aktivitäten automatisch in deinen Chat-Kanälen landen. Du entscheidest, welche Updates dein Team sehen soll – flexibel und automatisch.

In diesem Beitrag erfährst du, wie du mit den Automation-Aktionen “Matrix Nachricht senden” und “Slack Nachricht senden” dein Team in Echtzeit auf dem Laufenden hältst.

Redmine Automation Plugin

Automatisierungen im Redmine Automation Plugin basieren auf einer Regel (bestehend aus Trigger + Bedingung + Aktion) und diese funktioniert nach dem “Wenn-Dann”-Prinzip. Das Plugin überwacht kontinuierlich alle definierten Trigger und führt die entsprechenden Aktionen aus, sobald die Bedingungen erfüllt sind - ohne dass ein Benutzer eingreifen muss.

Warum Chat-Benachrichtigungen aus Redmine?

Stell dir vor: Ein kritischer Bug wird gemeldet, ein Sprint-Ziel erreicht oder ein wichtiges Ticket wartet auf Review. Statt dass jedes Teammitglied manuell in Redmine nachsehen muss, erscheint die Information direkt im gemeinsamen Team-Chat – dort, wo die Kommunikation in vielen Projekten ohnehin stattfindet. Das spart Zeit, verbessert die Reaktionsgeschwindigkeit und hält alle auf dem Laufenden.

Slack-kompatible Nachrichten: Für Slack, Mattermost und Rocket.Chat

Die “Slack Nachricht senden”-Aktion im Redmine Automation Plugin unterstützt nicht nur Slack selbst, sondern alle Dienste, die Slacks Incoming Webhooks unterstützen – also auch Mattermost und Rocket.Chat. Die Konfiguration ist bewusst einfach gehalten und basiert auf YAML. Nachfolgend ein Beispiel wie eine solche YAML-Konfiguration aussehen könnte.

Einfache Nachricht senden

Du fügst die Aktion zu deiner Automation-Regel hinzu und definierst die wichtigsten Parameter per YAML:

webhook_url: https://hooks.slack.com/services/T000/B000/XXX
body: "Neues Ticket in Projekt {%project.name%}: {%issue.subject%}"
channel: "#alerts"
username: "Redmine Bot"
icon: ":rotating_light:"
mrkdwn: true

Die Felder webhook_url und body sind Pflicht, alles andere optional. Du kannst den Bot-Namen und das Icon anpassen – entweder mit Emojis (:robot_face:) oder einem direkten Link zu einem Bild. Der channel-Parameter überschreibt den Standard-Kanal des Webhooks.

Formatierung mit mrkdwn

Slack verwendet eine eigene Markdown-Variante namens “mrkdwn”. Du kannst damit deine Nachrichten übersichtlicher gestalten:

  • Fett: *fett*
  • Kursiv: _kursiv_
  • Code: `status`

Mehrere Nachrichten auf einmal

Du kannst mit einer Regel auch mehrere Nachrichten an unterschiedliche Kanäle oder sogar verschiedene Webhooks senden – ideal, wenn du etwa sowohl dein Entwickler-Team als auch das Management informieren möchtest:

webhook_url: https://hooks.slack/DEFAULT
username: "Redmine Bot"
messages:
  - body: "Dev-Info: Ticket {%issue.id%} zugewiesen"
    channel: "#dev-team"
  - body: "Management-Info: Neuer Critical Bug"
    channel: "#management"
    webhook_url: https://hooks.slack/OTHER

Die Aktion unterstützt bis zu 25 Nachrichten pro Regel. Jedes Element kann alle Parameter überschreiben – du bleibst maximal flexibel.

Matrix-Nachrichten

Wenn du einen Matrix-Homeserver (zum Beispiel Synapse oder Dendrite) nutzt, bietet dir das Plugin die Aktion “Matrix Nachricht senden”. Matrix ist ein offener Standard und besonders interessant, wenn du Wert auf Selbst-Hosting legst. Die Standard-Matrix-Aktion sendet unverschlüsselte Nachrichten. Die Möglichkeit zur Nutzung eines optionalen verschlüsselten Bot-Service (der erst eingerichtet werden muss) wird nicht offiziell unterstützt, da die Einrichtung und der Betrieb komplex sind und auf eigene Verantwortung erfolgt. Hier bietet AlphaNodes keinen Support an. Für die meisten Anwendungsfälle empfehlen wir die Nutzung transport-verschlüsselter Verbindungen (HTTPS).

Grundkonfiguration

Auch hier arbeitest du mit YAML. Die Einrichtung ist ähnlich einfach:

base_url: https://matrix.example.org
room: "#alerts:example.org"
token: "dein-access-token"
msgtype: "m.notice"
body: "Projekt ID: {%project.id%} – Ticket {%issue.subject%}"

Pflichtfelder sind base_url, room, body und token. Der msgtype ist optional – Standard ist m.notice, was für Bot-Nachrichten empfohlen wird, weil es weniger aufdringlich ist als m.text.

HTML-Formatierung mit Redmine

Ein besonderes Feature der Matrix-Aktion: Du kannst deine Nachricht automatisch mit Redmines eigenem Textformat (z.B. Markdown) rendern lassen. Setze dazu render_html: redmine:

render_html: redmine
body: " |
  ({%project.name%}) Ticket *{%issue.subject%}* wurde erstellt/aktualisiert

  - Status: {%issue.status%} (Prio: {%issue.priority%})
  - URL: {%issue.url%}"

Das Plugin rendert den Text mit Redmines textilizable-Helper und sendet sowohl eine HTML-Version als auch den Klartext als Fallback. Matrix-Clients zeigen dann formatierte Links, Listen und Hervorhebungen an – je nach Client-Unterstützung.

Mehrere Nachrichten und Defaults

Wie bei Slack kannst du auch bei Matrix mehrere Nachrichten pro Regel senden und Defaults definieren:

base_url: https://matrix.example.org
token: "TOKEN-DEFAULT"
msgtype: m.notice
messages:
  - room: "#ops:matrix.example.org"
    body: "Ticket {%issue.id%}: {%issue.subject%}"
  - base_url: https://matrix.other.org
    token: "TOKEN-OTHER"
    room: "#alerts:matrix.other.org"
    body: "Projekt {%project.id%}: Build fehlgeschlagen"
    render_html: redmine

Auch hier gilt: Bis zu 25 Nachrichten pro Regel.

Variablen: Dynamische Inhalte aus Redmine

Beide Aktionen unterstützen Variablen, die du in geschweiften Klammern mit Prozentzeichen schreibst:

  • issue.id – Ticket-ID
  • issue.subject – Ticket-Titel
  • issue.status – Status
  • project.name – Projektname
  • issue.url – Absolute URL zum Ticket
  • user.firstname – Vorname des auslösenden Benutzers

Variablen funktionieren in allen Textfeldern. Die Auflösung geschieht automatisch beim Senden der Nachricht.

Beide Aktionen validieren deine YAML-Konfiguration und geben klare Fehlermeldungen aus um die Fehlersuche zu erleichtern.

Eine Übersicht aller zur Auwahl stehenden Trigger und Aktionen für die Automatisierungsregeln findest Du in unserem Cheat-Sheet zu Regel-Aktionen.

Fazit: Dein Team bleibt automatisch informiert auch wenn es nicht regelmäßig in Redmine angemeldet ist

Mit den Chat-Aktionen des Redmine Automation Plugins schließt du die Lücke zwischen Projektmanagement und Team-Kommunikation. Egal ob du Slack, Mattermost, Rocket.Chat oder Matrix nutzt – du kannst wichtige Ereignisse direkt in die Kanäle senden, in denen dein Team arbeitet.

Die YAML-basierte Konfiguration ist flexibel, unterstützt Variablen und Formatierung und erlaubt dir, mit einer Regel mehrere Ziele anzusprechen. So bleiben alle auf dem Laufenden, ohne dass jemand manuell in Redmine nachsehen muss.

Schau dir die Pluginfunktionen auf unserer kostenlos zugänglichen Online-Demo an.

Die hier vorgestellte Aktion ist ab Plugin Version 4.2.0 integriert. Alle Informationen zu unseren Erweiterungen für Redmine gibt es auf der Produktseite. Kunden, deren Redmine den Mindestanforderungen nicht entspricht oder die lieber jemanden für die Installation und regelmäßige Pflege ihrer Redmine-Instanz beauftragen wollen, haben alternativ die Möglichkeit unser Managed Applikation Hosting für Redmine zu buchen. Hier ist das Plugin auf Wunsch Teil unseres Hosting Angebots.

Weiterführende Infos

Aktualisiert: