From d7fcb153de9f791bfbfa83db9ee459498120a94b Mon Sep 17 00:00:00 2001 From: Aaron Bach Date: Thu, 3 May 2018 14:56:01 -0600 Subject: [PATCH] Adds docs for RainMachine component/hub (#5251) * Adds docs for RainMachine component/hub * Removing references to remote API * Collaborator-requested changes * Adding new info (per home-assistant/home-assistant#14225) * Collaborator-requested changes * Collaborator-requested changes * Revert "Collaborator-requested changes" This reverts commit 34f75ffab911dcd9a9ae3163645c7c6e9dbf54ee. * I think I got it this time... * Collaborator-requested changes * Collaborator-requested changes * Small tweak --- source/_components/rainmachine.markdown | 71 +++++++++++++++ .../_components/switch.rainmachine.markdown | 88 +++---------------- 2 files changed, 85 insertions(+), 74 deletions(-) create mode 100644 source/_components/rainmachine.markdown diff --git a/source/_components/rainmachine.markdown b/source/_components/rainmachine.markdown new file mode 100644 index 00000000000..e416c7f6261 --- /dev/null +++ b/source/_components/rainmachine.markdown @@ -0,0 +1,71 @@ +--- +layout: page +title: "RainMachine" +description: "Instructions on how to integrate RainMachine units within Home Assistant." +date: 2018-04-25 20:32 +sidebar: true +comments: false +sharing: true +footer: true +logo: rainmachine.png +ha_category: Hub +ha_release: 0.69 +ha_iot_class: "Cloud Polling" +--- + +The `rainmachine` component is the main component to integrate all platforms +related to [RainMachine smart Wi-Fi sprinkler controllers](http://www.rainmachine.com/). + +## {% linkable_title Base Configuration %} + +To connect to your RainMachine device, add the following to your +`configuration.yaml` file: + +```yaml +rainmachine: + ip_address: 192.168.1.100 + password: YOUR_PASSWORD +``` + +To configure switch-related functionality, add configuration options beneath +a `switches` key within the `rainmachine` sections of `configuration.yaml` +as below: + +```yaml +rainmachine: + ip_address: 192.168.1.100 + password: YOUR_PASSWORD + switches: + # switch configuration options... +``` + +{% configuration %} +ip_address: + description: the IP address or hostname of your RainMachine unit + required: optional + type: string +password: + description: your RainMachine password. + required: true + type: string +port: + description: the TCP port used by your unit for the REST API + required: false + type: int + default: 8080 +ssl: + description: whether communication with the local device should occur over HTTPS + required: false + type: boolean + default: true +switches: + description: switch-related configuration options + required: false + type: map + keys: + zone_run_time: + description: the default number of seconds that a zone should run when turned on + required: false + type: int + default: 600 +{% endconfiguration %} diff --git a/source/_components/switch.rainmachine.markdown b/source/_components/switch.rainmachine.markdown index 26b73e0aa8f..f37ce0fbd55 100644 --- a/source/_components/switch.rainmachine.markdown +++ b/source/_components/switch.rainmachine.markdown @@ -13,84 +13,24 @@ ha_iot_class: "Cloud Polling" ha_release: 0.51 --- -The `rainmachine` switch platform allows you to control programs and zones within a [RainMachine smart Wi-Fi sprinkler controller](http://www.rainmachine.com/). - -## {% linkable_title Configuring the Platform %} - -The platform allows for either local (i.e., directly across the LAN) or remote (i.e., through RainMachine's cloud API) access; the route you choose will dictate what your configuration should look like. - -For local access, specify the IP address/hostname of your RainMachine unit, your RainMachine password, and optionally, the device's HTTP port: - -```yaml -switch: - platform: rainmachine - ip_address: 192.168.1.100 - password: YOUR_PASSWORD -``` - -For remote access, specify your RainMachine username/email and password: - -```yaml -switch: - platform: rainmachine - email: user@host.com - password: YOUR_PASSWORD -``` - -{% configuration %} -password: - description: Your RainMachine password. - required: true - type: string -email: - description: "Your RainMachine username/email. Cannot be used with the `ip_address` parameter." - required: false - type: string -ip_address: - description: "The IP address of your RainMachine unit; cannot be used with the `email` parameter." - required: optional - type: string -port: - description: The TCP port used by your unit for the REST API. - required: false - type: int - default: 8080 -ssl: - description: Whether communication with the local device should occur over HTTPS. - required: false - type: boolean - default: true -zone_run_time: - description: The number of seconds that a zone should run when turned on. - required: false - type: int - default: 600 -{% endconfiguration %} +The `rainmachine` switch platform allows you to control programs and zones +within a [RainMachine smart Wi-Fi sprinkler controller](http://www.rainmachine.com/). +

+You must have the [RainMachine component](https://www.home-assistant.io/components/rainmachine/) +configured to use this switch. After configuring that component, switches will +automatically appear. +

## {% linkable_title Controlling Your Device %} -After Home Assistant loads, you will see new switches for every enabled program and zone. These work as expected: +After Home Assistant loads, new switches will be added for every enabled +program and zone. These work as expected: - Program On/Off: starts/stops a program -- Zone On/Off: starts/stops a zone (using the `zone_run_time` parameter to determine how long to run for) +- Zone On/Off: starts/stops a zone (using the `zone_run_time` parameter to +determine how long to run for) -Programs and zones are linked. If a program is running its final zone, you will see both the program and zone switches turned on; turning either one off will turn the other one off (just like in the web app). - -## {% linkable_title Weblink %} - -If you would like to see and control more detailed information, create an [iFrame](/components/panel_iframe/) that renders the RainMachine web app: - -```yaml -panel_iframe: - rainmachine: - title: RainMachine - url: "https://my.rainmachine.com/s//ui/" - icon: mdi:water-pump -``` - -You can find `` by logging into [https://my.rainmachine.com](https://my.rainmachine.com ) and taking note of the URL. - -## {% linkable_title For Awareness %} - -The remote RainMachine API currently has two broken operations (i.e., they return error codes): starting a program and stopping a program. Please note that starting/stopping programs with the remote API is disabled until RainMachine can fix the issue. +Programs and zones are linked. While a program is running, you will see both +the program and zone switches turned on; turning either one off will turn the +other one off (just like in the web app).