* Updated Configuration Variables sections Squashed commit of the following: commit a95d114183553ad3850e6ca2d688d622388ee666 Author: Jorim Tielemans <tielemans.jorim@gmail.com> Date: Mon Jul 30 20:08:02 2018 +0200 Clean some things up commit db63a37dc97ad7735b78b7078b09343a9e9d1981 Author: Jorim Tielemans <tielemans.jorim@gmail.com> Date: Mon Jul 30 18:28:20 2018 +0200 Revert "The rest for this PR" This reverts commitbb1b2f9a2f. commitdf90512482Merge:deef4fd4d4e4ed00d287Author: Jorim Tielemans <tielemans.jorim@gmail.com> Date: Mon Jul 30 17:05:27 2018 +0200 Merge remote-tracking branch 'upstream/current' into patch-1 commitdeef4fd4d4Author: Jorim Tielemans <tielemans.jorim@gmail.com> Date: Sun Jul 29 12:40:01 2018 +0200 Fix Liquid error commit74369fbbc8Author: Jorim Tielemans <tielemans.jorim@gmail.com> Date: Sun Jul 29 12:37:03 2018 +0200 Update Configuration Variables sections commit6e50eaa013Author: Jorim Tielemans <tielemans.jorim@gmail.com> Date: Sun Jul 29 11:52:51 2018 +0200 Fix empty keys commit7e4852e473Author: Jorim Tielemans <tielemans.jorim@gmail.com> Date: Sun Jul 29 11:41:46 2018 +0200 Update binary_sensor.netatmo.markdown commite1d83df83eAuthor: Jorim Tielemans <tielemans.jorim@gmail.com> Date: Sun Jul 29 11:28:39 2018 +0200 More updated Configuration Variables sections commit66cbe39181Author: Jorim Tielemans <tielemans.jorim@gmail.com> Date: Sat Jul 28 22:00:25 2018 +0200 Fix Liquid Exception sensor.speedtest commitbb1b2f9a2fAuthor: Jorim Tielemans <tielemans.jorim@gmail.com> Date: Sat Jul 28 21:54:34 2018 +0200 The rest for this PR - Update components with new Configuration Variables section to have YAML block syntax - Fix wrong capitalised booleans commit5e67726eb7Author: Jorim Tielemans <tielemans.jorim@gmail.com> Date: Sat Jul 28 20:43:52 2018 +0200 Try multiline string in Cast Trying out a multiline string in a {% configuration %}-block. commitb8d34e9a8eAuthor: Jorim Tielemans <tielemans.jorim@gmail.com> Date: Sat Jul 28 20:41:39 2018 +0200 Lint fixes etc. All default True/False capital letters have been fixed. Tried to reduce lines to 80 characters or less where possible. commit88228b293dAuthor: Jorim Tielemans <tielemans.jorim@gmail.com> Date: Sat Jul 28 16:32:46 2018 +0200 Update notify.webostv.markdown commit7204c1d637Author: Jorim Tielemans <tielemans.jorim@gmail.com> Date: Sat Jul 28 16:15:18 2018 +0200 Fix capital letter commit6e1b3db87bAuthor: Jorim Tielemans <tielemans.jorim@gmail.com> Date: Sat Jul 28 16:14:05 2018 +0200 Update media_player.webostv.markdown commit89ee23565aAuthor: Jorim Tielemans <tielemans.jorim@gmail.com> Date: Sat Jul 28 16:08:59 2018 +0200 Update http.markdown commit418f5cb7cdAuthor: Jorim Tielemans <tielemans.jorim@gmail.com> Date: Sat Jul 28 16:02:19 2018 +0200 Fix capital letter commitd5264c3c4fAuthor: Jorim Tielemans <tielemans.jorim@gmail.com> Date: Sat Jul 28 16:01:39 2018 +0200 Fix capital letter commite4cd51271dAuthor: Jorim Tielemans <tielemans.jorim@gmail.com> Date: Sat Jul 28 16:01:08 2018 +0200 Update sensor.iota.markdown commitc18b25fddcAuthor: Jorim Tielemans <tielemans.jorim@gmail.com> Date: Sat Jul 28 16:01:01 2018 +0200 Fix capital letter commit79a78f284aAuthor: Jorim Tielemans <tielemans.jorim@gmail.com> Date: Sat Jul 28 15:56:22 2018 +0200 Update Configuration Variables section commit0db5228080Author: Jorim Tielemans <tielemans.jorim@gmail.com> Date: Sat Jul 28 15:54:47 2018 +0200 Update Configuration Variables section commitd5d26f1611Author: Jorim Tielemans <tielemans.jorim@gmail.com> Date: Sat Jul 28 15:54:14 2018 +0200 Update Configuration Variables section commitab3f04511eAuthor: Jorim Tielemans <tielemans.jorim@gmail.com> Date: Sat Jul 28 15:52:50 2018 +0200 Update Configuration Variables section commit37b2d1831dAuthor: Jorim Tielemans <tielemans.jorim@gmail.com> Date: Sat Jul 28 15:51:29 2018 +0200 Update Configuration Variables section commit39b3ecd707Author: Jorim Tielemans <tielemans.jorim@gmail.com> Date: Sat Jul 28 15:50:53 2018 +0200 Update Configuration Variables section commit823ea87d3aAuthor: Jorim Tielemans <tielemans.jorim@gmail.com> Date: Sat Jul 28 15:50:11 2018 +0200 Update Configuration Variables section commit6560a2bac0Author: Jorim Tielemans <tielemans.jorim@gmail.com> Date: Sat Jul 28 15:49:53 2018 +0200 Update Configuration Variables section commitcc97df289bAuthor: Jorim Tielemans <tielemans.jorim@gmail.com> Date: Sat Jul 28 15:47:23 2018 +0200 Update Configuration Variables section commitfdc881eb7aAuthor: Jorim Tielemans <tielemans.jorim@gmail.com> Date: Sat Jul 28 15:46:55 2018 +0200 Update Configuration Variables section commit81e292c3e9Author: Jorim Tielemans <tielemans.jorim@gmail.com> Date: Sat Jul 28 15:46:16 2018 +0200 Update Configuration Variables section commit05d3481d11Author: Jorim Tielemans <tielemans.jorim@gmail.com> Date: Sat Jul 28 15:45:25 2018 +0200 Update Configuration Variables section commitef34f8c2f4Author: Jorim Tielemans <tielemans.jorim@gmail.com> Date: Sat Jul 28 15:41:08 2018 +0200 Update Configuration Variables section commit49f69a36e4Author: Jorim Tielemans <tielemans.jorim@gmail.com> Date: Sat Jul 28 15:16:27 2018 +0200 Update Configuration Variables section commit14732eeee0Author: Jorim Tielemans <tielemans.jorim@gmail.com> Date: Sat Jul 28 15:14:58 2018 +0200 Update Configuration Variables section commite0f8578628Author: Jorim Tielemans <tielemans.jorim@gmail.com> Date: Sat Jul 28 15:11:56 2018 +0200 Update media_player.samsungtv.markdown commit8be3c95f8eAuthor: Jorim Tielemans <tielemans.jorim@gmail.com> Date: Sat Jul 28 15:10:45 2018 +0200 Update Configuration Variables section commit53b6672521Author: Jorim Tielemans <tielemans.jorim@gmail.com> Date: Sat Jul 28 15:10:40 2018 +0200 Update media_player.webostv.markdown commit421e90392aAuthor: Jorim Tielemans <tielemans.jorim@gmail.com> Date: Sat Jul 28 15:03:33 2018 +0200 Update Configuration Variables section commit7f142fd359Author: Jorim Tielemans <tielemans.jorim@gmail.com> Date: Sat Jul 28 14:59:54 2018 +0200 webOS brand fix + filename clarification commit1f1051bcbcAuthor: Jorim Tielemans <tielemans.jorim@gmail.com> Date: Sat Jul 28 14:52:29 2018 +0200 Update sensor.yr.markdown commit8be62f4a62Author: Jorim Tielemans <tielemans.jorim@gmail.com> Date: Sat Jul 28 14:52:05 2018 +0200 Update Configuration Variables section commit69c615b295Author: Jorim Tielemans <tielemans.jorim@gmail.com> Date: Sat Jul 28 14:50:57 2018 +0200 Update notify.webostv.markdown commit4b1175e565Author: Jorim Tielemans <tielemans.jorim@gmail.com> Date: Sat Jul 28 14:50:30 2018 +0200 Update notify.html5.markdown commit4ba06dd29dAuthor: Jorim Tielemans <tielemans.jorim@gmail.com> Date: Sat Jul 28 14:49:59 2018 +0200 Update image_processing.openalpr_local.markdown commitec919d5781Author: Jorim Tielemans <tielemans.jorim@gmail.com> Date: Sat Jul 28 14:49:18 2018 +0200 Update image_processing.microsoft_face_detect.markdown commitda657b579fAuthor: Jorim Tielemans <tielemans.jorim@gmail.com> Date: Sat Jul 28 14:42:46 2018 +0200 Update Configuration Variables section commit3b066ba22bAuthor: Jorim Tielemans <tielemans.jorim@gmail.com> Date: Sat Jul 28 14:40:33 2018 +0200 Update Configuration Variables section commit360c5422d7Author: Jorim Tielemans <tielemans.jorim@gmail.com> Date: Sat Jul 28 14:38:54 2018 +0200 Update Configuration Variables section commit7965ff8c71Author: Jorim Tielemans <tielemans.jorim@gmail.com> Date: Sat Jul 28 13:51:12 2018 +0200 Update Configuration Variables section commit48d20dd4faAuthor: Jorim Tielemans <tielemans.jorim@gmail.com> Date: Sat Jul 28 13:48:33 2018 +0200 Update Configuration Variables section commit4c6efe7218Author: Jorim Tielemans <tielemans.jorim@gmail.com> Date: Sat Jul 28 13:40:33 2018 +0200 Update Configuration Variables section commit8c45d8309eAuthor: Jorim Tielemans <tielemans.jorim@gmail.com> Date: Sat Jul 28 13:35:19 2018 +0200 Update Configuration Variables section commitbbfa64af6fAuthor: Jorim Tielemans <tielemans.jorim@gmail.com> Date: Sat Jul 28 13:33:14 2018 +0200 Newline commitf0577bb456Author: Jorim Tielemans <tielemans.jorim@gmail.com> Date: Sat Jul 28 13:32:54 2018 +0200 Fix typo commit65f73ced0cAuthor: Jorim Tielemans <tielemans.jorim@gmail.com> Date: Sat Jul 28 13:19:23 2018 +0200 Update notify.webostv.markdown commit1a11c971bbAuthor: Jorim Tielemans <tielemans.jorim@gmail.com> Date: Sat Jul 28 13:18:44 2018 +0200 Update notify.html5.markdown commit4653233545Author: Jorim Tielemans <tielemans.jorim@gmail.com> Date: Sat Jul 28 13:18:04 2018 +0200 Update image_processing.openalpr_local.markdown commitce9ca3453bAuthor: Jorim Tielemans <tielemans.jorim@gmail.com> Date: Sat Jul 28 13:15:05 2018 +0200 Update Configuration Variables section commit6ae8a40889Author: Jorim Tielemans <tielemans.jorim@gmail.com> Date: Thu Jul 26 22:58:55 2018 +0200 Update Configuration Variables section commitc4bed22233Author: Jorim Tielemans <tielemans.jorim@gmail.com> Date: Thu Jul 26 22:56:35 2018 +0200 Update Configuration Variables section commit9fe09afd30Author: Jorim Tielemans <tielemans.jorim@gmail.com> Date: Wed Jul 25 23:46:23 2018 +0200 Update Configuration Variables section commit8efc72f10dAuthor: Jorim Tielemans <tielemans.jorim@gmail.com> Date: Wed Jul 25 23:44:08 2018 +0200 Update image_processing.openalpr_cloud.markdown commit52046e5064Author: Jorim Tielemans <tielemans.jorim@gmail.com> Date: Wed Jul 25 23:43:52 2018 +0200 Update Configuration Variables section commitc7a9296ae3Author: Jorim Tielemans <tielemans.jorim@gmail.com> Date: Wed Jul 25 23:27:08 2018 +0200 Update image_processing.microsoft_face_detect.markdown commit3b37dc0e11Author: Jorim Tielemans <tielemans.jorim@gmail.com> Date: Wed Jul 25 23:20:26 2018 +0200 Update Configuration Variables section commit870cd41fefAuthor: Jorim Tielemans <tielemans.jorim@gmail.com> Date: Wed Jul 25 23:18:38 2018 +0200 Update image_processing.microsoft_face_identify.markdown commit0f76212b24Author: Jorim Tielemans <tielemans.jorim@gmail.com> Date: Wed Jul 25 23:17:09 2018 +0200 Update Configuration Variables section commit73513b9e4eAuthor: Jorim Tielemans <tielemans.jorim@gmail.com> Date: Wed Jul 25 23:13:26 2018 +0200 Update image_processing.microsoft_face_detect.markdown commitc171a080b3Author: Jorim Tielemans <tielemans.jorim@gmail.com> Date: Wed Jul 25 23:01:06 2018 +0200 Update image_processing.microsoft_face_detect.markdown commit294a37f584Author: Jorim Tielemans <tielemans.jorim@gmail.com> Date: Wed Jul 25 21:46:14 2018 +0200 Update image_processing.microsoft_face_detect.markdown commit9f4c3fad9eAuthor: Jorim Tielemans <tielemans.jorim@gmail.com> Date: Wed Jul 25 21:21:17 2018 +0200 Update image_processing.microsoft_face_detect.markdown commit11579aa61bAuthor: Jorim Tielemans <tielemans.jorim@gmail.com> Date: Wed Jul 25 21:13:30 2018 +0200 Update camera.mjpeg.markdown commite93f5db4b6Author: Jorim Tielemans <tielemans.jorim@gmail.com> Date: Wed Jul 25 19:34:36 2018 +0200 Update Configuration Variables section commit383b9ace66Author: Jorim Tielemans <tielemans.jorim@gmail.com> Date: Wed Jul 25 17:49:38 2018 +0200 Remove leftover line commit7e2e72f78fAuthor: Jorim Tielemans <tielemans.jorim@gmail.com> Date: Wed Jul 25 17:46:55 2018 +0200 Update Configuration Variables section * Remove encapsulation Double quotes were visible in the frontend. * Remove empty default value * 🚑 Correcting types * ✏️ Removes double italic
5.6 KiB
layout, title, description, date, sidebar, comments, sharing, footer, logo, ha_category, ha_release, ha_iot_class
| layout | title | description | date | sidebar | comments | sharing | footer | logo | ha_category | ha_release | ha_iot_class |
|---|---|---|---|---|---|---|---|---|---|---|---|
| page | Command line Switch | Instructions on how to have switches call command line commands. | 2015-06-10 22:41 | true | false | true | true | command_line.png | Switch | pre 0.7 | Local Polling |
The command_line switch platform issues specific commands when it is turned on
and off. This might very well become our most powerful platform as it allows
anyone to integrate any type of switch into Home Assistant that can be
controlled from the command line, including calling other scripts!
To enable it, add the following lines to your configuration.yaml:
# Example configuration.yaml entry
switch:
- platform: command_line
switches:
kitchen_light:
command_on: switch_command on kitchen
command_off: switch_command off kitchen
{% configuration %}
switches:
description: The array that contains all command switches.
required: true
type: map
keys:
identifier:
description: Name of the command switch as slug. Multiple entries are possible.
required: true
type: map
keys:
command_on:
description: The action to take for on.
required: true
type: string
command_off:
description: The action to take for off.
required: true
type: string
command_state:
description: "If given, this command will be run. Returning a result code 0 will indicate that the switch is on."
required: false
type: string
value_template:
description: "If specified, command_state will ignore the result code of the command but the template evaluating to true will indicate the switch is on."
required: false
type: string
friendly_name:
description: The name used to display the switch in the frontend.
required: false
type: string
{% endconfiguration %}
A note on friendly_name:
When set, the friendly_name had been previously used for API calls and backend
configuration instead of the object_id ("identifier"), but
this behavior is changing
to make the friendly_name for display purposes only. This allows users to set
an identifier that emphasizes uniqueness and predictability for API and config
purposes but have a prettier friendly_name still show up in the UI. As an
additional benefit, if a user wanted to change the friendly_name / display
name (e.g., from "Kitchen Lightswitch" to "Kitchen Switch" or
"Living Room Light", or remove the friendly_name altogether), he or she could
do so without needing to change existing automations or API calls.
See aREST device below for an example.
{% linkable_title Examples %}
In this section you find some real-life examples of how to use this switch.
{% linkable_title aREST device %}
The example below is doing the same as the
aREST switch.
The command line tool curl is used to toggle a pin
which is controllable through REST.
# Example configuration.yaml entry
switch:
platform: command_line
switches:
arest_pin_four:
command_on: "/usr/bin/curl -X GET http://192.168.1.10/digital/4/1"
command_off: "/usr/bin/curl -X GET http://192.168.1.10/digital/4/0"
command_state: "/usr/bin/curl -X GET http://192.168.1.10/digital/4"
value_template: '{% raw %}{{ value == "1" }}{% endraw %}'
friendly_name: Kitchen Lightswitch
Given this example, in the UI one would see the friendly_name of
"Kitchen Light". However, the identifier is arest_pin_four, making the
entity_id switch.arest_pin_four, which is what one would use in
automation or in API calls.
{% linkable_title Shutdown your local host %}
This switch will shutdown your system that is hosting Home Assistant.
This switch will shutdown your host immediately, there will be no confirmation.
# Example configuration.yaml entry
switch:
platform: command_line
switches:
home_assistant_system_shutdown:
command_off: "/usr/sbin/poweroff"
{% linkable_title Control your VLC player %}
This switch will control a local VLC media player (Source).
# Example configuration.yaml entry
switch:
platform: command_line
switches:
vlc:
command_on: "cvlc 1.mp3 vlc://quit &"
command_off: "pkill vlc"
{% linkable_title Control Foscam Motion Sensor %}
This switch will control the motion sensor of Foscam Webcams which Support CGI Commands (Source). This switch supports statecmd, which checks the current state of motion detection.
# Example configuration.yaml entry
switch:
platform: command_line
switches:
foscam_motion:
command_on: 'curl -k "https://ipaddress:443/cgi-bin/CGIProxy.fcgi?cmd=setMotionDetectConfig&isEnable=1&usr=admin&pwd=password"'
command_off: 'curl -k "https://ipaddress:443/cgi-bin/CGIProxy.fcgi?cmd=setMotionDetectConfig&isEnable=0&usr=admin&pwd=password"'
command_state: 'curl -k --silent "https://ipaddress:443/cgi-bin/CGIProxy.fcgi?cmd=getMotionDetectConfig&usr=admin&pwd=password" | grep -oP "(?<=isEnable>).*?(?=</isEnable>)"'
value_template: {% raw %}'{{ value == "1" }}'{% endraw %}
- Replace admin and password with an "Admin" privileged Foscam user
- Replace ipaddress with the local IP address of your Foscam