Dagelijks Woord is ook te gebruiken op de Home Assistant domotica software.
Let op: deze pagina bevat diverse links naar externe websites die buiten de verantwoordelijkheid van Stichting Dagelijks Woord vallen. Gebruik op eigen risico.
1. Vraag een API key aan
Vraag een API key voor de REST API aan bij via https://www.dagelijkswoord.nl/verspreiden/json-feed
2. Maak een sensor
In Home Assistant voegt u nu een sensor toe van het type ‘rest’. Zie https://www.home-assistant.io/integrations/rest/ voor documentatie over deze integratie.
De integratie haalt de JSON op van dagelijkswoord.nl via https://feed.dagelijkswoord.nl/api/json/1.0/. De sensor heeft 3 attributes te weten:
- ts
- source
- text
Eventueel is het mogelijk om enkele sensors van het type platform ‘template’ aan te maken, om bijv. het Bijbelgedeelte en de Bijbeltekst op te halen in losse sensors. Echter, een beperking van een sensor is dat deze maar maximaal 255 karakters kan bevatten. Bij een te lange Bijbeltekst zal de sensor de waarde ‘unknown’ tonen. Een attribute van een sensor heeft deze beperking niet.
U kunt de sensor op meerdere manieren toevoegen:Methode 1: in configuration.yaml
rest: - authentication: basic username: your-email@example.com password: your-password resource: https://feed.dagelijkswoord.nl/api/json/1.0/ scan_interval: 3600 headers: Content-Type: application/json sensor: - name: dagelijkswoord value_template: 'OK' json_attributes_path: "$.data[0]" json_attributes: - ts - source - text - name: dagelijkswoord_datum value_template: '{{ states.sensor.dagelijkswoord.attributes["ts"] }}' - name: dagelijkswoord_bron value_template: '{{ states.sensor.dagelijkswoord.attributes["source"] }}' - name: dagelijkswoord_tekst_hsv value_template: '{{ state_attr("sensor.dagelijkswoord", "text")["hsv"]|truncate(254,True) }}' - name: dagelijkswoord_tekst_bb value_template: '{{ state_attr("sensor.dagelijkswoord", "text")["bb"]|truncate(254,True) }}'Methode 2: In included bestand
Het bestand, bijvoorbeeld /homeassistant/sensors/dagelijkswoord.yaml, wordt dan included door de volgende regel op te nemen in configuration.yaml:
!include_dir_merge_list sensors/
- platform: rest name: dagelijkswoord json_attributes_path: "$.data[0]" json_attributes: - ts - source - text resource: https://feed.dagelijkswoord.nl/api/json/1.0/ username: your-email@example.com password: your-password # Please do not request more than once an hour. The verse only updates once a day. scan_interval: 3600 value_template: "OK" authentication: basic headers: Content-Type: application/json - platform: template sensors: dagelijkswoord_datum: friendly_name: Datum value_template: '{{ states.sensor.dagelijkswoord.attributes["ts"] }}' dagelijkswoord_bron: friendly_name: Bron value_template: '{{ states.sensor.dagelijkswoord.attributes["source"] }}' dagelijkswoord_tekst_hsv: friendly_name: BijbeltekstHSV value_template: '{{ state_attr("sensor.dagelijkswoord", "text")["hsv"]|truncate(254,True) }}' dagelijkswoord_tekst_basisbijbel: friendly_name: BijbeltekstBasisBijbel value_template: '{{ state_attr("sensor.dagelijkswoord", "text")["bb"]|truncate(254,True) }}'
3. Sensoren en attributen
De sensoren en attributen worden nu getoond in de ‘Ontwikkelhulpmiddelen’ pagina.
De sensor ‘dagelijkswoord_tekst_hsv’ laat hier nu een goede waarde zien, maar bij een Bijbeltekst langer dan 255 karakters werkt dit niet. Gelukkig kunnen we de attributes van de sensor ‘dagelijkswoord’ gebruiken.
4. Toevoegen aan een dashboard
Toevoegen aan lovelace dashboard. Hiervoor kan het beste een kaart van het type ‘markdown’ gebruikt worden. De configuratie ziet er bijvoorbeeld als volgt uit:
type: markdown content: |- {{ state_attr("sensor.dagelijkswoord", "text")["hsv"]|truncate(254,True) }} -- {{ state_attr("sensor.dagelijkswoord", "source")}} title: Dagelijks WoordIn plaats van state_attr kunt u de tekst ook direct uit een state halen: {{states(“sensor.dawonew_tekst_hsv”)}}
Er wordt gebruik gemaakt van de attribute ‘text’ van de sensor ‘dagelijkswoord’. Bij de attribute worden blokhaken gebruikt om de juiste Bijbelvertaling te tonen, in dit geval ‘hsv’ (Herziene Statenvertaling).
5. Resultaat.
