Heute geht’s um IFTTT – und wir erklären euch wie man mithilfe eines smarten Hacks nello one mit IFTTT verbinden kann. Das heißt, ihr findet hier die Anleitung zur Verwendung von IFTTT in Kombination mit Webhooks und nello one. An dieser Stelle einen riesengroßen Dank an Thomas Kekeisen, der das Ganze in seinem großartigen Blogartikel auch Step-by-Step erklärt.
Was heißt das konkret? IFTTT via Webhook?
Wenn ihr die Schritt-für-Schritt-Anleitung befolgt, könnt ihr nello one als Auslöser des IFTTT Applets anwählen (jedoch nicht, soviel sei vorab gesagt, als Aktion, die ausgeführt werden soll).
Was ist IFTTT?
Ganz einfach: IFTTT ist die Abkürzung für „IF This Then That“. Zu Deutsch also „Wenn dies dann das“. Mit dieser Funktionsweise lassen sich durch IFTTT verschiedene Dienste kombinieren. Ein Dienst ist hierbei der Auslöser, also der „This“ Teil, der bei einer bestimmten Aktion getriggert wird. In unserem Fall wird das ein Webhook sein. Der zweite Teil beschreibt dann den „That“ Teil von IFTTT. Also die Aktion, die ausgelöst werden soll. Diese ganze Funktion wird bei IFTTT intern als „Applet“ bezeichnet.
Das brauchst du:
Nachdem wir nun wissen, was IFTTT überhaupt ist, wenden wir uns den Voraussetzungen zu, die erfüllt sein müssen, um nello one damit zu verwenden:
- Du benötigst Zugang zur nello Public API (einfach mit nello Nutzernamen und Passwort anmelden). Du wirst dann aufgefordert deine Details (Name, Allowed response type, allowed grant type etc.) anzugeben. Fülle deine Details aus uns klicke dann auf „Submit“. Dann werden dir die public API client_id und das client_secret angezeigt.
- Zudem benötigst du eine Software zum senden von POST, GET und PUT Anfragen. Wir verwenden dafür Postman (kostenlos). Einfach einen kostenfreien Account bei Postman erstellen.
- Des Weiteren brauchst du einen IFTTT Account (gibt’s ebenfalls kostenlos) und die Verknüpfung mit Webhook
Lass uns mit der IFTTT Integration starten
Zunächst loggen wir uns bei Postman ein, denn wir brauchen einen access_token für die weiteren Anfragen an den nello one Server.
- Wählt dazu oben in der Auswahlleiste POST aus und kopiert https://auth.nello.io/oauth/token/ in das „Enter request URL“ Feld. In der POST Anfrage wollen wir einige Informationen übergeben.
- Wählt als nächstes in der Leiste unter dem Postbefehl „Body“ aus und in der Liste darunter „x-www-form-urlencoded“.
- Dann kopiert die folgenden Werte als Key und euren persönlichen dazugehörigen Value in die angezeigten Felder darunter. Die Value Werte, findet ihr in der nello API Client Anfrage. Der vordere Teil der Info wird in der Feld „Key“ kopiert, in den der hintere Teil „Value“ kommen eure persönlichen Daten. Das Bild zeigt euch wir das Ganze bei Postman aussieht.
- grant_type password
- client_id [your client_id]
- client_secret [your client_secret]
- username [your username]
- password [your password]
Wenn du nun auf „Send“ drückst, solltest du eine Rückmeldung bekommen, die access_toke, refresh_token, scope und token_type enthält. Deinen access-token kannst du gleich kopieren. Das Ganze sieht dann so aus:
Weiter geht’s mit der nello Authentifizierung
Nun haben wir das access_token für die Authentifizierung in den weiteren Schritten. Als nächstes müssen wir die ID der gewünschten Location auslesen. Das muss auch gemacht werden, wenn du nur eine nello one Location nutzt. Dazu führen wir eine GET Anfrage durch. Wähle in Postman die GET Anfrage aus und kopiere den folgenden Link https://public-api.nello.io/v1/locations/ in das „Enter request URL“ Feld. Wir benötigen nur ein Authorization-Header, daher wähle in der Leiste darunter „Headers“ aus.
- Key: Wähle hier „Authorization“ im Drop-Down aus
- der zugehörige Value ist: Bearer [your access_token], also dein access_token aus dem vorherigen Schritt
Die Antwort des Servers sollte dann so aussehen:
Jetzt haben wir mit location_id auch die richtige Location ID unseres nello one und sind mit den Vorbereitungen der Public API fertig.
Und nun zu IFTTT
Nun müssen wir nur noch ein IFTTT Applet erstellen und auf unseren Webhook zugreifen. Dazu musst du nur auf der IFTTT Website eingeloggt sein und dein IFTTT Konto für Webhooks verbinden. Hierfür auf IFTTT Webhook gehen und „Connect“ klicken. Dann klickst du auf Settings. Dort solltest du nun folgendes sehen:
Die URL, die dir angezeigt wird, enthält deinen Webhook Key. Der Webhook Key ist der Teil, der nach use/ angezeigt wird. Deinen Webhook Key kannst du dir gleich kopieren oder aufschreiben, den benötigst du bald wieder.
Nachdem das geschafft ist, brauchst du noch ein IFTTT Applet, um den Webhook mit deiner Aktion zu verknüpfen. Dazu navigierst du einfach zu Name > New Applet auf der IFTTT Website. Nun kannst du auf die Schaltfläche „This“ Klicken und deinen Webhook auswählen. (Hierfür im Suchfeld nach „Webhook“ suchen, dann wird dir Webhook auch gleich angezeigt.) Dem ganzen musst du noch einen Namen geben. Hier nennen wir unseren Webhook „bell_ring“ und klicken auf „Create trigger“. Dann kannst du mit der Schaltfläche „That“ noch die Aktion auswählen, die mit deinem nello one verknüpft werden soll.
Die Verknüpfung von nello one und IFTTT
Nachdem nun alle Vorbereitungen für die nello one API und das IFTTT Applet gemacht wurden, müssen wir diese nur noch mit einer PUT Anfrage mit gültigem Authorizathion Header an „https://public-api.nello.io/v1/locations/[your location_id]/webhook/“ zusammenführen.
Dazu wähle PUT aus und kopiere „https://public-api.nello.io/v1/locations/[your location_id]/webhook/“ mit deiner location_ID in das „Enter request URL“ Feld. Darunter wählst du „Body aus“ und darunter wiederrum „raw“ und „JSON (application/json)“.
Bitte stelle bei Headers sicher, dass du die folgenden Keys eingestellt hast:
- Key: Wähle hier „Authorization“ im Drop-Down aus –> der zugehörige Value ist: Bearer [your access_token], also dein access_token aus dem vorherigen Schritt
- Key: Wähle hier „Content Type“ aus –> der zugehörige Value ist „application/json“
Zudem müssen wir unserem nello noch beibringen, wann der Webhook ausgeführt werden soll. Um dies zu bewerkstelligen, senden wir bei unserer Anfrage ein JSON Objekt mit:
Das JSON Objekt besteht aus:
- url “https://maker.ifttt.com/trigger/[webhook_name]/with/key/[your webhook_key]”
- actions: Beschreibt die Aktionen, die den Webhook auslösen:
- „tw“: Klingeln während ein Zeitfenster aktiv ist
- „geo“: Klingeln während Homezone Unlock aktiv ist
- „deny“: Klingeln ohne Öffnung durch nello one
- „swipe“: Bei manuellem Öffnen per „Swipe To Unlock“
Hier das Konstrukt zum Kopieren – nicht vergesssen deinen webhook_name (in unserem Fall „bell_ring“) und deinen webhook_key einzusetzen:
{"url": "https://maker.ifttt.com/trigger/[webhook_name]/with/key/[your webhook_key]", "actions": [ "tw", "geo", "deny" ] }
In unserem Beispiel wird der Webhook ausgelöst, wenn geklingelt wird. Egal ob, bei einem Zeitfenster oder für Homezone Unlock geklingelt wird.
Unsere Lieblings-nello-IFTTT-Integration
Mit IFTTT sind sehr viele Dienste automatisch verknüpft. Wir stellen euch hier unsere Lieblings-Verknüpfung vor: „Abspielen eines Songs, wenn geklingelt wird“. Eine ganz nette Möglichkeit die Klingel zu ersetzen, aber derzeit leider nur für Android User möglich. Hier benötigt man zusätzlich die IFTTT App für Android. So wird immer, wenn jemand klingelt, ein Lied auf dem Smartphone abgespielt. Dazu kann man einfach als auszuführende Aktion bei IFTTT „Android“ wählen und dann ein spezielles Lied wählen. (Am besten wählt man ein Lied mit einem einzigartigen Namen aus, sonst kann es zu Problemen beim Finden des Songs kommen). Wir empfehlen My Doorbell 😁