diff --git a/config/lovelace/advanced_dashboard/08_automations.yaml b/config/lovelace/advanced_dashboard/08_automations.yaml index d802b5f..e788cf9 100644 --- a/config/lovelace/advanced_dashboard/08_automations.yaml +++ b/config/lovelace/advanced_dashboard/08_automations.yaml @@ -34,8 +34,8 @@ cards: icon: mdi:pound - automation.titanium_turn_off_when_idle - automation.titanium_notify_on_vibration_sensor_move - - automation.speech_enable_when_meeting_is_over - - automation.speech_disable_when_meeting_starts + - automation.slack_meeting_starts + - automation.slack_meeting_ends - automation.hallway_tablet_set_to_home_after_10_minutes - type: entities diff --git a/config/packages/modules/speech.yaml b/config/packages/modules/speech.yaml index bf5b030..c865e1b 100644 --- a/config/packages/modules/speech.yaml +++ b/config/packages/modules/speech.yaml @@ -133,23 +133,3 @@ automation: data_template: message_id: "{{ trigger.event.data.message.message_id}}" chat_id: "{{ trigger.event.data.chat_id }}" - - - alias: Speech · Disable when meeting starts - trigger: - platform: state - entity_id: binary_sensor.in_a_meeting - from: "off" - to: "on" - action: - - service: input_boolean.turn_off - entity_id: input_boolean.speech_notifications - - - alias: Speech · Enable when meeting is over - trigger: - platform: state - entity_id: binary_sensor.in_a_meeting - from: "on" - to: "off" - action: - - service: input_boolean.turn_on - entity_id: input_boolean.speech_notifications diff --git a/config/packages/sensors/meeting.yaml b/config/packages/sensors/meeting.yaml index 742acc0..3fca825 100644 --- a/config/packages/sensors/meeting.yaml +++ b/config/packages/sensors/meeting.yaml @@ -3,9 +3,39 @@ binary_sensor: sensors: in_a_meeting: friendly_name: In a meeting - value_template: "{{ false }}" + value_template: >- + {% set slack_emoji = state_attr('sensor.slack_hs_georgi', 'status_emoji') %} + {% set slack_status = state_attr('sensor.slack_hs_georgi', 'status_text') %} + {{ slack_emoji == ':spiral_calendar_pad:' or 'meeting' in slack_status.lower() }} - # {% set slack_emoji = state_attr('sensor.slack_georgi', 'status_emoji') %} - # {% set slack_status = state_attr('sensor.slack_georgi', 'status_text') %} +automation: + - alias: Slack Meeting · Starts + trigger: + platform: state + entity_id: binary_sensor.in_a_meeting + to: "on" + action: + - service: cover.close_cover + entity_id: cover.living_room + - service: light.turn_on + entity_id: light.pc + - service: media_player.media_stop + entity_id: + - media_player.living_room + - media_player.master_bedroom + - service: input_boolean.turn_off + entity_id: input_boolean.speech_notifications - # {{ slack_emoji == ':spiral_calendar_pad:' or 'meeting' in slack_status.lower() }} + - alias: Slack Meeting · Ends + trigger: + platform: state + entity_id: binary_sensor.in_a_meeting + from: "off" + to: "on" + action: + - service: cover.set_cover_position + entity_id: cover.living_room + data: + position: 80 + - service: input_boolean.turn_on + entity_id: input_boolean.speech_notifications