View difference between Paste ID: fXdkBY8H and muVhDFVi
SHOW: | | - or go back to the newest paste.
1
################################################################################
2
##                  Sensor
3
################################################
4
sensor:
5
  - platform: mqtt
6
    name: Netatmo webhook
7
    state_topic: 'netatmo/event'
8
    value_template: '{{ value_json.snapshot_id  }}'
9
    json_attributes_topic: 'netatmo/event'
10
11
12
  - platform: template
13
    sensors:
14
      camera_netatmo:
15
        friendly_name_template: "Camera Netatmo"
16
        entity_id: sensor.netatmo_webhook
17
        value_template: "{{ state_attr('sensor.netatmo_webhook','data').push_type }}"
18
19
20
  - platform: template
21
    sensors:
22
      netatmo_type:
23
        friendly_name: Netatmo tipo di rilevamento
24
        value_template: >
25
              {%- if is_state("sensor.camera_netatmo", "NACamera-animal") %}
26
                  Gatti
27
              {%- elif is_state("sensor.camera_netatmo", "NACamera-human") %}
28
                  Sconosciuto
29
              {%- elif is_state("sensor.camera_netatmo", "NACamera-person") %}
30
                  Familiare
31
              {%- elif is_state("sensor.camera_netatmo", "NACamera-movement") %}
32
                  Movimento
33
              {%- elif is_state("sensor.camera_netatmo", "NACamera-vehicle") %}
34
                  Veicolo
35
              {%- elif is_state("sensor.camera_netatmo", "topology_changed") %}
36
                  Info
37
              {%- elif is_state("sensor.camera_netatmo", "NACamera-light_mode") %}
38
                  Light
39
              {% endif %}
40
        icon_template: >
41
              {%- if is_state("sensor.camera_netatmo", "NACamera-animal") %}
42
                  mdi:cat
43
              {%- elif is_state("sensor.camera_netatmo", "NACamera-human") %}
44
                  mdi:account-alert
45
              {%- elif is_state("sensor.camera_netatmo", "NACamera-person") %}
46
                  mdi:account-star
47
              {%- elif is_state("sensor.camera_netatmo", "NACamera-movement") %}
48
                  mdi:motion-sensor
49
              {%- elif is_state("sensor.camera_netatmo", "NACamera-vehicle") %}
50
                  mdi:car-hatchback
51
              {%- elif is_state("sensor.camera_netatmo", "topology_changed") %}
52
                  mdi:information-variant
53
              {%- elif is_state("sensor.camera_netatmo", "NACamera-light_mode") %}
54
                  mdi:lightbulb-on
55
              {% endif %}
56
57
################################################################################
58
##                  Binary Sensor
59
################################################
60
binary_sensor:
61
  - platform: template
62
    sensors:
63
      netatmo_webhook_trigger:
64
        device_class: motion
65
        friendly_name: Netatmo webhook trigger
66
        value_template: "{{ is_state('sensor.netatmo_webhook_trigger', 'NACamera-human') }}"
67
68
################################################################################
69
##                  Automation
70
################################################
71
automation:
72
  - alias: Netatmo Event
73
    description: Eventi Netatmo
74
    trigger:
75
    - event_data: {}
76
      event_type: netatmo_event
77
      platform: event
78
    action:
79
    - service: persistent_notification.create
80
      data_template:
81
        message: >
82
         {% if is_state('persistent_notification.netatmo' , 'notifying') %}
83
           {{ states.persistent_notification.netatmo.attributes.message }}
84
               [{{ now().strftime('%H:%M') }}] - Messaggio: {{ trigger.event.data.data.message }} - tipo evento: {{ trigger.event.data.data.event_type }}
85
         {% else %}
86
               [{{ now().strftime('%H:%M') }}] - Messaggio: {{ trigger.event.data.data.message }} - tipo evento: {{ trigger.event.data.data.event_type }}
87
         {% endif %}
88
        notification_id: "test"
89
        title: "ciccio"
90
91
92
#    - service: mqtt.publish
93
#      data_template:
94
#        payload: 'Messaggio: {{ trigger.event.data.data.message }}'
95
#        retain: true
96
#        topic: netatmo/event
97
98
    - service: mqtt.publish
99
      data_template:
100
        payload: '{{ trigger.event.data | tojson }}'
101
        retain: true
102
        topic: netatmo/event
103
104
  - alias: Francesco a casa
105
    trigger:
106
      - event_type: netatmo_event
107
        platform: event
108
        event_data:
109
          type: person
110
    condition:
111
      - condition: template
112
        value_template: "{{ trigger.event.data['data']['name'] == 'Francesco' }}"
113
    action:
114
      - service: notify.alexa_media
115
        data:
116
          target:
117
            - media_player.soggiorno
118
          data:
119
            type: announce
120
            method: speak
121
          message: "ok"
122
123
      - service: persistent_notification.create
124
        data_template:
125
          title: Netatmo event
126
          notification_id: "identificazione"
127
          message: >
128
           {% if is_state('persistent_notification.netatmo' , 'notifying') %}
129
             {{ states.persistent_notification.netatmo.attributes.message }}
130
                 [{{ now().strftime('%H:%M') }}] - {{ trigger.event.data["data"]["name"] }} è a casa
131
           {% else %}
132
                 [{{ now().strftime('%H:%M') }}] - {{ trigger.event.data["data"]["name"] }} è a casa
133
           {% endif %}
134
# {{ trigger.event.data["data"]["home_name"] }}
135