From cfedce8aa74636310765a5d1f47220da03fc41f9 Mon Sep 17 00:00:00 2001 From: Julian Kahnert Date: Fri, 4 Aug 2017 12:11:47 +0200 Subject: [PATCH] Geizhals sensor documentation added (#2980) * Geizhals sensor documentation added * update documentation after review * Minor changes --- source/_components/sensor.geizhals.markdown | 48 ++++++++++++++++++++ source/images/supported_brands/geizhals.png | Bin 0 -> 16465 bytes 2 files changed, 48 insertions(+) create mode 100644 source/_components/sensor.geizhals.markdown create mode 100644 source/images/supported_brands/geizhals.png diff --git a/source/_components/sensor.geizhals.markdown b/source/_components/sensor.geizhals.markdown new file mode 100644 index 00000000000..3bdbc7f0561 --- /dev/null +++ b/source/_components/sensor.geizhals.markdown @@ -0,0 +1,48 @@ +--- +layout: page +title: "Geizhals" +description: "Instructions on how to integrate a Geizhals sensor into Home Assistant." +date: 2017-07-15 14:15 +sidebar: true +comments: false +sharing: true +footer: true +logo: geizhals.png +ha_category: Sensor +ha_iot_class: "Cloud Polling" +ha_release: "0.50" +--- + + +The `geizhals` sensor will give you the best price of a product from [Geizhals](https://geizhals.de) or related site. With this information can be used in e.g. automations to notify you when a price drops. + +To enable this sensor, add the following lines to your `configuration.yaml` file: + +```yaml +# Example configuration.yaml entry +sensor: + - platform: geizhals + name: qc35 + product_id: 1453021 +``` + +Configuration variables: + +- **name** (*Required*): The internal name of the product in Home Assistant. +- **product_id** (*Required*): ID of the product. Get the ID from the geizhals website of your chosen product by clicking on the *Price History* tab, e.g. [here](https://geizhals.de/?phist=1453021). The URL of this site reveals the ID, e.g. with `product_id: 1453021`. +- **description** (*Optional*): The name of the product in the front end. +- **domain** (*Optional*): Domain which should be used for the request. Set this to `geizhals.at`, `geizhals.eu`, `geizhals.de`, `skinflint.co.uk` or `cenowarka.pl`. Defaults to `geizhals.de`. +- **regex** (*Optional*): Regular expression to parse the price. Default: `\D\s(\d*)[\,|\.](\d*)`. + +#### {% linkable_title Extended example %} + +```yaml +# Example configuration.yaml entry +sensor: + - platform: geizhals + name: qc35 + product_id: 1453021 + description: "Bose QC35" + domain: 'geizhals.de' + regex: '\D\s(\d*)[\,|\.](\d*)' +``` diff --git a/source/images/supported_brands/geizhals.png b/source/images/supported_brands/geizhals.png new file mode 100644 index 0000000000000000000000000000000000000000..d6bcb08fe22ded92b1f0e2ef4c5eee0a89411ab9 GIT binary patch literal 16465 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 literal 0 HcmV?d00001