-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathtemplates.yaml
104 lines (98 loc) · 4.62 KB
/
templates.yaml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
- binary_sensor:
- name: seat_bt
unique_id: seat_bt
state: "{{ this.attributes.device_connected in ['andre_fortuna', 'vanessa_fortuna'] | default(false) }}"
attributes:
mac_adresse: ""
device_connected: >
{% set persons = ['person.andre_fortuna', 'person.vanessa_fortuna'] %}
{% set bt_seat_mac_adresse = this.attributes.mac_adresse %}
{% set devices_connected = namespace(devices=[]) %}
{%- for p in persons -%}
{%- set device = state_attr(p, "source") | regex_replace(find='device_tracker.', replace='') -%}
{%- set sensor_bluetooth_connection = "sensor." ~ device ~ "_bluetooth_connection" -%}
{%- set p_name = p | regex_replace(find='person.', replace='') %}
{%- if state_attr(sensor_bluetooth_connection, "connected_paired_devices") is not none -%}
{%- for d in state_attr(sensor_bluetooth_connection, "connected_paired_devices") -%}
{%- if bt_seat_mac_adresse in d -%}
{%- set devices_connected.devices = p_name -%}
{%- endif -%}
{%- endfor -%}
{%- endif -%}
{%- endfor -%}
{%- if devices_connected.devices | count > 0 -%}
{{ devices_connected.devices }}
{%- else -%}
-
{%- endif -%}
latitude: >
{%- set dc = this.attributes.device_connected | default('-') -%}
{%- if dc == '-' -%}
{{ this.attributes.latitude | default(state_attr('zone.home', 'latitude')) }}
{%- else -%}
{{ state_attr("person."+dc, 'latitude') }}
{%- endif -%}
longitude: >
{%- set dc = this.attributes.device_connected | default('-') -%}
{%- if dc == '-' -%}
{{ this.attributes.longitude | default(state_attr('zone.home', 'longitude')) }}
{%- else -%}
{{ state_attr("person."+dc, 'longitude') }}
{%- endif -%}
gps_accuracy: >
{%- set dc = this.attributes.device_connected | default('-') -%}
{%- if dc == '-' -%}
{{ this.attributes.gps_accuracy | default(0) }}
{%- else -%}
{{ state_attr("person."+dc, 'gps_accuracy') }}
{%- endif -%}
entity_picture: "/local/cars/seat.jpg"
- binary_sensor:
- name: tesla_lightfury_bt
unique_id: tesla_lightfury_bt
state: "{{ this.attributes.device_connected in ['andre_fortuna', 'vanessa_fortuna'] | default(false) }}"
attributes:
mac_adresse: ""
device_connected: >
{% set persons = ['person.andre_fortuna', 'person.vanessa_fortuna'] %}
{% set bt_seat_mac_adresse = this.attributes.mac_adresse %}
{% set devices_connected = namespace(devices=[]) %}
{%- for p in persons -%}
{%- set device = state_attr(p, "source") | regex_replace(find='device_tracker.', replace='') -%}
{%- set sensor_bluetooth_connection = "sensor." ~ device ~ "_bluetooth_connection" -%}
{%- set p_name = p | regex_replace(find='person.', replace='') %}
{%- if state_attr(sensor_bluetooth_connection, "connected_paired_devices") is not none -%}
{%- for d in state_attr(sensor_bluetooth_connection, "connected_paired_devices") -%}
{%- if bt_seat_mac_adresse in d -%}
{%- set devices_connected.devices = p_name -%}
{%- endif -%}
{%- endfor -%}
{%- endif -%}
{%- endfor -%}
{%- if devices_connected.devices | count > 0 -%}
{{ devices_connected.devices }}
{%- else -%}
-
{%- endif -%}
latitude: >
{%- set dc = this.attributes.device_connected | default('-') -%}
{%- if dc == '-' -%}
{{ this.attributes.latitude | default(state_attr('zone.home', 'latitude')) }}
{%- else -%}
{{ state_attr("person."+dc, 'latitude') }}
{%- endif -%}
longitude: >
{%- set dc = this.attributes.device_connected | default('-') -%}
{%- if dc == '-' -%}
{{ this.attributes.longitude | default(state_attr('zone.home', 'longitude')) }}
{%- else -%}
{{ state_attr("person."+dc, 'longitude') }}
{%- endif -%}
gps_accuracy: >
{%- set dc = this.attributes.device_connected | default('-') -%}
{%- if dc == '-' -%}
{{ this.attributes.gps_accuracy | default(0) }}
{%- else -%}
{{ state_attr("person."+dc, 'gps_accuracy') }}
{%- endif -%}
entity_picture: "/local/cars/tesla.jpg"