From 8c159ed440a948ed45e1b9559ff280c6c0c97774 Mon Sep 17 00:00:00 2001 From: Andy Castille Date: Mon, 18 Sep 2017 00:26:43 -0500 Subject: [PATCH] DoorBird (#3147) * Add documentation for DoorBird components * Update release to 0.52 * Update example configurations * Update doorbird.markdown * Update DoorBird release from 0.52 to 0.54 --- .../binary_sensor.doorbird.markdown | 28 ++++++++++++++ source/_components/camera.doorbird.markdown | 32 ++++++++++++++++ source/_components/doorbird.markdown | 32 ++++++++++++++++ source/_components/switch.doorbird.markdown | 35 ++++++++++++++++++ source/images/supported_brands/doorbird.png | Bin 0 -> 23637 bytes 5 files changed, 127 insertions(+) create mode 100644 source/_components/binary_sensor.doorbird.markdown create mode 100644 source/_components/camera.doorbird.markdown create mode 100644 source/_components/doorbird.markdown create mode 100644 source/_components/switch.doorbird.markdown create mode 100644 source/images/supported_brands/doorbird.png diff --git a/source/_components/binary_sensor.doorbird.markdown b/source/_components/binary_sensor.doorbird.markdown new file mode 100644 index 00000000000..b16dc68c5e9 --- /dev/null +++ b/source/_components/binary_sensor.doorbird.markdown @@ -0,0 +1,28 @@ +--- +layout: page +title: "DoorBird Binary Sensor" +description: "Instructions how to integrate DoorBird video doorbell state into Home Assistant." +date: 2017-08-06 11:30 +sidebar: true +comments: false +sharing: true +footer: true +logo: doorbird.png +ha_category: Binary Sensor +ha_release: "0.54" +ha_iot_class: "Local Polling" +--- + +The `doorbird` binary sensor platform allows Home Assistant to monitor when your [DoorBird](http://www.doorbird.com/) doorbell rings. + +

+ You must have the [DoorBird component](/components/doorbird/) configured to use this binary sensor. +

+ +To enable the binary sensor, add the following to your `configuration.yaml` file: + +```yaml +# Example configuration.yaml entry +binary_sensor: + - platform: doorbird +``` diff --git a/source/_components/camera.doorbird.markdown b/source/_components/camera.doorbird.markdown new file mode 100644 index 00000000000..55fcb419f8c --- /dev/null +++ b/source/_components/camera.doorbird.markdown @@ -0,0 +1,32 @@ +--- +layout: page +title: "DoorBird Camera" +description: "Instructions how to integrate DoorBird video doorbell images into Home Assistant." +date: 2017-08-06 11:30 +sidebar: true +comments: false +sharing: true +footer: true +logo: doorbird.png +ha_category: Camera +ha_release: "0.54" +ha_iot_class: "Local Polling" +--- + +The `doorbird` implementation allows you to view the live video and saved images from your [DoorBird](http://www.doorbird.com/) device in Home Assistant. + +

+ You must have the [DoorBird component](/components/doorbird/) configured to use this camera. +

+ +To enable the camera, add the following to your `configuration.yaml` file: + +```yaml +# Example configuration.yaml entry +camera: + - platform: doorbird +``` + +Configuration variables: + +- **last_visitor** (*Optional*): Adds a second camera that shows the last picture taken when someone rang the doorbell. Default is `false`. diff --git a/source/_components/doorbird.markdown b/source/_components/doorbird.markdown new file mode 100644 index 00000000000..0b7f1e4120a --- /dev/null +++ b/source/_components/doorbird.markdown @@ -0,0 +1,32 @@ +--- +layout: page +title: "DoorBird" +description: "Instructions on how to integrate your DoorBird video doorbell with Home Assistant." +date: 2017-08-06 11:30 +sidebar: true +comments: false +sharing: true +footer: true +logo: doorbird.png +ha_category: Hub +ha_release: "0.54" +ha_iot_class: "Local Polling" +--- + +The `doorbird` implementation allows you to integrate your [DoorBird](http://www.doorbird.com/) device in Home Assistant. + +To connect your device, add the following to your `configuration.yaml` file: + +```yaml +# Example configuration.yaml entry +doorbird: + host: IP_OR_HOSTNAME + username: abcdef0001 + password: xxxxxxxxxx +``` + +Configuration variables: + +- **host** (*Required*): The LAN IP address or hostname of your device. You can find this by going to the [DoorBird Online check](http://www.doorbird.com/checkonline) and entering the information from the paper that was included in the box. +- **username** (*Required*): The username of a non-administrator user account on the device. +- **password** (*Required*): The password for the user specified. diff --git a/source/_components/switch.doorbird.markdown b/source/_components/switch.doorbird.markdown new file mode 100644 index 00000000000..fc2497f9179 --- /dev/null +++ b/source/_components/switch.doorbird.markdown @@ -0,0 +1,35 @@ +--- +layout: page +title: "DoorBird Switch" +description: "Instructions how to integrate DoorBird video doorbell relays into Home Assistant." +date: 2017-08-06 11:30 +sidebar: true +comments: false +sharing: true +footer: true +logo: doorbird.png +ha_category: Switch +ha_release: "0.54" +ha_iot_class: "Local Push" +--- + +The `doorbird` switch platform allows you to power relays in your [DoorBird](http://www.doorbird.com/) video doorbell device. + +

+ You must have the [DoorBird component](/components/doorbird/) configured to use this switch. +

+ +To enable this switch, add the following lines to your `configuration.yaml` file: + +```yaml +# Example configuration.yaml entry +switch: + - platform: doorbird + switches: + - light_on + - open_door +``` + +Configuration variables: + +- **switches** (*Required*): A list of switches to include. Possible entries are `light_on` for control of the IR array and `open_door` for control of an electronic door strike or alarm. diff --git a/source/images/supported_brands/doorbird.png b/source/images/supported_brands/doorbird.png new file mode 100644 index 0000000000000000000000000000000000000000..64078a710b818eba521768a0f1c1ff61e355f385 GIT binary patch literal 23637 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

%W%zVUF5g% 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 MZ>CqP^E~eV02*vk)c^nh literal 0 HcmV?d00001