diff --git a/config/.HA_VERSION b/config/.HA_VERSION index c107ae9f..4a05878f 100755 --- a/config/.HA_VERSION +++ b/config/.HA_VERSION @@ -1 +1 @@ -0.118.4 \ No newline at end of file +1.0.0b0 \ No newline at end of file diff --git a/config/blueprints/automation/homeassistant/motion_light.yaml b/config/blueprints/automation/homeassistant/motion_light.yaml new file mode 100644 index 00000000..c10d3691 --- /dev/null +++ b/config/blueprints/automation/homeassistant/motion_light.yaml @@ -0,0 +1,49 @@ +blueprint: + name: Motion-activated Light + domain: automation + source_url: https://github.com/home-assistant/core/blob/dev/homeassistant/components/automation/blueprints/motion_light.yaml + input: + motion_entity: + name: Motion Sensor + selector: + entity: + domain: binary_sensor + device_class: motion + light_target: + name: Light + selector: + target: + entity: + domain: light + no_motion_wait: + name: Wait time + description: Time to wait until the light should be turned off. + default: 120 + selector: + number: + min: 0 + max: 3600 + unit_of_measurement: seconds + +# If motion is detected within the delay, +# we restart the script. +mode: restart +max_exceeded: silent + +trigger: + platform: state + entity_id: !input motion_entity + from: "off" + to: "on" + +action: + - service: light.turn_on + target: !input light_target + - wait_for_trigger: + platform: state + entity_id: !input motion_entity + from: "on" + to: "off" + - delay: !input no_motion_wait + - service: light.turn_off + target: !input light_target diff --git a/config/blueprints/automation/homeassistant/notify_leaving_zone.yaml b/config/blueprints/automation/homeassistant/notify_leaving_zone.yaml new file mode 100644 index 00000000..9b79396f --- /dev/null +++ b/config/blueprints/automation/homeassistant/notify_leaving_zone.yaml @@ -0,0 +1,41 @@ +blueprint: + name: Send notification when a person leaves a zone + domain: automation + source_url: https://github.com/home-assistant/core/blob/dev/homeassistant/components/automation/blueprints/notify_leaving_zone.yaml + input: + person_entity: + name: Person + selector: + entity: + domain: person + zone_entity: + name: Zone + selector: + entity: + domain: zone + notify_device: + name: Device to notify + description: Device needs to run the official Home Assistant app to receive notifications. + selector: + device: + integration: mobile_app + +trigger: + platform: state + entity_id: !input person_entity + +variables: + zone_entity: !input zone_entity + zone_state: "{{ states[zone_entity].name }}" + person_entity: !input person_entity + person_name: "{{ states[person_entity].name }}" + +condition: + condition: template + value_template: "{{ trigger.from_state.state == zone_state and trigger.to_state.state != zone_state }}" + +action: + domain: mobile_app + type: notify + device_id: !input notify_device + message: "{{ person_name }} has left {{ zone_state }}" diff --git a/config/shell_scripts/FeedMurray_flows.json b/config/shell_scripts/FeedMurray_flows.json new file mode 100755 index 00000000..a6d0617a --- /dev/null +++ b/config/shell_scripts/FeedMurray_flows.json @@ -0,0 +1 @@ +[{"id":"c5dc35c2.49dce","type":"tab","label":"Murray","disabled":false,"info":""},{"id":"93556ce8.b0726","type":"server-state-changed","z":"c5dc35c2.49dce","name":"","server":"67049a5e.6eb1b4","version":1,"exposeToHomeAssistant":false,"haConfig":[{"property":"name","value":""},{"property":"icon","value":""}],"entityidfilter":"binary_sensor.wyzesense_779c2431","entityidfiltertype":"exact","outputinitially":false,"state_type":"str","haltifstate":"on","halt_if_type":"str","halt_if_compare":"is","outputs":2,"output_only_on_state_change":true,"for":0,"forType":"num","forUnits":"minutes","ignorePrevStateNull":false,"ignorePrevStateUnknown":false,"ignorePrevStateUnavailable":false,"ignoreCurrentStateUnknown":false,"ignoreCurrentStateUnavailable":false,"x":250,"y":60,"wires":[["1590792f.2f99ff"],[]]},{"id":"cf530d34.d58f08","type":"inject","z":"c5dc35c2.49dce","name":"Reset fed status at 6AM","props":[{"p":"payload"},{"p":"topic","vt":"str"}],"repeat":"","crontab":"00 06 * * *","once":false,"onceDelay":0.1,"topic":"","payload":"","payloadType":"date","x":180,"y":180,"wires":[["e4fd1081.3883f"]]},{"id":"e4fd1081.3883f","type":"api-call-service","z":"c5dc35c2.49dce","name":"","server":"67049a5e.6eb1b4","version":1,"debugenabled":false,"service_domain":"input_boolean","service":"turn_off","entityId":"input_boolean.murray_fed","data":"","dataType":"json","mergecontext":"","output_location":"","output_location_type":"none","mustacheAltTags":false,"x":460,"y":180,"wires":[[]]},{"id":"64e8d922.e7e008","type":"server-state-changed","z":"c5dc35c2.49dce","name":"Murray Fed Check","server":"67049a5e.6eb1b4","version":1,"exposeToHomeAssistant":false,"haConfig":[{"property":"name","value":""},{"property":"icon","value":""}],"entityidfilter":"input_boolean.murray_fed_check_script","entityidfiltertype":"exact","outputinitially":true,"state_type":"str","haltifstate":"on","halt_if_type":"str","halt_if_compare":"is","outputs":2,"output_only_on_state_change":true,"for":0,"forType":"num","forUnits":"minutes","ignorePrevStateNull":false,"ignorePrevStateUnknown":false,"ignorePrevStateUnavailable":false,"ignoreCurrentStateUnknown":false,"ignoreCurrentStateUnavailable":false,"x":110,"y":460,"wires":[["f88fb094.f3f778"],[]]},{"id":"5c42a0b9.2d5178","type":"api-call-service","z":"c5dc35c2.49dce","name":"","server":"67049a5e.6eb1b4","version":1,"debugenabled":false,"service_domain":"tts","service":"google_translate_say","entityId":"media_player.living_room_speaker, media_player.dining_room_speaker, media_player.bedroom_speaker","data":"{\"message\": \"Yes, Murray has been fed already today.\"}","dataType":"json","mergecontext":"","output_location":"","output_location_type":"none","mustacheAltTags":false,"x":660,"y":440,"wires":[["732691bf.91d77"]]},{"id":"179182b7.d4d6cd","type":"api-call-service","z":"c5dc35c2.49dce","name":"","server":"67049a5e.6eb1b4","version":1,"debugenabled":false,"service_domain":"tts","service":"google_translate_say","entityId":"media_player.living_room_speaker, media_player.dining_room_speaker, media_player.bedroom_speaker","data":"{\"message\": \"No, Murray still needs to be fed.\"}","dataType":"json","mergecontext":"","output_location":"","output_location_type":"none","mustacheAltTags":false,"x":660,"y":500,"wires":[["732691bf.91d77"]]},{"id":"732691bf.91d77","type":"api-call-service","z":"c5dc35c2.49dce","name":"","server":"67049a5e.6eb1b4","version":1,"debugenabled":false,"service_domain":"input_boolean","service":"turn_off","entityId":"input_boolean.murray_fed_check_script","data":"","dataType":"json","mergecontext":"","output_location":"","output_location_type":"none","mustacheAltTags":false,"x":940,"y":460,"wires":[[]]},{"id":"f88fb094.f3f778","type":"api-current-state","z":"c5dc35c2.49dce","name":"Has Murray been fed?","server":"67049a5e.6eb1b4","version":1,"outputs":2,"halt_if":"on","halt_if_type":"str","halt_if_compare":"is","override_topic":false,"entity_id":"input_boolean.murray_fed","state_type":"str","state_location":"payload","override_payload":"msg","entity_location":"data","override_data":"msg","blockInputOverrides":false,"x":360,"y":460,"wires":[["5c42a0b9.2d5178"],["179182b7.d4d6cd"]]},{"id":"568e1ec5.66b66","type":"inject","z":"c5dc35c2.49dce","name":"1PM","props":[{"p":"payload"},{"p":"topic","vt":"str"}],"repeat":"","crontab":"00 13 * * *","once":false,"onceDelay":0.1,"topic":"","payload":"","payloadType":"date","x":130,"y":260,"wires":[["ad4bdac3.e21d78"]]},{"id":"ad343700.7d953","type":"inject","z":"c5dc35c2.49dce","name":"2PM","props":[{"p":"payload"},{"p":"topic","vt":"str"}],"repeat":"","crontab":"00 14 * * *","once":false,"onceDelay":0.1,"topic":"","payload":"","payloadType":"date","x":130,"y":300,"wires":[["ad4bdac3.e21d78"]]},{"id":"4c65691c.e4e92","type":"inject","z":"c5dc35c2.49dce","name":"3PM","props":[{"p":"payload"},{"p":"topic","vt":"str"}],"repeat":"","crontab":"00 15 * * *","once":false,"onceDelay":0.1,"topic":"","payload":"","payloadType":"date","x":130,"y":340,"wires":[["ad4bdac3.e21d78"]]},{"id":"ad4bdac3.e21d78","type":"api-current-state","z":"c5dc35c2.49dce","name":"Murray hasn't been fed","server":"67049a5e.6eb1b4","version":1,"outputs":2,"halt_if":"off","halt_if_type":"str","halt_if_compare":"is","override_topic":false,"entity_id":"input_boolean.murray_fed","state_type":"str","state_location":"payload","override_payload":"msg","entity_location":"data","override_data":"msg","blockInputOverrides":false,"x":340,"y":300,"wires":[["311c6972.e2614e","9b52bfa2.c07738"],[]]},{"id":"311c6972.e2614e","type":"api-call-service","z":"c5dc35c2.49dce","name":"Voice Alert: Murray needs to be fed","server":"67049a5e.6eb1b4","version":1,"debugenabled":false,"service_domain":"tts","service":"google_translate_say","entityId":"media_player.living_room_speaker, media_player.dining_room_speaker, media_player.bedroom_speaker","data":"{\"message\": \"Murray would like you to know he has not been fed today.\"}","dataType":"json","mergecontext":"","output_location":"","output_location_type":"none","mustacheAltTags":false,"x":660,"y":300,"wires":[[]]},{"id":"c39ace99.5fe6b8","type":"api-call-service","z":"c5dc35c2.49dce","name":"","server":"67049a5e.6eb1b4","version":1,"debugenabled":false,"service_domain":"input_boolean","service":"turn_on","entityId":"input_boolean.murray_fed","data":"","dataType":"json","mergecontext":"","output_location":"","output_location_type":"none","mustacheAltTags":false,"x":880,"y":60,"wires":[[]]},{"id":"1590792f.2f99ff","type":"api-current-state","z":"c5dc35c2.49dce","name":"Has Murray been fed?","server":"67049a5e.6eb1b4","version":1,"outputs":2,"halt_if":"on","halt_if_type":"str","halt_if_compare":"is","override_topic":false,"entity_id":"input_boolean.murray_fed","state_type":"str","state_location":"payload","override_payload":"msg","entity_location":"data","override_data":"msg","blockInputOverrides":false,"x":560,"y":60,"wires":[["c39ace99.5fe6b8","4af743f2.2924ac"],["c39ace99.5fe6b8"]]},{"id":"4af743f2.2924ac","type":"api-call-service","z":"c5dc35c2.49dce","name":"Voice Alert: Already Fed","server":"67049a5e.6eb1b4","version":1,"debugenabled":false,"service_domain":"tts","service":"google_translate_say","entityId":"media_player.dining_room_speaker","data":"{\"message\": \"Alert! Murray has already been fed today.\"}","dataType":"json","mergecontext":"","output_location":"","output_location_type":"none","mustacheAltTags":false,"x":870,"y":120,"wires":[[]]},{"id":"9b52bfa2.c07738","type":"api-call-service","z":"c5dc35c2.49dce","name":"Notify Phone","server":"67049a5e.6eb1b4","version":1,"debugenabled":false,"service_domain":"notify","service":"mobile_app_hasskit_pixel_3_0464","entityId":"","data":"{\"message\": \"Murray needs to be fed \"}","dataType":"json","mergecontext":"","output_location":"","output_location_type":"none","mustacheAltTags":false,"x":590,"y":260,"wires":[[]]},{"id":"67049a5e.6eb1b4","type":"server","name":"Home Assistant","addon":true}] \ No newline at end of file diff --git a/config/www/custom_ui/floorplan/images/branding/att_speedtest.png b/config/www/custom_ui/floorplan/images/branding/att_speedtest.png index 99dace72..472681ab 100644 Binary files a/config/www/custom_ui/floorplan/images/branding/att_speedtest.png and b/config/www/custom_ui/floorplan/images/branding/att_speedtest.png differ diff --git a/config/www/custom_ui/floorplan/images/branding/solar_readings.png b/config/www/custom_ui/floorplan/images/branding/solar_readings.png index 8365e425..daa0fb1c 100644 Binary files a/config/www/custom_ui/floorplan/images/branding/solar_readings.png and b/config/www/custom_ui/floorplan/images/branding/solar_readings.png differ