diff options
author | lassulus <lassulus@lassul.us> | 2019-08-13 18:55:08 +0200 |
---|---|---|
committer | lassulus <lassulus@lassul.us> | 2019-08-13 18:55:08 +0200 |
commit | 3047fea88d2379011685be4e57a5b379778423c7 (patch) | |
tree | 23ad61badb3794cabf4a9cc9de89c3465cfec737 /makefu/2configs/bureautomation/combination/mittagessen.nix | |
parent | 0699b41b05a1f9cd133c15c3aadf70c3a45170f6 (diff) | |
parent | 124b1d7639c404e5a58a9aef0f0bee1424f54a45 (diff) |
Merge remote-tracking branch 'gum/master'
Diffstat (limited to 'makefu/2configs/bureautomation/combination/mittagessen.nix')
-rw-r--r-- | makefu/2configs/bureautomation/combination/mittagessen.nix | 89 |
1 files changed, 89 insertions, 0 deletions
diff --git a/makefu/2configs/bureautomation/combination/mittagessen.nix b/makefu/2configs/bureautomation/combination/mittagessen.nix new file mode 100644 index 000000000..3ec70998d --- /dev/null +++ b/makefu/2configs/bureautomation/combination/mittagessen.nix @@ -0,0 +1,89 @@ +{ lib, ... }: +let + # TODO: remove redundant code (from multi_blink) via lib + flash_entity = { entity, delay ? 500, count ? 4, alias ? "${entity}_blink_${toString count}_${toString delay}" }: + { + inherit alias; + sequence = lib.flatten (builtins.genList (i: [ + { service = "homeassistant.turn_on"; + data.entity_id = entity; + } + { delay.milliseconds = delay; } + { service = "homeassistant.turn_off"; + data.entity_id = entity; + } + { delay.milliseconds = delay; } + ] + ) count); + }; + # TODO: use influxdb and check if pommes + random_mittagessen = '' {{ [ + "Es ist 12 uhr 30. Der Aramark Gourmettempel hat, wie jeden Tag, wieder die feinsten Köstlichkeiten für euch Vorbereitet", + "Heute bei Aramark: Rezepte aus Ländern, von denen Ihr noch nie gehört habt, Deutsch zubereitet", + "Heute bei Aramark im Angebot: Scheiss mit Reis oder Reste von Freitag", + "MHHHH es ist wieder mal so weit, lecker Bayerisch Kraut mit asiatischen Nudeln", + "Es ist 12 Uhr 30 und Heute gibt es Pommes - vielleicht", + "Heute gibt es Pommes - leider nicht einzeln zu verkaufen, da die Schälchen alle sind", + "Heute gibt es Pommes - verarscht! Natürlich gibt es nur salzlosen Reis, oder salzlose Nudeln.", + "Heute auf dem Speiseplan: Sushi vom Vortag", + "Aramark Kantinenessen: Der Hunger treibt es rein, der Geiz hält es drin.", + "Das Essen in der Snackeria sieht heute wie die bessere Alternative aus", + "Heute ist wohl wieder ein Beilagen-Tag", + "Lunch time! Good luck, you will need it!", + "Heute vielleicht lieber doch nur einen Salat?", + "Im Büro ist es eh gerade viel zu warm, also ab zur Kantine", + "Im Büro ist es eh gerade viel zu kalt, also ab zur Kantine", + "Heute scheint die Auswahl wieder sehr schwierig zu sein. Vielleicht doch lieber ein Brötchen mit Fleischkäse vom Bäcker beim Baumarkt?", + "Wer hat hier schon wieder ein Meeting auf 12 Uhr gelegt? Skandal!", + "Jetzt nur noch kurz die Mail fertig schreiben und schon kann es los gehen.", + "Es ist 13 Uhr und die Mittagspause ist bald vorbei .... Kleiner Scherz, es ist erst 12:30, aber Ihr hättet auch nicht wirklich etwas verpasst.", + "Hallo, es ist nun 12 Uhr 30! Dies entspricht der Essenszeit aller Büroinsassen. Bitte begebt euch zur Aramark Essensausgabe um euren menschlichen Bedürfnissen nachzukommen."] | random }}''; +in { + automation = [ + { alias = "Mittagessen"; + trigger = { + platform = "time"; + at = "12:30:00"; + }; + action = [ + { service = "homeassistant.turn_on"; + entity_id = [ + "script.mittagessen_announce" + "script.blitz_10s" + "script.mittagessenlicht" + ]; + } + ]; + } + ]; + script = { + mittagessenlicht = (flash_entity { + entity = "switch.bauarbeiterlampe"; + alias = "Bauarbeiterlampe Mittagessenlicht"; + delay = 1000; + count = 5; + }); + mittagessen_announce = { + alias = "Random Mittagessen announce"; + sequence = [ + { + service = "media_player.play_media"; + data = { + entity_id = "media_player.mpd"; + media_content_type = "playlist"; + media_content_id = "ansage"; + }; + } + { delay.seconds = 5; } + { + service = "tts.google_say"; + entity_id = "media_player.mpd"; + data_template = { + message = random_mittagessen; + language = "de"; + }; + } + ]; + }; + }; +} |