YESLY Smart Home

IFTTT für Fibaro HC2 – so gehts

crissxcross
Geschrieben von crissxcross
siio-App

Jetzt ist alles möglich! In diesem Tutorial zeige ich dir wie du mit der Fibaro – IFTTT ansprechen kannst und andersherum, wie du IFTTT als Trigger nutzt. Im Beispiel schalten wir die Belkin WeMo Geräte.

IFTTT sollte für viele von euch ein Begriff sein. Dabei handelt es sich um einen kostenfreien Webservice, welcher sogenannte „Kanäle“ und Rezepte anbietet. Die Kanäle können wiederum Webdienste sein wie: Google Mail, Office 365, eBay, Yahoo Wetter, Soundcloud, RSS Feeds und so weiter… Ein Kanal kann aber auch ein IoT Device sein (Modewort und steht für Internet of Things Gerät), also ein Gerät was selbstständig mit dem Internet kommuniziert. Beispielsweise die netatmo Wetterstation, Wink Smart Home Produkte, SmartThings, Philips Hue Leuchten, Google Nest Thermostat und Rauchmelder, Belkin WeMo, Switch, LED Leuchten ach ja und Blink (1) :-) aber dazu vielleicht ein andermal mehr.

IFTTT steht dabei für „IF-THIS-THEN-THAT“ zu deutsch: „Wenn dies, dann das„. Also eine sehr einfache Regel die ausgeführt wird aber dabei Geräte und Dienste unterschiedlicher Hersteller verbindet. So könnte man sagen:

  • Wenn WeMo Motion Sensor Bewegung erkannt hat, Dann schreib mir eine eMail via Google Mail
  • Wenn neue Artikel in eBay Suchergebnissen Dann Philips Hue auf Rot
  • Wenn Netatmo Aussentemperatur < 0° C Dann nest thermostat an

Hier ist also wirklich viel möglich. Wäre doch super, Wenn man einen Z-Wave Wandschalter drückt und dann die WeMo LEDs angehen, oder der WeMo Switch. Wenn Fibaro Motion Bewegung erkennt, dann eine Nachricht auf die Android Uhr senden, oder wenn jemand auf deinem Android Telefon anruft, dann TV oder Musik via Fibaro Virtual Device leiser machen.

Ich hätte da so viele Ideen. Cool das es jetzt geht !! :-D

Seit kurzem gibt den Kanal „Maker“ – dieser kann:

  1. Trigger also Auslöser sein, dann ruft er einen http Befehl auf
  2. http Befehle annehmen und eine Aktion ausführen.

Heißt wir können mit der Fibaro in beide Richtungen mit IFTTT kommunizieren. So kannst du nun eine Szene auf der Fibaro Starten wenn Yahoo Wetter meldet das es Regnet, oder du eine neue eMail hast oder der im Google Kalender ein Ereignis startet, oder wenn du mit deinem iPhone einen definierten Bereich verlässt bzw. erreichst, oder das Fitbit Armband meldet das du schläfst….

Andersrum kannst du so natürlich auch einen HTTP Befehl abfeuern, welcher den WeMo Switch, die WeMo LEDs, die Philips Hue, das Google nest Thermostat, blink(1) ;-) ein- / ausschaltet, steuert oder eine eMail bzw. Pushnachricht versendet, einen Kalendereintrag oder ein Evernote Event setzt und so weiter …

Da geht echt viel! – und so geht´s!

IFTTT Maker einrichten

Ich setze mal voraus, dass du einen IFTTT Account besitzt, wenn nicht: einfach hier registrieren. Wenn du in deinem Account eingeloggt bist, gehst du oben im Menü auf Channels, suchst nach „Maker“ – und fügst ihn hinzu. Dadurch bekommst du schon automatisch einen „secret key“. Diesen brauchst du später, wenn wir per http Aufruf in Richtung IFTTT Aktionen auslösen wollen.

IFTTT Kanal Maker - kann via http Befehl gesteuert werden

IFTTT Kanal Maker – kann via http Befehl gesteuert werden

IFTTT startet Szene auf deiner Fibaro

Den folgenden Teil will ich nicht so ausführlich erklären. Das liegt nicht daran das diese Geschichte unspannend ist – im Gegenteil, dieser Teil hier ist hochgradig spannend! Er erlaubt uns zum Beispiel den Standort unseres iPhone zu nutzen um Szenen auszulösen oder Geräte direkt zu schalten. Die Geolocation Funktion hat die Fibaro App zwar auch, aber diese beruht auf GPS und saugt den Akku extrem schnell leer. Hier, bei der IFTTT Lösung sprechen wir von der Ortung via: Mobilfunk-, Wi-Fi und GPS-Netzen, was den Akku deutlich mehr schont. Ausserdem können wir eine Szene auslösen, wenn in Google Calendar ein Event ansteht und vieles mehr.

Der Kanal „Maker“ ruft dabei einen http Befehl auf. Darüber lässt sich jedes einzelne Gerät, in der Fibaro steuern. Der http Befehl sieht dann so aus:

Was du hier benötigst, ist ein DynDns Account (da gibt es viele Anbieter wie DynDns, noIP.com, selfhost usw), denn alle 24h bekommst du von deinem Provider eine neue IP Adresse. Der „Maker“ Kanal auf IFTTT benötigt aber eine feste Adresse um deine Fibaro zu erreichen. Deswegen brauchst du den DynDns Account. Die Zugangsdaten kannst du in deinem Router unter dem entsprechenden Menüpunkt hinterlegen. Immer wenn dein Router eine neue IP von deinem Provider bekommt, meldet er diese ab sofort an den DynDns Account. Der hinterlegt die IP und mappt sie zu deiner DynDns Adresse, die da lautet: http://deineAdresse.dyndns.org.

Dein Router ist somit immer über diese Domain erreichbar. Damit auf Port 80 (Webanwendung) deine Fibaro antwortet, musst du diesen Port noch forwarden, also auf deine Fibaro weiterleiten. Sei dir aber bewusst, das du damit eine potentielle Tür zu deiner Fibaro ins Netz stellst. Befehle die via http übermittelt werden sind unverschlüsselt und könnten mitgelesen werden.

Rezept erstellen

Nun, wenn deine Fibaro von aussen per Domain / DynDns erreichbar ist, kannst du ein Rezept anlegen. So nennen sich bei IFTTT die Wenn-Dann Begingungen. Dazu gehst du wieder in deinen IFTTT Account und gehst oben im horizontalen Menü auf „My Recipes“ -> „Create Recipe

Als erstes wählst du den Auslöser, also die Bedingung aus. Das kann die Veränderung von deinem Standort sein, oder wenn du eine eMail, bzw. eine eMail von einer bestimmten Person (Chef? ;-p) erhalten hast, oder das Wetter Regen meldet usw. Tipp: Welche Trigger, also Auslöser ein Kanal bietet, siehst du bereits bevor du den Kanal verknüpfst, indem du auf „Channels“ gehst und irgend einen Kanal anklickst. Scrolle nun etwas nach unten und auf der linken Seite stehen alle verfügbaren Auslöser, rechts alle möglichen Aktionen.

[carousel arrows=“display“ buttons=“display“ caption=“display“] [panel title=“Maker Channel IFTTT“ description=“IF this -> Trigger / Auslöser auswählen“]
IF this -> Trigger / Auslöser auswählen

IF this -> Trigger / Auslöser auswählen

[/panel] [panel title=“Maker Channel IFTTT“ description=“IF this -> Trigger Event auswählen“]
IF this -> Trigger Event auswählen

IF this -> Trigger Event auswählen

[/panel] [panel title=“Maker Channel IFTTT“ description=“IF this -> Trigger Event Standort via iOS“]
IF this -> Trigger Event Standort via iOS

IF this -> Trigger Event Standort via iOS

[/panel] [panel title=“Maker Channel IFTTT“ description=“IFTTT – THAT Maker Kanal wählen“]
IFTTT - THAT Maker Kanal wählen

IFTTT – THAT Maker Kanal wählen

[/panel] [panel title=“Maker Channel IFTTT“ description=“IFTTT – Maker Kanal spricht Fibaro Api an“]
IFTTT - Maker Kanal spricht Fibaro Api an

IFTTT – Maker Kanal spricht Fibaro Api an

[/panel] [panel title=“Maker Channel IFTTT“ description=“IFTTT Rezept erstellen“]
IFTTT Rezept erstellen

IFTTT Rezept erstellen

[/panel] [/carousel]

Im THAT Befehl suchst du nun nach „Maker“ und wählst dort die einzig verfügbare Aktion „make a web request“ aus. in die URL gibst du nun den Befehl ein, welcher dein Gerät schaltet, bzw. deine Szene startet. Hier will ich auch gar nicht tiefer in die Materie gehen, denn diese API Calls für die Fibaro hat Daniel für seine Sprachsteuerung via Google Now mit Tasker schon verwendet. Deswegen setze ich hier einfach mal den Querlink mit der Bemerkung, das du die Links 1:1 übernehmen kannst, lediglich die IP Adresse musst du gegen deine DynDns Domain austauschen. Voran stellst du den Benutzernamen und das Passwort:

Beispiel:

Es macht mehr Sinn eine Szene zu steuern als ein einzelnes Device via http anzusprechen, denn die Szene kannst du bei Bedarf auf deiner Fibaro schnell ändern oder ergänzen. Ansonsten kannst du ein einzelnes Gerät so ansprechen:
Was auch ganz interessant sein könnte sind virtuelle Module, diese steuerst du so:
Alles weitere in Daniels Artikel nachlesen ;-)

IFTTT Aktion auslösen

Wie beschrieben, können wir mit der Fibaro auch ein http Befehl senden, welcher dann ein IFTTT Rezept triggert (auslöst). Wir könnten also via Tastendruck auf einer Fernbedienung, wie der KFOB oder einem Wandschalter die WeMo LEDs, die Philips Hue, oder den WeMo Switch einschalten. Wir können via Szene, zeitgesteuert die WeMo LEDs in den „Sleep fader“ (langsames herunterdimmen) versetzen. Alternativ kannst du so auch bei Bewegung eine Pushmitteilung ins iOS Notification Center senden lassen, oder eine eMail.

Hierzu gibt es zwei Möglichkeiten, diesen http Befehl zu senden. Entweder:

  1. via Button auf einem virtuellen Device
  2. per Szene

Beide Varianten haben Ihre Vorteile und jeweiligen Einsatzmöglichkeiten:

  1. Das virtuelle Device würde ich immer für Hardware Geräte nehmen, wenn ich zum Beispiel Philips Hue, Google nest, blink(1) :-D , WeMo Switch, LEDs oder den WeMo Maker steuern will. Die Knöpfe des Virtual Device lassen sich auch in „Szenen“ drücken.
  2. Eine Szene eignet sich recht gut um Webdienste per IFTTT zu steuern. So kannst du Beispielsweise eine eMail via google Mail versenden, oder eine Nachricht in das iOS Notification Center. In der Szene lassen sich die Value Werte individuell füllen, die später der Inhalt der eMail oder Pushnachricht sind, bzw. der Wert auf den eine Lampe gedimmt werden soll ect.

Wir schauen uns beide Möglichkeiten mal an:

IFTTT als virtuell Device in Fibaro

Im Beispiel will ich dir mal eben zeigen, wie du einen WeMo Switch ( Steckdose) per Fibaro steuerst. Den Maker Kanal haben wir ja bereits vorhin mit unserem IFTTT Kanal verbunden und erhielten dabei auch unseren secret Key. Als nächstes benötigen wir den Eventnamen. Dazu gehe im IFTTT Kanal auf „My Recips“ „Create a Recipe“. Nun wählst du im „IF THEN“ Teil als Auslöser den Kanal „Maker“ aus. Hier hast du wieder nur eine Auswahlmöglichkeit: „Receive a web request“.

Nun musst du einen Event Namen vergeben. Diesen kannst du frei nach deiner Fantasie verteilen. Es dient später dazu, dass Rezept eindeutig per http Befehl zu adressieren. Mit einem Klick auf „Create Trigger“ geht es weiter zum „THAT“ Teil, in welchem die Aktion festgelegt wird.

THAT: Hier kannst du nun aus allen Kanälen eine Aktion definieren, welche ausgeführt werden soll wenn Maker per http Befehl ausgelöst wurde. Wie bereits beschrieben wollen wir den WeMo Switch steuern, dazu suchst du nach „WeMo“ und wählst den Kanal vom Switch aus.

[carousel arrows=“display“ buttons=“display“ caption=“display“] [panel title=“IFTTT – Fibaro “ description=“IFTTT- IF This: Kanal Maker auswählen“]
IFTTT- IF This: Kanal Maker auswählen

IFTTT- IF This: Kanal Maker auswählen

[/panel] [panel title=“IFTTT – Fibaro “ description=“IFTTT – Maker – Event Namen festlegen“]
IFTTT- Maker Kanal: Event Name

IFTTT- Maker Kanal: Event Name

[/panel] [panel title=“IFTTT – Fibaro “ description=“IFTTT- THAT Aktion festlegen“]
IFTTT- THAT Aktion festlegen

IFTTT- THAT Aktion festlegen

[/panel] [panel title=“IFTTT – Fibaro “ description=“IFTTT- THAT Aktion WeMo schalten“]
IFTTT- THAT Aktion WeMo schalten

IFTTT- THAT Aktion WeMo schalten

[/panel] [/carousel]

Nun werden dir alle Aktionen angezeigt, welche möglich sind. Neben Einschalten und Ausschalten, können wir die Steckdose auch „toggeln“ also in den „Gegenzustand“ schalten. Das wähle ich auch aus, denn so kann ich mit einem virtuellen Button die Steckdose Ein-/ und Ausschalten.

Im nächsten Schritt musst du via DropDown nur noch auswählen, welcher deiner WeMo Switche gesteuert werden soll. Danach legt der Button „create Action“ das „Rezept“ an.

Virtuelles Device erstellen

Jetzt müssen wir nichts weiter machen, als den http Befehl, welcher unseren Eventnamen und den secure key beinhaltet abzusenden. Wie der aufgebaut sein soll, findest du übrigens im Kanal von „Maker“ mit einem Klick auf „How to trigger Events

Also erst einmal auf der Weboberfläche der Fibaro wechseln, dort auf Module -> links auf „Lösche oder füge Gerät hinzu“ > und hier wähle: „virtuelles Device„. Vergib diesem einen passenden Namen und wechsel auf die Registerkarte: „Erweitert“. Dort fügst du einen Button hinzu. Schalte diesen von „Zeichenkette“ auf „LUA“ um. Das Script sieht wie folgt aus:

Beide benötigten Variablen sind uns ja bekannt: {event}, sowie auch {Userkey}. Der Userkey, ist der „secret Key“ welchen du beim hinzufügen des „Maker“ Kanal erhalten hast – das Event hatten wir gerade angelegt und selbst frei benannt. Diese Variablen fügst du nun in den Link ein (ohne die geschweiften Klammern -> {}). Das sieht dann so aus:

Jetzt nur noch speichern und fertig. Zeit für einen Test. Per Klick auf den Button, sollte nun die WeMo Steckdose eingeschaltet, bzw. ausgeschaltet werden. Im IFTTT solltest du einen entsprechenden Log Eintrag sehen, wenn du auf das „Rezept klickst“ und links auf „Log“.

[carousel arrows=“display“ buttons=“display“ caption=“display“] [panel title=“Fibaro Virtual Device“ description=“IFTTT WeMo“]
Fibaro virtual Device - IFTTT

Fibaro virtual Device – IFTTT

[/panel] [panel title=“Fibaro Virtual Device“ description=“IFTTT WeMo“]
Fibaro virtual Device - IFTTT

Fibaro virtual Device – IFTTT

[/panel] [/carousel]

IFTTT in einer Szene

Fibaro Szene - IFTTT

Fibaro Szene – IFTTT

Auch hier musst du lediglich die zwei Variablen „Event Name“ und den „secret Key“ entsprechend ersetzen.

So einfach lässt sich die Fibaro mit IFTTT verbinden und erweitert damit die Möglichkeiten enorm. Ich bin gespannt wofür Ihr es einsetzen werdet, berichtet doch mal, einfach unten in den Kommentaren.

Diesen Blogpost hat geschrieben ...

crissxcross

crissxcross

Chris, Gründer und Blogger von siio.
Gelernter IT-Systemelektroniker, seit vielen Jahren beruflich als Produktmanager im Smart Home unterwegs. Technikverliebter Familienvater, Apple Fan. Nach einigen Jahren Stadtleben wieder froh auf dem Land zu sein.

15 Kommentare

  • Ich hätte da kein gutes Gefühl, meine Passwörter für die Fibaro bei IFTTT zu speichern…

    Und ganz ehrlich, wir planen gerade unser Haus und ich bin mir nicht mal mehr sicher, ob ich da überhaupt so viel Technik integrieren soll. KNX Bus? Wofür eigentlich, um das Licht an und aus zu machen und die Rollos zu? Das geht alles wesentlich günstiger und viel von dem SchnickSchnack brauch ich nicht (glaub ich). Vor zwei Monaten noch hätte am KNX kein Weg vorbei geführt… Mal sehen…

  • Hallo Chris,
    Danke für das tolle Tutorial! Darauf aufbauend kann man viel machen.
    Ich habe jedoch ein Problem mit den API-Calls auf die HC2-API – nicht nur in diesem Beispiel:
    Links wie http://admin:admin@192.168.100.94/api/sceneControl?id=2&action=start
    funktionieren bei mir nie. Ich bekomme immer eine Antwort wie „HTTP/1.1 401 Authorization Required..“
    Das scheint mit dem Basic auth via „admin:admin@.. zusammenzuhängen. Es klappt jedoch, wenn ich die Auth entsprechend Fibaro-API-Doku via korrekter Header setze (z.B. via REST-Client). In vielen Fällen geht das aber nicht, da man keine Header-Optionen hat. Somit kann ich ausschließen, das es ein anderes Berechtigungsproblem gibt (Alarm o.ä.). Hat sich bei Fibaro da etwas mit der neuesten Version bei der API geändert?

    • Sorry für die verspätete Antwort.

      Ich gehe davon aus, dass Fibaro für die PW/USER-Kombination admin/admin die API-Calls disabled. Was in meinen Augen auch Sinn machen würde. API-Calls mit admin/***-Kombination funktionieren ohne Probleme.

      Bei diesem Thema würde ich empfehlen nur ein User zu nutzen, der nur bestimmte Berechtigungen auf diese, eine bestimmte Szene hat.

      Gruß

  • Hallo,

    ich benötige bei folgendem Vorhaben Eure Hilfe. Und zwar würde ich gerne mit IFTTT ismartalarm und fibaro verbinden. Ismartalarm ist bei IFTTT vorhanden. Fibaro ja leider nicht. Hier muss der Maker herhalten. Und zwar würde ich gerne folgende Szenen erstellen und auslösen lassen.

    Wenn die Contact Sensoren von ismartalarm scharf geschaltet sind und ausgelöst werden, dann fahre alle Rolladen im Haus hoch.
    Wenn die Contact Sensoren von ismartalarm scharf geschaltet sind und ausgelöst werden, dann schalte das Licht im ganzen Haus für 1 Sekunde an und 1 Sekunde aus (Wiederholung ca 1 Minute) und anschließend komplett an.

    Wie programmiere ich diese Szenen via LUA Scipt und wie binde ich das dann in IFTTT ein? Ich hoffe ich habe keine wichtigen Informationen vergessen. Vielen Dank.

    Gruß Tim

  • Hallo Chris,
    Vielen Dank für das tolle Tutorial! Bin noch absoluter Newbie und habe die Einbindung von IFTTT damit komplett geschafft.

    Wenn man aber vom HC2 einen GET Befehl an den IFTTT Maker Channel schicken kann, dann kann man doch aber sicherlich auch einen PUT Befehl direkt an die HUE Bridge schicken, oder?

    Mit dem Homee hat das Problemlos geklappt, aber mit der HC2 finde ich noch nicht die richtige Lösung.

  • Hallo Boomx,

    auch das habe ich ja dank eurer tollen Tutorials bereits hin bekommen. Ich würde jedoch gerne auch einige Befehle direkt an die Hue Bridge senden können, da nicht alles, was die Hue kann über IFTTT realisierbar ist. Wenn ich direkt die Befehle an die HUE sende habe ich auch nicht diese Zeitverzögerung von bis zu 5 Sekunden und das ganze funktioniert auch, sollte das Internet mal gestört sein, was an meinem Anschluß leider häufiger vorkommt.
    Mit dem HUE Plugin kann ich ja leider noch keine Gruppen steuern, keinen Loop machen oder die Leuchten blinken lassen.

    Ich würde mich wundern, wenn man das mit der HC2 nicht hinbekommen würde.

  • Absolut genial, Meeerci!!! Mein Jablotron Sicherheitssystem steuert im Brandfall über nen PG-Ausgang den Fibaro Universal-Sensor an, über das VD via IFTTT werden dann alle Rollladen im Haus durch Somfy Tahoma hochgefahren, und im Panik-Fall heruntergefahren.

  • Hallo criss,

    ich versteh nur Bahnhof. Ich habe eine Fibaro HC Lite und versuche vergebens eine Anwesenheit über iBeacon etc. zu erstellen um meine Alarmsteuerung scharf und entsprechend unscharf zu stellen.
    Ich komme mit dem Tutorial:Anwesenheit und diesem IFTTT für Fibaro nicht klar. Es ist eigentlich genau das was ich mir vorgestellt habe aber da ich nur ein Lite besitze bin ich mir nicht sicher ob es überhaupt ohne Scripts funktionieren kann? Muss ich mir jetzt doch ein HC2 kaufen?
    Ich würde mich freuen wenn du ein Tutorial für meinen Fall erstellen könntest.
    Oder kennt hier jemand einen Fachmann für Smart Home aus dem Saarland?

    MfG,
    fiedles

Gib deinen Senf dazu!