diff options
-rw-r--r-- | makefu/2configs/bureautomation/combination/matrix.nix | 65 | ||||
-rw-r--r-- | makefu/2configs/bureautomation/default.nix | 5 |
2 files changed, 70 insertions, 0 deletions
diff --git a/makefu/2configs/bureautomation/combination/matrix.nix b/makefu/2configs/bureautomation/combination/matrix.nix new file mode 100644 index 000000000..85ba31986 --- /dev/null +++ b/makefu/2configs/bureautomation/combination/matrix.nix @@ -0,0 +1,65 @@ +{ lib, ... }: +#matrix: +# password: supersecurepassword +# rooms: +# - "#hasstest:matrix.org" +# commands: +# - word: my_command +# name: my_command +let + mom_room = "!kTQjvTQvfVsvfEtmth:thales.citadel.team"; +in { + matrix = + { + # secrets: + # homeserver, username, password + homeserver = "https://ext01.citadel.team"; + rooms = [ + mom_room + ]; + commands = [ + { + # alternative: expression for regexp + word = "version"; + name = "version"; + } + { + word = "luftqualität"; + name = "luftqualitaet"; + } + ]; + } // (builtins.fromJSON (builtins.readFile + <secrets/hass/citadel-bot.json>)); + automation = [ + { + alias = "React to !version"; + trigger = { + platform = "event"; + event_type = "matrix_command"; + event_data.command = "version"; + }; + action = { + service = "notify.matrix_notify"; + data_template.message = "Running home-assistant {{states.sensor.current_version.state}}"; + }; + } + { + alias = "React to !luftqualität"; + trigger = { + platform = "event"; + event_type = "matrix_command"; + event_data.command = "luftqualitaet"; + }; + action = { + service = "notify.matrix_notify"; + data_template.message = "Temp: {{states.sensor.easy2_dht22_temperature.state_with_unit}} Hum:{{states.sensor.easy2_dht22_humidity.state_with_unit}} airquality:{{states.sensor.air_quality.state_with_unit}}"; + }; + } + + ]; + notify = [{ + name = "matrix_notify"; + platform = "matrix"; + default_room = mom_room; + }]; +} diff --git a/makefu/2configs/bureautomation/default.nix b/makefu/2configs/bureautomation/default.nix index 564c0c455..b783d8e01 100644 --- a/makefu/2configs/bureautomation/default.nix +++ b/makefu/2configs/bureautomation/default.nix @@ -5,6 +5,9 @@ let mittagessen = import ./combination/mittagessen.nix { inherit lib; }; # provides: automation script matrix = import ./combination/matrix.nix { inherit lib; }; # provides: matrix automation in { + imports = [ + ./ota.nix + ]; networking.firewall.allowedTCPPorts = [ 8123 ]; state = [ "/var/lib/hass/known_devices.yaml" ]; services.home-assistant = let @@ -214,6 +217,7 @@ in { "timer.frank_10h" "sensor.easy2_dht22_humidity" "sensor.easy2_dht22_temperature" + "sensor.air_quality" # "binary_sensor.redbutton" ]; outside = [ @@ -233,6 +237,7 @@ in { # home-assistant automation = (import ./automation/bureau-shutdown.nix) ++ (import ./automation/nachtlicht.nix) ++ + (import ./automation/schlechteluft.nix) ++ (import ./automation/hass-restart.nix) ++ ten_hours.automation ++ matrix.automation ++ |