IFTTT (IF This Then That)

Internet of Things (IoT) is hot. Met handige services ben je in staat om de elektronische omgeving om je heen interactief te besturen en het leven makkelijker en leuker te maken. Een voorbeeld is dat als iemand op de deurbel drukt, de verlichting in de gang inschakelt. Of als er thuis een beweging waargenomen wordt, ontvang je een bericht op je smartphone met een foto van de ruimte.

In deze tutorial laat ik een bewegingsmelder een beweging detecteren en vervolgens, via IFTTT, een melding geven op de smartphone. Je zult gedurende de tutorial ontdekken dat er honderden services zijn die je kunt gebruiken als reactie op een event.

Daar gaan we!

Aansluiten van de bewegingsmelder (PIR)

Sluit de bewegingsmelder als volgt aan. Er zijn verschillende modellen verkrijgbaar, maar ze werken allemaal volgens hetzelfde principe en meestal op 5V. In dit voorbeeld wordt de HC-SR501 gebruikt. We gebruiken GPIO17 (pin 11) om de output van de sensor aan te sluiten.

IFTTT instellen

Ga naar ifttt.com

Maak een account bij ifttt.com aan, mocht je deze nog niet hebben. Het is gratis, je hebt er geen creditkaart voor nodig.

 Als je ingelogd bent, dan bevind je je in Explore, zo niet klik je bovenin de balk op Explore.

 Klik op Explore

Klik op Create

Klik op If This

Om beweging te detecteren geven we hier in: Webhooks


Wat zijn Webhooks?

Om IFTTT met Raspberry Pi te integreren, hebben we Webhooks nodig. Webhooks is een service die gebeurtenissen activeert via HTTP-verzoeken. HTTP-verzoeken, ook wel webverzoeken genoemd, zijn berichten die een client naar een server stuurt.

Er zijn twee soorten webverzoeken: HTTP GET en HTTP POST.

HTTP GET is een webverzoek dat gegevens van een webbrowser ophaalt. Het verandert niets aan de server. Het haalt er gewoon de gegevens uit.

Aan de andere kant is HTTP POST een webverzoek dat gegevens naar de server verzendt. Het voegt er iets nieuws aan toe.

Een typisch voorbeeld van een GET-verzoek is het browsen op een website. U haalt de gegevens op die nodig zijn om de webpagina op uw pc weer te geven. Aan de andere kant worden POST-verzoeken gebruikt om tekst in een webpagina te typen, zoals een gebruikersnaam en wachtwoord.

Een algemeen webhooksysteem werkt als volgt:


Zoals gezegd geef je hier in: Webhooks

Klik op het blauwe vlak Webhooks

Klik op het blauwe vlak Receive a web request

Geef bij Event name de naam van het event in. Dit kan iedere naam zijn, maar in dit geval geef je hier in: motion_detected. Later hebben we deze naam weer nodig.

Klik op: Create trigger

De ‘IF’ is vastgesteld. Nu klik je op ‘Then That

Je kunt hier van alles selecteren zoals het versturen van een bericht, een lamp inschakelen d.m.v. een smartsteker, noem maar op. In dit geval willen we een melding op de smartphone ontvangen. Scrol maar eens door het scherm heen, je zult zien dat er heel veel services beschikbaar zijn.

Geef in het veld Search services: notifications

Klik op het blauwe vlak Notifications.

We kiezen voor: Send a notification from the IFTTT app.


Alternatief – Instellen Smart Life stekker

(zie video op 9:11) https://www.youtube.com/watch?v=72UjPhD9whM&ab_channel=CarolineDunn

Een smartsteker die met de Smart Life app aangestuurd wordt

Je zou ook kunnen kiezen voor: smart life omdat je hiermee apparaten kunt inschakelen met een smartsteker die je hiervoor nodig hebt. Veel smartstekers werken i.c.m. de app Smart Life. Maak je hier voor de eerste keer gebruik van, dan heb je de toegangsgegevens nodig van de app.


Klik op Create action

De ‘IF‘ en de ‘Then‘ zijn ingesteld. Klik op Continue

Klik op Finish

Ga terug naar de homepagina van IFTTT. Klik daarvoor links bovenin op IFTTT

Zoek op ‘webhooks

Klik op het blauwe vlak Webhooks

Klik op Documentation

Vervolgens verschijnt de pagina met de unieke sleutel.

Geef op de plek van {event} de naam van het event. In dit geval ‘motion_detected

Installatie op de Raspberry Pi

Open nu de terminal op Raspberry Pi.

Doe voor de zekerheid een update en een upgrade zodat de Pi helemaal bijgewerkt is.

sudo apt-get update

sudo apt-get upgrade

Maak vervolgens een directorie aan met de naam ifttt en ga erin staan.

mkdir ifttt

cd ifttt

Of download het bestand door de volgende opdracht in te geven:

wget https://awsiotbutton.s3.amazonaws.com/iftttpir.py

Controleer of het bestand in de directorie staat met

ls -l

Open het bestand met

sudo nano iftttpir.py

Ga terug naar jouw IFTTT-webpagina en kopieer de sleutel. Het ziet er ongeveer uit als:

bFqwOkYc_b5mKfYZHtF38a

Plak de IFTTT-sleutel in regel 46 van het script. Bijvoorbeeld

 r = requests.post(‘https://maker.ifttt.com/trigger/motion_detected/with/key/ bFqwOkYc_b5mKfYZHtF38a‘, params={“value1″:”none”,” waarde2″:”geen”,”waarde3″:”geen”})

Sla het python script op met [Ctrl]-o en sluit af met [Ctrl]-x

Laten we nu de code uitvoeren met:

sudo python3 iftttpir.py

Beweeg nu je hand voor je bewegingssensor en kijk of het werkt. Lukt het niet, keer dan op je stappen terug.

Na detectie van de sensor wordt een bericht door het script naar IFTTT verstuurd die vervolgens de melding op de smartphone via de IFTTT app weergeeft.


Script uitvoeren bij opstarten van de Raspberry Pi

Deze stap is optioneel als u wilt dat dit python-script tijdens het opstarten wordt uitgevoerd.

Open de terminal en ga naar:

sudo nano /home/pi/.bashrc

Ga met de pijl omlaag naar de onderkant van het bestand.

Voer het volgende in onderaan de .bashrc

sudo python3 /home/pi/ifttt/iftttpir.py

Gebruik [Ctrl]-x om af te sluiten

En ‘Y’ om op te slaan

Start je Raspberry Pi opnieuw op.


Have A Nice Day!

Geef als eerste een reactie

Laat een reactie achter

Het e-mailadres wordt niet gepubliceerd.


*