home-assistant.io/source/_components/alarm_control_panel.ifttt.markdown
Franck Nijhof c464056402
Making our website faster, cleaner and prettier (#9853)
* 🔥 Removes octopress.js

* 🔥 Removes use of root_url var

* 🔥 Removes Octopress generator reference from feed

* 🔥 Removes delicious support

* 🔥 Removes support for Pinboard

* 🔥 Removes support for Disqus

* 🔥 Removes support for Google Plus

* ↩️ Migrate custom after_footer to default template

* ↩️ Migrate custom footer to default template

* ↩️ Migrate custom header to default template

* 🔥 Removes unused template files

* 🚀 Places time to read directly in post template

* 🚀 Removes unneeded capture from archive_post.html template

* 🔥 🚀 Removes unused, but heaving sorting call in component page

* 🚀 Merged javascripts into a single file

* 🔥 Removes more uses of root_url

* 🚀 Removal of unneeded captures from head

* 🔥 🚀 Removal of expensive liquid HTML compressor

* 🔥 Removes unneeded templates

* 🚀 Replaces kramdown with GitHub's CommonMark 🚀

* 💄 Adds Prism code syntax highlighting

*  Adds support for redirect in Netlify

* ↩️ 🔥 Let Netlify handle all developer doc redirects

* ✏️ Fixes typo in redirects file: Netify -> Netlify

* 🔥 Removes unused .themes folder

* 🔥 Removes unused aside.html template

* 🔥 Removes Disqus config leftover

* 🔥 Removes rouge highlighter config

* 🔥 Removes Octopress 🎉

* 💄 Adjust code block font size and adds soft wraps

* 💄 Adds styling for inline code blocks

* 💄 Improve styling of note/warning/info boxes + div support

* 🔨 Rewrites all note/warning/info boxes
2019-07-15 22:17:54 +02:00

4.6 KiB

title, description, logo, ha_category, ha_release
title description logo ha_category ha_release
IFTTT Alarm Control Panel Instructions on how to integrate IFTTT-controlled security systems into Home Assistant. ifttt.png
Alarm
0.66

The ifttt platform allows you to integrate security systems that have no open API but can be controlled through IFTTT.

This platform depends on the IFTTT Home Assistant integration. See the integrations documentation to set it up.

It is important to note that this platform fully relies on IFTTT to receive updates when the security system's state changes. Therefore, this platform shows an assumed state.

Configuration

To enable this, add the following lines to your configuration.yaml file:

# Example configuration.yaml entry
ifttt:
  key: YOUR_WEBHOOK_KEY

alarm_control_panel:
  - platform: ifttt
    name: YOUR_ALARM_NAME
    code: YOUR_ALARM_CODE
    event_arm_away: YOUR_ARM_AWAY_EVENT
    event_arm_home: YOUR_ARM_HOME_EVENT
    event_arm_night: YOUR_ARM_NIGHT_EVENT
    event_disarm: YOUR_DISARM_EVENT

{% configuration %} name: description: The name of your Home Assistant alarm control panel. required: false type: string code: description: The code for the alarm control panel. required: false type: string event_arm_away: description: IFTTT webhook event to call when the state is set to armed away. required: false type: string default: alarm_arm_away event_arm_home: description: IFTTT webhook event to call when the state is set to armed home. required: false type: string default: alarm_arm_home event_arm_night: description: IFTTT webhook event to call when the state is set to armed night. required: false type: string default: alarm_arm_night event_disarm: description: IFTTT webhook event to call when the state is set to disarmed. required: false type: string default: alarm_disarm optimistic: description: Specify if the state will be updated by an ifttt_push_alarm_state call (false) or can be set immediately (true). required: false type: boolean default: false {% endconfiguration %}

It is strongly discouraged to use this platform when you don't use encryption; otherwise, your API password will be send unprotected through the IFTTT Webhooks. It is advised to setup encryption using Let's Encrypt.

Required IFTTT applets

Next, you will need to set up the required IFTTT applets as listed below.

This platform supports the services alarm_disarm, alarm_arm_away, alarm_arm_home and alarm_arm_night. For each of these services, an IFTTT webhook will be triggered.

For this system to operate correctly, the following IFTTT applets have to be setup. Obviously, if your alarm device does not support some states, no applets have to be provided for those.

  • IF Webhook event YOUR_DISARM_EVENT is called, THEN disarm the alarm system.
  • IF Webhook event YOUR_ARM_HOME_EVENT is called, THEN set the alarm system to armed home.
  • IF Webhook event YOUR_ARM_NIGHT_EVENT is called, THEN set the alarm system to armed away.
  • IF Webhook event YOUR_DISARM_EVENT is called, THEN set the alarm system to armed night.
  • IF the alarm system was disarmed, THEN perform a Webhook POST web request to url https://HASS_URL/api/services/alarm_control_panel/ifttt_push_alarm_state?api_password=API_PASSWORD with content type application/json and body {"entity_id": "alarm_control_panel.DEVICE_NAME", "state": "disarmed"}.
  • IF the alarm system state changed to armed home, THEN perform a Webhook POST web request to url https://HASS_URL/api/services/alarm_control_panel/ifttt_push_alarm_state?api_password=API_PASSWORD with content type application/json and body {"entity_id": "alarm_control_panel.DEVICE_NAME", "state": "armed_home"}.
  • IF the alarm system state changed to armed away, THEN perform a Webhook POST web request to url https://HASS_URL/api/services/alarm_control_panel/ifttt_push_alarm_state?api_password=API_PASSWORD with content type application/json and body {"entity_id": "alarm_control_panel.DEVICE_NAME", "state": "armed_away"}.
  • IF the alarm system state changed to armed night, THEN perform a Webhook POST web request to url https://HASS_URL/api/services/alarm_control_panel/ifttt_push_alarm_state?api_password=API_PASSWORD with content type application/json and body {"entity_id": "alarm_control_panel.DEVICE_NAME", "state": "armed_night"}.