Spelen Werken met Office365 is onderdeel van mijn werkzaamheden, maar daarnaast beheer ik ook nog een Mattermost instance die we voor onze onderlinge communicatie gebruiken. Al een tijdje terug had ik met Zapier een flow gemaakt die wanneer een van onze bloggers een bericht schrijft hiervan een notificatie op Mattermost gemaakt zou worden. Zapier is echter een betaald product en ik ben van mening dat we eigenlijk zoveel mogelijk van de producten uit de Office365 suite moeten gebruiken om daar in ieder geval zoveel mogelijk ervaring mee op te doen.
Tijd dus om eens wat effort te steken in het omzetten van deze functionaliteit van Zapier naar Microsoft Flow.
Het proces:
Simpel genoeg zou je zeggen.
De stappen komen neer op het gebruik van een RSS reader die vervolgens via een HTTP post een bericht naar de incoming webhook van Mattermost stuurt in een JSON formaat. Gelukkig worden al deze stappen ondersteund in Microsoft flow.
Stap 1: Aanmaken incoming webhook Mattermost
Open in mattermost het integrations menu vanuit de user die uiteindelijk de posts mag doen.
Kies in het menu voor Integrations
Kies voor de incoming webhook
Klik op de optie “Add Incoming webhook”
Vul de gegevens in, deze zijn over het algemeen enkel voor je eigen administratie, alleen het te gebruiken kanaal is van belang
Na het voltooien krijg je een URL, deze is van belang later in het proces, dus sla deze even ergens op.
Stap 2: Aanmaken flow in Microsoft flow
Ga hiervoor naar flow.microsoft.com en log indien nodig in met je credentials.
Kies op flow.microsoft.com voor “Mijn stromen”
Je krijgt een overzicht met de bestaande stromen. Kies hier voor “Lege stroom maken”
bovenaan kan je de naam van de flow invullen. Zoek vervolgens in de lijst daar onder naar de RSS optie (die is er maar 1 op dit moment) en klik daar op.
Kies vervolgens voor de eerste trigger (wederom de enige op dit moment)
Voer vervolgens de link naar de RSS feed van de blog die je wil volgen in. in het geval van Wordpress is dat eigenlijk altijd webadres/feed/. Druk vervolgens op de “+ Nieuwe stap” knop
In ons geval kiezen we dan voor een nieuwe actie toevoegen. Er zal een nieuw blok worden toegevoegd.
Zoek in dit nieuwe blok naar de HTTP optie.
Als je op de HTTP optie geklikt hebt mag je voor de HTTP – HTTP optie kiezen. Er zal een nieuw blok verschijnen waar je de nodige velden in moet vullen.
Hier moeten een aantal velden gevuld worden. Kies bij “Method” voor “POST” en vul bij “URI” de incoming webhook link in die we eerder gemaakt hebben.
De koptekst velden mag je leeg laten, maar de indeling van het hoofdveld is wel belangrijk. Begin daar met het invullen van:
{
“text”: “”
}
Bij het vullen van de hoofdtekst mag je tussen de “” achter “text” invullen wat je wil. Je kan hiervoor uit het rechter menu items uit de RSS feed vullen.
Als je alleen de titel van het bericht en een link naar het item zou willen publiceren krijg je dan een bericht dat er uit ziet zoals in het bovenstaande screenshot.
Als je klaar bent kan je de flow opslaan. Vanaf dat moment is de flow actief en kan je deze gaan testen.
Uiteindelijk stelt het dus niet al te veel voor maar het is even puzzelen hoe het HTTP request er uit moest komen te zien.