Hardware components | ||||||
![]() |
× | 1 | ||||
![]() |
× | 1 | ||||
|
× | 1 | ||||
Software apps and online services | ||||||
![]() |
Demonstration
System Architecture

Wiring

- One pin to GND.
- Another pin to A0.
How to Create IFTTT Applet
Follow 12 steps (see red square)
1. Create Applet

2. Set Trigger

3. Search "Webhooks" and click Webhooks

4. Choose "Receive a web request"

5. set Event Name is "door_open" and click "Create trigger" button

6. Click "+that" button to create the action

7. Search "Facebook Messenger" and click

8. Choose Action "Send message". It needs to connect to Facebook for the first time.

9. Create the content of message and then click "Add ingredient" button

10. Choose "OccurredAt". This is time of door open.

11. Click "Create action" button

12. Click "Finish" button

Now Applet is created.
Get Webhooks Key
Go to this link https://ifttt.com/maker_webhooks
Click "Documentation" to see the Webhooks Key.

Copy the Webhook Key and put it in Arduino code
Arduino Code
Code:
// Tutorial for the example is available here: // https://forum.phpoc.com/articles/tutorials/1241-arduino-ssl-web-client #include <Phpoc.h> String IFTTT_WEBHOOKS_KEY = "xxxxxxxxxxxxxxxxxxxxxx"; // change your webhooks key here char server_name[] = "maker.ifttt.com"; PhpocClient client; void sendNotification() { // connect to web server on port 443: if(client.connectSSL(server_name, 443)) { // if connected: Serial.println("Connected to server"); // make a HTTP request: client.println("GET /trigger/door_open/with/key/" + IFTTT_WEBHOOKS_KEY + " HTTP/1.1"); client.println("Host: maker.ifttt.com"); client.println("Connection: close"); client.println(); } while(client.connected()) { if(client.available()) { char c = client.read(); Serial.write(c); } } Serial.println(); Serial.println("disconnecting from server."); client.stop(); } void setup() { Serial.begin(9600); // initialize PHPoC [WiFi] Shield: Phpoc.begin(PF_LOG_SPI | PF_LOG_NET); pinMode(A0, INPUT_PULLUP); } int previous_status = 1; void loop() { int current_status = digitalRead(A0); if(previous_status == 0 && current_status == 1) { // if door is opened... Serial.println("door is opened"); sendNotification(); delay(100); } else if(previous_status == 1 && current_status == 0) { // if door is closed... Serial.println("door is closed"); } previous_status = current_status; }