summaryrefslogtreecommitdiffstats
path: root/makefu/2configs/home/ham/sensor/pollen.nix
diff options
context:
space:
mode:
authormakefu <github@syntax-fehler.de>2023-07-28 22:24:15 +0200
committermakefu <github@syntax-fehler.de>2023-07-28 22:24:15 +0200
commit060a8f28fa1fc648bdf66afb31a5d1efac868837 (patch)
tree2b354eacc7897365ee45244fe7a51720e0d0333f /makefu/2configs/home/ham/sensor/pollen.nix
parentcbfcc890e3b76d942b927809bf981a5fa7289e6a (diff)
makefu: move out to own repo, add vacation-note
Diffstat (limited to 'makefu/2configs/home/ham/sensor/pollen.nix')
-rw-r--r--makefu/2configs/home/ham/sensor/pollen.nix65
1 files changed, 0 insertions, 65 deletions
diff --git a/makefu/2configs/home/ham/sensor/pollen.nix b/makefu/2configs/home/ham/sensor/pollen.nix
deleted file mode 100644
index d95c199b..00000000
--- a/makefu/2configs/home/ham/sensor/pollen.nix
+++ /dev/null
@@ -1,65 +0,0 @@
-{ pkgs, lib, ... }:
-with lib;
-let
- region = "112";
- types = [
- "Erle"
- "Beifuss"
- "Ambrosia"
- "Birke"
- "Esche"
- "Hasel"
- "Graeser"
- "Roggen"
- ];
- gen_tomorrow_sensor = type: {
- name = "dwd_pollenbelastung_${toLower type}_tomorrow";
- value = {
- icon_template = "mdi:grass";
- friendly_name = "${type} Morgen";
- value_template = "{{ state_attr('sensor.dwd_pollenbelastung_${toLower type}', 'tomorrow') }}";
- };
- };
- gen_sensor = type: {
- name = "dwd_pollenbelastung_${toLower type}";
- value = {
- icon_template = "mdi:tree-outline";
- friendly_name = type;
- value_template = ''
- {% set dwd_state = state_attr('sensor.dwd_pollenbelastung_stuttgart', '${type}')['today'] %}
- {% if dwd_state == "3" %}6{% elif dwd_state == "2-3"%}5{% elif dwd_state == "2"%}4{% elif dwd_state == "1-2"%}3{% elif dwd_state == "1"%}2{% elif dwd_state == "0-1"%}1{% else %}0{% endif %}
- '';
- attribute_templates.today = ''
- {% set dwd_state = state_attr('sensor.dwd_pollenbelastung_stuttgart', '${type}')['today'] %}
- {% if dwd_state == "3" %}6{% elif dwd_state == "2-3"%}5{% elif dwd_state == "2"%}4{% elif dwd_state == "1-2"%}3{% elif dwd_state == "1"%}2{% elif dwd_state == "0-1"%}1{% else %}0{% endif %}
- '';
- attribute_templates.tomorrow = ''
- {% set dwd_state = state_attr('sensor.dwd_pollenbelastung_stuttgart', '${type}')['tomorrow'] %}
- {% if dwd_state == "3" %}6{% elif dwd_state == "2-3"%}5{% elif dwd_state == "2"%}4{% elif dwd_state == "1-2"%}3{% elif dwd_state == "1"%}2{% elif dwd_state == "0-1"%}1{% else %}0{% endif %}
- '';
- # -1 == unknown
- #attribute_templates.dayafter = ''
- # {% set dwd_state = state_attr('sensor.dwd_pollenbelastung', '${type}')['dayafter_to'] %}
- # {% if dwd_state == "3" %}6{% elif dwd_state == "2-3"%}5{% elif dwd_state == "2"%}4{% elif dwd_state == "1-2"%}3{% elif dwd_state == "1"%}2{% elif dwd_state == "0-1"%}1{% elif dwd_state == "-1"%}-1{% else %}0{% endif %}
- #'';
- };
- };
-in
- {
- services.home-assistant.config.sensor = [
- {
- platform = "rest";
- scan_interval = 3600;
- name = "DWD Pollenbelastung Stuttgart";
- resource = "https://opendata.dwd.de/climate_environment/health/alerts/s31fg.json";
- json_attributes_path = "$..content[?(@.partregion_id==${region})].Pollen";
- json_attributes = types;
- value_template = "{{ value_json.last_update }}";
- }
- {
- platform = "template";
- sensors = (listToAttrs (map gen_sensor types)) //
- (listToAttrs (map gen_tomorrow_sensor types)) ;
- }
- ];
-}