|
|
|
@ -17,10 +17,12 @@ sensor:
|
|
|
|
if (item.attributes.source_type is defined and item.state != 'home' and item.attributes.friendly_name not in
|
|
|
|
if (item.attributes.source_type is defined and item.state != 'home' and item.attributes.friendly_name not in
|
|
|
|
[
|
|
|
|
[
|
|
|
|
'Chromecast Audio 2',
|
|
|
|
'Chromecast Audio 2',
|
|
|
|
|
|
|
|
'Carlo',
|
|
|
|
'Entry Alarm Panel',
|
|
|
|
'Entry Alarm Panel',
|
|
|
|
'Dash Button',
|
|
|
|
'Dash Button',
|
|
|
|
'Master Bedroom Roku',
|
|
|
|
'Master Bedroom Roku',
|
|
|
|
'Brother Printer',
|
|
|
|
'Brother Printer',
|
|
|
|
|
|
|
|
'Stacey',
|
|
|
|
'Wii',
|
|
|
|
'Wii',
|
|
|
|
'Withings Scale'
|
|
|
|
'Withings Scale'
|
|
|
|
])
|
|
|
|
])
|
|
|
|
@ -33,6 +35,35 @@ sensor:
|
|
|
|
{%- endfor -%}
|
|
|
|
{%- endfor -%}
|
|
|
|
{%- endfor -%}
|
|
|
|
{%- endfor -%}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
- platform: template
|
|
|
|
|
|
|
|
sensors:
|
|
|
|
|
|
|
|
network_detail:
|
|
|
|
|
|
|
|
friendly_name: 'Network Monitor Detail'
|
|
|
|
|
|
|
|
value_template: >
|
|
|
|
|
|
|
|
{%- set domains = ['device_tracker'] -%}
|
|
|
|
|
|
|
|
{%- for domain in domains -%}
|
|
|
|
|
|
|
|
{%- for item in states[domain]
|
|
|
|
|
|
|
|
if (item.attributes.source_type is defined and item.state != 'home' and item.attributes.friendly_name not in
|
|
|
|
|
|
|
|
[
|
|
|
|
|
|
|
|
'Chromecast Audio 2',
|
|
|
|
|
|
|
|
'Carlo',
|
|
|
|
|
|
|
|
'Entry Alarm Panel',
|
|
|
|
|
|
|
|
'Dash Button',
|
|
|
|
|
|
|
|
'Master Bedroom Roku',
|
|
|
|
|
|
|
|
'Brother Printer',
|
|
|
|
|
|
|
|
'Stacey',
|
|
|
|
|
|
|
|
'Wii',
|
|
|
|
|
|
|
|
'Withings Scale'
|
|
|
|
|
|
|
|
])
|
|
|
|
|
|
|
|
and(as_timestamp(now()) - as_timestamp(item.last_changed)) > 600 -%}
|
|
|
|
|
|
|
|
{{ item.attributes.friendly_name }} - {{((as_timestamp(now()) - as_timestamp(item.last_changed))/60) | round() }} minutes
|
|
|
|
|
|
|
|
{%- if not loop.last -%}
|
|
|
|
|
|
|
|
{{'
|
|
|
|
|
|
|
|
'}}
|
|
|
|
|
|
|
|
{%- endif -%}
|
|
|
|
|
|
|
|
{%- endfor -%}
|
|
|
|
|
|
|
|
{%- endfor -%}
|
|
|
|
|
|
|
|
|
|
|
|
group:
|
|
|
|
group:
|
|
|
|
network:
|
|
|
|
network:
|
|
|
|
entities:
|
|
|
|
entities:
|
|
|
|
@ -43,7 +74,7 @@ group:
|
|
|
|
- sensor.speedtest_download
|
|
|
|
- sensor.speedtest_download
|
|
|
|
- sensor.speedtest_upload
|
|
|
|
- sensor.speedtest_upload
|
|
|
|
- binary_sensor.carlowink
|
|
|
|
- binary_sensor.carlowink
|
|
|
|
- sensor.network
|
|
|
|
- sensor.network_detail
|
|
|
|
#-------------------------------------------------------------------------------------
|
|
|
|
#-------------------------------------------------------------------------------------
|
|
|
|
automation:
|
|
|
|
automation:
|
|
|
|
- alias: 'Device Status'
|
|
|
|
- alias: 'Device Status'
|
|
|
|
@ -58,6 +89,7 @@ automation:
|
|
|
|
- service: script.notify_engine
|
|
|
|
- service: script.notify_engine
|
|
|
|
data_template:
|
|
|
|
data_template:
|
|
|
|
value1: 'Offline Devices:'
|
|
|
|
value1: 'Offline Devices:'
|
|
|
|
|
|
|
|
value2: '{{((as_timestamp(now()) - as_timestamp(item.last_changed))/60) | round() }} minutes'
|
|
|
|
value3: "{{ trigger.to_state.state }}"
|
|
|
|
value3: "{{ trigger.to_state.state }}"
|
|
|
|
who: 'carlo'
|
|
|
|
who: 'carlo'
|
|
|
|
|
|
|
|
|
|
|
|
|