n8n workflow - Schijfruimte e-mails versturen in Slack bericht

In dit artikel leggen we uit hoe je de schijfruimte e-mails welke vanuit cPanel verzonden worden kunt omzetten naar een Slack bericht.

Download de volledige workflow hier

Benodigdheden

  1. Een n8n personal server of hoger (zie https://www.hoasted.com/hosting/n8n-vps/)
  2. Een hosting account welke tegen de schijfruimte limieten aan loopt
  3. Een e-mail account (in dit voorbeeld gebruiken we een standaard IMAP mailbox)
  4. Een Slack API key met rechten om te posten in een channel (meer uitleg in deze handleiding)

E-mailbox uitlezen via IMAP mailbox

Voeg een 'E-mail Trigger (IMAP)' node toe aan de workflow, en vul hier de login details van de IMAP mailbox in. Mocht je nog geen cPanel mailbox hebben kun je deze aanmaken via deze handleiding.

Deze node zal vervolgens alle ongelezen mails uit het account weergeven aan de rechterzijde. Via het 'Action' veld heb je tevens de optie om de mail automatisch op 'Mark as Read' te zetten. Gezien deze node enkel ongelezen mails ophaalt schakelen we deze optie in, om zo te voorkomen dat er bij iedere uitvoer meerdere (oude) berichten in Slack gepost worden.

Je kunt behalve de IMAP trigger ook direct gebruik maken van een Gmail of Microsoft Outlook trigger. Let wel op dat hier de desbetreffende API keys nog voor aangevraagd en geconfigureerd dienen te worden.


Inkomende e-mails filteren op basis van onderwerp

De schijfruimte e-mails zullen driemaal verzonden worden. De eerste wanneer het account 80% vol zit, de tweede wanneer het account 90% vol zit, en de laatste wanneer het account 100% vol zit. Je kunt dit gemakkelijk herkennen aan het onderwerp van de e-mail, waar deze als volgt in beeld komen.


  • 80% - [s1155.hostingsecure.com] Disk Usage Warning: The user “jouwdome” (jouwdomeinhier.nl) has nearly reached their disk quota.
  • 90% - [s1155.hostingsecure.com] Disk Usage Warning: The user “jouwdome” (jouwdomeinhier.nl) has almost reached their disk quota.
  • 100% - [s1155.hostingsecure.com] Disk Usage Warning: The user “jouwdome” (jouwdomeinhier.nl) has reached their disk quota.

Om deze mails te filteren is het dan ook het handigst om op basis van het onderwerp te filteren. Je kunt dit uitvoeren door een nieuwe 'Filter' node toe te voegen aan de workflow, en hier de 'ends with' filter bij te gebruiken. Het laatste deel van de mails zijn telkens verschillend zodat je hier goed op kunt filteren. Middels de 'OR' condition kun je deze aanmaken voor de drie typen e-mails.


E-mail bericht posten in Slack

Om het e-mail bericht vervolgens in Slack te posten dien je een nieuwe 'Slack' node toe te voegen, met de actie 'Send a message'. Hier kun je alle velden uit de e-mail in gebruiken om zo het bericht naar wens te finetunen. We gebruiken hierbij wederom het onderwerp om deze in Slack te posten.

Meer informatie over de Slack API koppeling kun je vinden in onze handleiding over het koppelen van de Slack API.


Workflow activeren

Om dit volledig te automatiseren is het enkel nog nodig om de workflow rechtsboven op 'Active' te zetten, of vanuit het overzicht van je workflows. Zo zal de workflow bij iedere ontvangen e-mail draaien.


Resultaat

Op het moment dat er een schijfruimte mail binnen komt zal deze nu automatisch in Slack gepost worden.

Heeft dit artikel je goed geholpen? Dank voor je feedback! Er is een probleem opgetreden bij het verzenden. Probeer opnieuw.