[ { "id": "Enhanced High Power Usage Monitoring", "automation": "- alias: Enhanced High Power Usage Monitoring\n description: Smart power monitoring that provides graduated alerts based on power\n usage levels and duration\n triggers:\n - entity_id: sensor.gf_power_meter_gf_measured_power\n id: warning_level\n above: 3.1\n for:\n seconds: 30\n trigger: numeric_state\n - entity_id: sensor.gf_power_meter_gf_measured_power\n id: critical_level\n above: 3.8\n for:\n seconds: 15\n trigger: numeric_state\n - entity_id: sensor.gf_power_meter_gf_measured_power\n id: extended_warning\n above: 3.1\n for:\n minutes: 5\n trigger: numeric_state\n conditions:\n - condition: time\n after: 07:00:00\n before: '22:00:00'\n - condition: template\n value_template: \"{% set last_alert = states('input_datetime.last_power_alert')\\\n \\ %} {% if last_alert != 'unavailable' and last_alert != 'unknown' %}\\n {%\\\n \\ set time_diff = (as_timestamp(now()) - as_timestamp(last_alert)) / 60 %}\\n\\\n \\ {{ time_diff > 10 }}\\n{% else %}\\n true\\n{% endif %}\"\n - condition: template\n value_template: '{{ power_level > 0 }}'\n actions:\n - choose:\n - conditions:\n - condition: trigger\n id: critical_level\n sequence:\n - data:\n title: ⚠️ CRITICAL POWER OVERLOAD\n message: 'Critical overload detected! Please reduce load to avoid risk.\n Current usage: {{ power_level }} kW.'\n action: persistent_notification.create\n - data:\n title: ⚠️ CRITICAL POWER OVERLOAD\n message: 'Urgent! Current usage: {{ power_level }} kW. Please turn off {{\n appliance_guess }} immediately to prevent damage.'\n data:\n push:\n sound:\n name: default\n critical: 1\n volume: 1\n interruption-level: critical\n action: notify.mobile_app_ravis_iphone\n - data:\n target:\n - media_player.name\n - media_player.name\n - media_player.name\n message: Alert! Critical power overload at {{ power_level }} kilowatts!\n Please turn off {{ appliance_guess }} immediately. मीटर गंभीर ओवरलोड\n - तुरंत {{ appliance_guess }} बंद करें!\n data:\n type: tts\n method: all\n action: notify.alexa_media\n - conditions:\n - condition: trigger\n id: extended_warning\n sequence:\n - data:\n title: ⚠️ EXTENDED HIGH POWER USAGE\n message: Your power usage has remained high for 5 minutes at {{ power_level\n }} kW. Consider turning off unnecessary appliances.\n action: persistent_notification.create\n - data:\n title: ⚠️ Extended High Power Usage\n message: Continuous high power usage detected for over 5 minutes. Consider\n turning off {{ appliance_guess }}.\n data:\n push:\n sound:\n name: default\n interruption-level: time-sensitive\n action: notify.mobile_app_ravis_iphone\n - data:\n target:\n - media_player.name\n - media_player.name\n - media_player.name\n message: Warning! High power usage sustained for over 5 minutes at {{ power_level\n }} kilowatts. Please turn off unnecessary devices. बिजली की खपत कम करने\n के लिए, कृपया कुछ उपकरण बंद करें।\n data:\n type: tts\n method: all\n action: notify.alexa_media\n - conditions:\n - condition: trigger\n id: warning_level\n sequence:\n - data:\n title: ⚠️ HIGH POWER USAGE\n message: 'Warning: Power usage at {{ power_level }} kW. Consider reducing\n the load.'\n action: persistent_notification.create\n - data:\n title: High Power Usage\n message: 'Current power usage: {{ power_level }} kW. Reduce unnecessary\n load.'\n data:\n push:\n sound:\n name: default\n interruption-level: passive\n action: notify.mobile_app_ravis_iphone\n - data:\n target:\n - media_player.name\n - media_player.name\n - media_player.name\n message: 'मीटर ओवरलोड - कृपया लोड कम करने के लिए उपकरण बंद कर दें। Meter\n Overload - Please switch off {{ appliance_guess }} to reduce the load.\n Current power: {{ power_level }} kilowatts.'\n data:\n type: tts\n method: all\n action: notify.alexa_media\n - data:\n entity_id: input_datetime.last_power_alert\n datetime: '{{ now().strftime(''%Y-%m-%d %H:%M:%S'') }}'\n action: input_datetime.set_datetime\n - data:\n entity_id: input_number.last_power_level\n value: '{{ power_level }}'\n action: input_number.set_value\n variables:\n power_level: '{% set power1 = states(''sensor.gf_power_meter_gf_measured_power'')\n | float(0) %} {% set power2 = states(''sensor.measured_power'') | float(0) %}\n {% if power1 > power2 %}{{ power1 }}{% else %}{{ power2 }}{% endif %}'\n appliance_guess: \"{% set power = power_level | float %} {% if power > 4.5 %}\\n\\\n \\ multiple heavy appliances\\n{% elif power > 3.8 %}\\n an air conditioner or\\\n \\ water heater\\n{% elif power > 3.1 %}\\n a heavy appliance like a microwave,\\\n \\ iron, or water pump\\n{% else %}\\n some appliances\\n{% endif %}\"\n message_severity: \"{% if trigger.id == 'critical_level' %}\\n CRITICAL POWER OVERLOAD\\n\\\n {% elif trigger.id == 'extended_warning' %}\\n Extended High Power Usage\\n{%\\\n \\ else %}\\n High Power Usage\\n{% endif %}\"\n mode: single", "config": [ { "name": "power meter measured power", "room": "gf", "type": "sensor", "id": { "entity_id": "sensor.gf_power_meter_gf_measured_power", "device_id": null } }, { "name": "measured power", "room": null, "type": "sensor", "id": { "entity_id": "sensor.measured_power", "device_id": null } }, { "name": "last power alert", "room": null, "type": "input_datetime", "id": { "entity_id": "input_datetime.last_power_alert", "device_id": null } }, { "name": "last power level", "room": null, "type": "input_number", "id": { "entity_id": "input_number.last_power_level", "device_id": null } }, { "name": "mobile app", "room": null, "type": "notify", "id": { "entity_id": "notify.mobile_app_ravis_iphone", "device_id": null } }, { "name": "alexa media", "room": null, "type": "notify", "id": { "entity_id": "notify.alexa_media", "device_id": null } }, { "name": "media player", "room": null, "type": "media_player", "id": { "entity_id": "media_player.name", "device_id": null } } ] } ]