Microsoft Flow Modul

IPSymconFlow

Modul für IP-Symcon ab Version 4.1 ermöglicht die Kommunikation mit dem Dienst Microsoft Flow.

1. Funktionsumfang

Der Internet Dienst Microsoft Flow bietet die Möglichkeit verschiedene Internetdienste miteinander zu verknüpfen und so Arbeitsabläufe zu erstellen, genannt Flows. Es lassen sich auch mehrere Dienste in Reihe verknüpfen. Zwischen einzelnen Diensten können auch Bedingungen geschaltet werden oder Flows zeitverzögert ausgeführt werden. Da es sich um einen Microsoft Dienst handelt lassen sich insbesondere Microsoft Anwendungen wie Azure, Excel, Project, Sharepoint, Outlook, OneDrive, SQL Server, Microsoft Translator aber auch viele andere Dienste zu einem Workflow verknüpfen. Das Modul bindet Flow an IP-Symcon an. Es können Flows in Microsoft Flow von IP-Symcon getriggert werden als auch Daten aus einem Flow in Variablen in IP-Symcon geschrieben werden. Es sind in IP-Symcon jeweils bis zu 15 Variablen pro Instanz in Sende und Empfangsrichtung definierbar, die einen Flow triggern bzw. aus Microsoft Flow beschrieben werden können. Jede Instanz steht für einen Flow der getriggert wird bzw der Daten an IP-Symcon schickt. Die Anzahl der Flow Instanzen ist unbegrenzt. Auf dieser Weise lassen sich Kanäle von Flow mit IP-Symcon 4 verknüpfen.

Microsoft Flow

Microsoft Flow Getting Started

2. Voraussetzungen

IPS 4.1
IP-Symcon Connect
Account bei Microsoft Flow

3. Installation

a. Laden des Moduls

Wir wechseln zu IP-Symcon (Ver. 4.1) und fügen unter Kerninstanzen über Modules -> Hinzufügen das Modul hinzu mit der URL


https://github.com/Wolbolar/IPSymconMicrosoftFlow

Ausführliche Beschreibung der Einrichtung befindet sich auf
IPSymconMicrosoftFlow

Das Modul nutzt Dynamische Konfigurationsformulare und ist daher erst ab IP-Symcon Version 4.1 lauffähig.

Bis zur Version 4.1-520 ist es notwendig nach dem Ändern der Variablenanzahl oder der Kommunikationstyps die Instanz nach dem Übernehmen einmal zu schließen und dann wieder zu öffnen um das angepasste Konfigurationsformular sichtbar zu machen.

Ab IP-Symcon Version 4.1-522 ist ein Schließen der Instanz nach Übernehmen einer Änderung nicht mehr notwendig dann aktualisiert sich das Konfigurationsformular nach dem Drücken von Übernehmen selbstständig.

Anbei mal ein Beispiel wie ein einfacher Flow funktioniert damit der Ablauf deutlicher wird.

Wir lassen uns einen Text durch einen Flow übersetzten.

Wir wollen also einen Flow generieren der aus einer Anforderung, der Übersetzung und der Antwort an IP-Symcon besteht.
flow example 2.png

Dazu erstellen wir in IP-Symcon eine neue Flow Instanz mit einer Variable zum Senden und einer Variable zum Empfangen. Wir erstellen zunächst den groben Flow um diesen dann erneut zum Öffnen zu editieren. Jetzt kopieren wir die URL aus der Anforderung in das IP-Symcon Modul.

Jetzt ergänzen wir noch in der Anforderung das JSON Schema. Wer Hilfestellung bei der Erstellung eines JSON Schema braucht kann

http://jsonschema.net/#/

nutzten. Dort geben wir die Daten so ein wie Sie in Flow ankommen.
Bei nur einem Wert sehen die Daten die an Flow von IP-Symcon geschickt werden so aus

{"value1":"wertvalue1"}

Wenn wir daraus ein JSON Schema erstellen sieht dies nun wie folgt aus:


{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "value1": {
      "type": "string"
    }
  },
  "required": [
    "value1"
  ]
}

Damit haben wir jetzt im folgenden Schritt Zugriff auf den Wert den wir geschickt haben und setzten den dort ein.

flow example 3.png

Im letzten Schritt HTTP schicken wir die Daten wieder an IP-Symcon zurück mit
flow example 4.png

Jetzt erstellt sich automatisch eine Variable unterhalb der Instanz wenn wir ausgewählt haben das der Wert automatisch angelegt werden soll mit dem übersetzten Text wenn der Flow in IP-Symcon ankommt.

Update für internes Webhookskript ab4.1 bccf26a3d3de

Update für IP-Symcon 4.1 Stable es wird kein Interface Skript mehr genutzt sondern der Webhook wird direkt vom PHP Modul entgegen genommen. Bitte vor dem Modulupdate auf die aktuelle IP-Symcon 4.1 Stable aktualisieren wenn IP-Symcon 4.1 benutzt wird.

Hi,

warum ist Symcon Connect genau Voraussetzung?

Viele Grüße
Peter

Nun Microsoft Flow ist ja ein Cloud Dienst der die verarbeiteten Daten aus Flow aus der Cloud an IP-Symcon verschickt.
Daher muss IP-Symcon aus dem Internet erreichbar sein. IP-Symcon Connect ist da die einfachste Möglichkeit einen Webhook für Flow erreichbar zu machen indem man bei URI in Flow die IP-Symcon Connect Adresse mit dem Webhook angibt. Wenn gewünscht kann man das auch ohne IP-Symcon Connect machen dann muss man sich halt selber darum bemühen das IP-Symcon aus dem Internet erreichbar ist und dann bei URI die eigene URL statt der IP-Symcon Connect Adresse eingeben. Ich persönlich fand hier aber IP-Symcon Connect am einfachsten zu nutzten.

Hallo,

ich kann leider das Repository nicht laden:

Gibt es hier ein Problem oder stimmt die URL nicht?

git://github.com/Wolbolar/IPSymconFlow.git

VG

Thorsten

Oh ja stimmt muss ich korrigieren.


https://github.com/Wolbolar/IPSymconMicrosoftFlow

Hi,

vielen Dank für die aufschlussreiche Zusammenfassung! :slight_smile: Also ist Symcon Cennect nicht wirklich Voraussetzung, sondern nur die eigentliche externe Erreichbarkeit der Symcon-Services.

Viele Grüße
Peter

Ja genau wie IP-Symcon erreichbar gemacht wird ist vollkommen egal nur muss es möglich sein den Webhook aus dem Internet zu erreichen.