From 6ca14d3efcaa3e7b186daad8c9fc14a3a4096936 Mon Sep 17 00:00:00 2001 From: Franck Nijhof Date: Wed, 31 Jul 2024 14:37:02 +0200 Subject: [PATCH] Rename 'service' to 'action' in automations and scripts (#34023) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Joakim Sørensen --- source/_docs/automation/action.markdown | 10 +- source/_docs/automation/condition.markdown | 4 +- source/_docs/automation/templating.markdown | 8 +- source/_docs/automation/trigger.markdown | 14 +-- source/_docs/automation/yaml.markdown | 10 +- source/_docs/blueprint/schema.markdown | 4 +- source/_docs/blueprint/selectors.markdown | 4 +- source/_docs/blueprint/tutorial.markdown | 6 +- .../splitting_configuration.markdown | 20 ++-- .../_docs/configuration/templating.markdown | 2 +- source/_docs/scene.markdown | 6 +- source/_docs/scene/editor.markdown | 2 +- source/_docs/scripts.markdown | 92 +++++++++---------- source/_docs/scripts/service-calls.markdown | 20 ++-- source/_docs/tools/dev-tools.markdown | 2 +- .../alarm_control_panel.template.markdown | 6 +- source/_integrations/alarmdecoder.markdown | 4 +- source/_integrations/alert.markdown | 4 +- source/_integrations/alexa.intent.markdown | 10 +- source/_integrations/amazon_polly.markdown | 10 +- source/_integrations/amcrest.markdown | 20 ++-- source/_integrations/androidtv.markdown | 12 +-- .../_integrations/androidtv_remote.markdown | 68 +++++++------- source/_integrations/apple_tv.markdown | 14 +-- source/_integrations/apprise.markdown | 4 +- source/_integrations/august.markdown | 2 +- .../_integrations/azure_service_bus.markdown | 2 +- source/_integrations/backup.markdown | 4 +- source/_integrations/bang_olufsen.markdown | 28 +++--- .../binary_sensor.xiaomi_aqara.markdown | 46 +++++----- source/_integrations/blink.markdown | 12 +-- .../bmw_connected_drive.markdown | 2 +- source/_integrations/braviatv.markdown | 24 ++--- source/_integrations/bring.markdown | 4 +- source/_integrations/broadlink.markdown | 24 ++--- source/_integrations/button.markdown | 4 +- source/_integrations/calendar.markdown | 14 +-- source/_integrations/camera.markdown | 6 +- source/_integrations/cast.markdown | 26 +++--- .../_integrations/cisco_webex_teams.markdown | 6 +- source/_integrations/clicksend_tts.markdown | 2 +- source/_integrations/climate.markdown | 16 ++-- source/_integrations/color_extractor.markdown | 4 +- source/_integrations/counter.markdown | 2 +- source/_integrations/cover.markdown | 6 +- source/_integrations/cover.template.markdown | 40 ++++---- source/_integrations/deconz.markdown | 14 +-- .../_integrations/device_automation.markdown | 2 +- source/_integrations/dexcom.markdown | 2 +- source/_integrations/dialogflow.markdown | 4 +- source/_integrations/directv.markdown | 2 +- source/_integrations/discord.markdown | 6 +- source/_integrations/dlna_dms.markdown | 4 +- source/_integrations/dominos.markdown | 2 +- source/_integrations/doods.markdown | 2 +- source/_integrations/doorbird.markdown | 2 +- source/_integrations/dovado.markdown | 2 +- source/_integrations/downloader.markdown | 2 +- source/_integrations/easyenergy.markdown | 2 +- source/_integrations/ecobee.markdown | 2 +- source/_integrations/ecovacs.markdown | 2 +- source/_integrations/elgato.markdown | 2 +- source/_integrations/emulated_roku.markdown | 2 +- source/_integrations/energyzero.markdown | 2 +- source/_integrations/enocean.markdown | 2 +- source/_integrations/event.markdown | 2 +- source/_integrations/evohome.markdown | 8 +- source/_integrations/facebook.markdown | 4 +- source/_integrations/fan.markdown | 14 +-- source/_integrations/fan.template.markdown | 28 +++--- source/_integrations/feedreader.markdown | 4 +- source/_integrations/fireservicerota.markdown | 8 +- source/_integrations/flic.markdown | 4 +- source/_integrations/flume.markdown | 4 +- source/_integrations/flux_led.markdown | 4 +- source/_integrations/folder_watcher.markdown | 2 +- source/_integrations/foscam.markdown | 16 ++-- source/_integrations/foursquare.markdown | 2 +- source/_integrations/fritz.markdown | 6 +- .../fritzbox_callmonitor.markdown | 2 +- .../_integrations/frontier_silicon.markdown | 2 +- source/_integrations/fully_kiosk.markdown | 6 +- source/_integrations/geniushub.markdown | 4 +- source/_integrations/geo_location.markdown | 2 +- source/_integrations/github.markdown | 4 +- source/_integrations/goodwe.markdown | 2 +- source/_integrations/google.markdown | 2 +- .../google_assistant_sdk.markdown | 12 +-- ...google_generative_ai_conversation.markdown | 4 +- source/_integrations/google_mail.markdown | 2 +- source/_integrations/google_sheets.markdown | 4 +- .../_integrations/google_translate.markdown | 14 +-- .../_integrations/google_travel_time.markdown | 2 +- source/_integrations/group.markdown | 4 +- source/_integrations/gstreamer.markdown | 2 +- source/_integrations/harmony.markdown | 12 +-- source/_integrations/hdmi_cec.markdown | 6 +- source/_integrations/heos.markdown | 14 +-- .../_integrations/here_travel_time.markdown | 2 +- source/_integrations/hive.markdown | 6 +- source/_integrations/homeassistant.markdown | 10 +- source/_integrations/homekit.markdown | 6 +- source/_integrations/homematic.markdown | 32 +++---- .../_integrations/homematicip_cloud.markdown | 16 ++-- source/_integrations/homeworks.markdown | 2 +- source/_integrations/honeywell.markdown | 2 +- source/_integrations/html5.markdown | 2 +- source/_integrations/humidifier.markdown | 4 +- .../hunterdouglas_powerview.markdown | 4 +- .../husqvarna_automower.markdown | 2 +- source/_integrations/hyperion.markdown | 8 +- source/_integrations/ibeacon.markdown | 2 +- source/_integrations/ifttt.markdown | 8 +- .../_integrations/image_processing.markdown | 2 +- source/_integrations/imap.markdown | 6 +- source/_integrations/incomfort.markdown | 2 +- source/_integrations/input_boolean.markdown | 4 +- source/_integrations/input_button.markdown | 4 +- source/_integrations/input_datetime.markdown | 16 ++-- source/_integrations/input_number.markdown | 10 +- source/_integrations/input_select.markdown | 8 +- source/_integrations/input_text.markdown | 2 +- source/_integrations/insteon.markdown | 6 +- source/_integrations/intent_script.markdown | 4 +- source/_integrations/isy994.markdown | 2 +- source/_integrations/kaleidescape.markdown | 4 +- source/_integrations/keyboard_remote.markdown | 6 +- source/_integrations/knx.markdown | 12 +-- source/_integrations/kodi.markdown | 38 ++++---- source/_integrations/lametric.markdown | 2 +- .../landisgyr_heat_meter.markdown | 2 +- source/_integrations/lcn.markdown | 30 +++--- source/_integrations/lg_netcast.markdown | 4 +- source/_integrations/lifx.markdown | 6 +- source/_integrations/lifx_cloud.markdown | 2 +- source/_integrations/light.markdown | 4 +- source/_integrations/light.template.markdown | 40 ++++---- source/_integrations/limitlessled.markdown | 2 +- source/_integrations/lirc.markdown | 2 +- source/_integrations/litterrobot.markdown | 2 +- .../_integrations/llamalab_automate.markdown | 2 +- source/_integrations/lock.markdown | 4 +- source/_integrations/lock.template.markdown | 20 ++-- source/_integrations/logbook.markdown | 2 +- source/_integrations/logger.markdown | 4 +- source/_integrations/lutron.markdown | 2 +- source/_integrations/mailgun.markdown | 4 +- source/_integrations/manual.markdown | 14 +-- source/_integrations/mastodon.markdown | 8 +- source/_integrations/matrix.markdown | 8 +- source/_integrations/mealie.markdown | 2 +- source/_integrations/media_player.markdown | 2 +- source/_integrations/media_source.markdown | 2 +- source/_integrations/mediaroom.markdown | 4 +- source/_integrations/meteoalarm.markdown | 2 +- source/_integrations/microsoft_face.markdown | 8 +- source/_integrations/minio.markdown | 6 +- source/_integrations/modbus.markdown | 2 +- source/_integrations/modem_callerid.markdown | 6 +- source/_integrations/motion_blinds.markdown | 2 +- .../_integrations/motionblinds_ble.markdown | 2 +- source/_integrations/motioneye.markdown | 16 ++-- source/_integrations/mpd.markdown | 4 +- source/_integrations/mqtt.markdown | 6 +- source/_integrations/nest.markdown | 6 +- source/_integrations/netatmo.markdown | 8 +- source/_integrations/netgear_lte.markdown | 4 +- source/_integrations/nfandroidtv.markdown | 2 +- source/_integrations/nightscout.markdown | 2 +- source/_integrations/nissan_leaf.markdown | 4 +- source/_integrations/notify.markdown | 10 +- source/_integrations/notify_events.markdown | 2 +- source/_integrations/nws.markdown | 2 +- source/_integrations/nzbget.markdown | 2 +- source/_integrations/onkyo.markdown | 6 +- .../openai_conversation.markdown | 4 +- source/_integrations/openhome.markdown | 4 +- source/_integrations/opensky.markdown | 4 +- source/_integrations/openuv.markdown | 6 +- source/_integrations/osramlightify.markdown | 2 +- source/_integrations/overkiz.markdown | 6 +- source/_integrations/panasonic_viera.markdown | 8 +- .../persistent_notification.markdown | 8 +- source/_integrations/pi_hole.markdown | 2 +- source/_integrations/picnic.markdown | 2 +- source/_integrations/plex.markdown | 8 +- source/_integrations/plugwise.markdown | 30 +++--- source/_integrations/point.markdown | 4 +- source/_integrations/profiler.markdown | 4 +- source/_integrations/pushbullet.markdown | 8 +- source/_integrations/pushover.markdown | 8 +- source/_integrations/pushsafer.markdown | 6 +- source/_integrations/python_script.markdown | 8 +- source/_integrations/qbittorrent.markdown | 4 +- source/_integrations/qrcode.markdown | 2 +- source/_integrations/rachio.markdown | 4 +- source/_integrations/radio_browser.markdown | 2 +- source/_integrations/rainbird.markdown | 2 +- source/_integrations/recorder.markdown | 2 +- .../_integrations/remember_the_milk.markdown | 4 +- source/_integrations/rest_command.markdown | 8 +- source/_integrations/rfxtrx.markdown | 6 +- source/_integrations/ring.markdown | 2 +- source/_integrations/roborock.markdown | 4 +- source/_integrations/rocketchat.markdown | 2 +- source/_integrations/roku.markdown | 10 +- source/_integrations/roon.markdown | 4 +- source/_integrations/samsungtv.markdown | 4 +- source/_integrations/satel_integra.markdown | 2 +- source/_integrations/scene.markdown | 18 ++-- source/_integrations/schedule.markdown | 2 +- source/_integrations/script.markdown | 14 +-- source/_integrations/select.markdown | 14 +-- source/_integrations/sensibo.markdown | 4 +- source/_integrations/seventeentrack.markdown | 2 +- source/_integrations/sharkiq.markdown | 2 +- source/_integrations/shell_command.markdown | 8 +- source/_integrations/shelly.markdown | 4 +- source/_integrations/shopping_list.markdown | 2 +- source/_integrations/sighthound.markdown | 4 +- .../_integrations/signal_messenger.markdown | 8 +- source/_integrations/simplepush.markdown | 4 +- source/_integrations/slack.markdown | 2 +- source/_integrations/sms.markdown | 8 +- source/_integrations/smtp.markdown | 10 +- source/_integrations/snips.markdown | 12 +-- source/_integrations/snooz.markdown | 4 +- source/_integrations/sonos.markdown | 28 +++--- source/_integrations/soundtouch.markdown | 4 +- source/_integrations/spc.markdown | 2 +- source/_integrations/speedtestdotnet.markdown | 4 +- source/_integrations/spotify.markdown | 4 +- source/_integrations/squeezebox.markdown | 4 +- source/_integrations/switch.template.markdown | 32 +++---- source/_integrations/switchbot.markdown | 6 +- source/_integrations/system_bridge.markdown | 16 ++-- source/_integrations/system_log.markdown | 6 +- source/_integrations/tado.markdown | 8 +- source/_integrations/tag.markdown | 2 +- source/_integrations/telegram.markdown | 14 +-- source/_integrations/telegram_bot.markdown | 34 +++---- source/_integrations/template.markdown | 4 +- source/_integrations/tensorflow.markdown | 2 +- .../_integrations/thermoworks_smoke.markdown | 2 +- source/_integrations/tibber.markdown | 4 +- source/_integrations/timer.markdown | 12 +-- source/_integrations/todo.markdown | 10 +- source/_integrations/totalconnect.markdown | 6 +- source/_integrations/tplink.markdown | 4 +- source/_integrations/traccar_server.markdown | 2 +- source/_integrations/transmission.markdown | 4 +- source/_integrations/tts.markdown | 10 +- source/_integrations/twilio.markdown | 4 +- source/_integrations/twilio_call.markdown | 2 +- source/_integrations/twilio_sms.markdown | 2 +- source/_integrations/universal.markdown | 70 +++++++------- source/_integrations/upb.markdown | 8 +- source/_integrations/update.markdown | 8 +- source/_integrations/utility_meter.markdown | 4 +- source/_integrations/vacuum.mqtt.markdown | 2 +- source/_integrations/vacuum.template.markdown | 22 ++--- source/_integrations/valve.markdown | 4 +- source/_integrations/velbus.markdown | 6 +- source/_integrations/velux.markdown | 2 +- source/_integrations/verisure.markdown | 2 +- source/_integrations/vivotek.markdown | 4 +- source/_integrations/wake_on_lan.markdown | 4 +- source/_integrations/water_heater.markdown | 6 +- source/_integrations/watson_tts.markdown | 10 +- .../_integrations/waze_travel_time.markdown | 2 +- source/_integrations/weather.markdown | 4 +- source/_integrations/webostv.markdown | 12 +-- source/_integrations/wemo.markdown | 2 +- source/_integrations/wled.markdown | 16 ++-- source/_integrations/workday.markdown | 4 +- source/_integrations/xbox.markdown | 20 ++-- source/_integrations/xiaomi_aqara.markdown | 6 +- source/_integrations/xiaomi_miio.markdown | 24 ++--- source/_integrations/xmpp.markdown | 12 +-- source/_integrations/yamaha.markdown | 6 +- .../_integrations/yamaha_musiccast.markdown | 4 +- source/_integrations/zoneminder.markdown | 2 +- source/_integrations/zwave_js.markdown | 18 ++-- .../conversation_notify_agent_agenda.yaml | 8 +- 284 files changed, 1116 insertions(+), 1116 deletions(-) diff --git a/source/_docs/automation/action.markdown b/source/_docs/automation/action.markdown index ab37fb54837..85705f0cd4f 100644 --- a/source/_docs/automation/action.markdown +++ b/source/_docs/automation/action.markdown @@ -18,7 +18,7 @@ automation: - platform: sun event: sunset action: - - service: light.turn_on + - action: light.turn_on target: entity_id: - light.kitchen @@ -37,11 +37,11 @@ automation 2: notification_action: notify.paulus_iphone action: # Actions are scripts so can also be a list of actions - - service: "{{ notification_action }}" + - action: "{{ notification_action }}" data: message: "Beautiful sunset!" - delay: 0:35 - - service: notify.notify + - action: notify.notify data: message: "Oh wow you really missed something great." ``` @@ -58,7 +58,7 @@ automation: entity_id: sensor.office_occupancy to: "on" action: - - service: notify.notify + - action: notify.notify data: message: "Testing conditional actions" - condition: or @@ -70,7 +70,7 @@ automation: - condition: state entity_id: sensor.office_illuminance below: 10 - - service: scene.turn_on + - action: scene.turn_on target: entity_id: scene.office_at_evening ``` diff --git a/source/_docs/automation/condition.markdown b/source/_docs/automation/condition.markdown index 52080461cff..6007e08d64a 100644 --- a/source/_docs/automation/condition.markdown +++ b/source/_docs/automation/condition.markdown @@ -30,7 +30,7 @@ automation: entity_id: sensor.office_lux_sensor below: 10 action: - - service: scene.turn_on + - action: scene.turn_on target: entity_id: scene.office_lights ``` @@ -50,7 +50,7 @@ automation: to: "on" condition: "{{ state_attr('sun.sun', 'elevation') < 4 }}" action: - - service: scene.turn_on + - action: scene.turn_on target: entity_id: scene.office_lights ``` diff --git a/source/_docs/automation/templating.markdown b/source/_docs/automation/templating.markdown index 59b114abce2..514b5d96deb 100644 --- a/source/_docs/automation/templating.markdown +++ b/source/_docs/automation/templating.markdown @@ -206,7 +206,7 @@ automation: entity_id: device_tracker.paulus id: paulus_device action: - - service: notify.notify + - action: notify.notify data: message: > Paulus just changed from {{ trigger.from_state.state }} @@ -219,7 +219,7 @@ automation 2: - platform: mqtt topic: "/notify/+" action: - service: > + action: > notify.{{ trigger.topic.split('/')[-1] }} data: message: "{{ trigger.payload }}" @@ -236,7 +236,7 @@ automation 3: # Trigger when someone leaves one of those lights on for 10 minutes. for: "00:10:00" action: - - service: light.turn_off + - action: light.turn_off target: # Turn off whichever entity triggered the automation. entity_id: "{{ trigger.entity_id }}" @@ -257,7 +257,7 @@ automation 4: value_template: "{{ trigger.event.data.tag_id == '8b6d6755-b4d5-4c23-818b-cf224d221ab7'}}" action: # Turn off various lights - - service: light.turn_off + - action: light.turn_off target: entity_id: - light.kitchen diff --git a/source/_docs/automation/trigger.markdown b/source/_docs/automation/trigger.markdown index a1e246c7497..1fa98c1a3de 100644 --- a/source/_docs/automation/trigger.markdown +++ b/source/_docs/automation/trigger.markdown @@ -339,7 +339,7 @@ automation: minutes: "{{ states('input_number.high_temp_min')|int }}" seconds: "{{ states('input_number.high_temp_sec')|int }}" action: - - service: persistent_notification.create + - action: persistent_notification.create data: message: > {{ trigger.to_state.name }} too high for {{ trigger.for }}! @@ -515,7 +515,7 @@ automation: minutes: "{{ states('input_number.lock_min')|int }}" seconds: "{{ states('input_number.lock_sec')|int }}" action: - - service: lock.lock + - action: lock.lock target: entity_id: lock.my_place ``` @@ -574,7 +574,7 @@ automation: # Can be a positive or negative number below: -4.0 action: - - service: switch.turn_on + - action: switch.turn_on target: entity_id: switch.exterior_lighting ``` @@ -713,10 +713,10 @@ automation: entity_id: binary_sensor.motion to: "on" action: - - service: climate.turn_on + - action: climate.turn_on target: entity_id: climate.office - - service: input_datetime.set_datetime + - action: input_datetime.set_datetime target: entity_id: input_datetime.turn_off_ac data: @@ -727,7 +727,7 @@ automation: - platform: time at: input_datetime.turn_off_ac action: - - service: climate.turn_off + - action: climate.turn_off target: entity_id: climate.office ``` @@ -744,7 +744,7 @@ automation: - platform: time at: sensor.phone_next_alarm action: - - service: light.turn_on + - action: light.turn_on target: entity_id: light.bedroom ``` diff --git a/source/_docs/automation/yaml.markdown b/source/_docs/automation/yaml.markdown index 11f4e351147..f1f383ee089 100644 --- a/source/_docs/automation/yaml.markdown +++ b/source/_docs/automation/yaml.markdown @@ -158,7 +158,7 @@ automation my_lights: before: "23:00:00" action: # With a single service entry, we don't need a '-' before service - though you can if you want to - - service: homeassistant.turn_on + - action: homeassistant.turn_on target: entity_id: group.living_room @@ -169,7 +169,7 @@ automation my_lights: entity_id: all to: "not_home" action: - - service: light.turn_off + - action: light.turn_off target: entity_id: all @@ -184,7 +184,7 @@ automation my_lights: - condition: time after: "20:00" action: - - service: notify.notify + - action: notify.notify data: message: "Paulus left the house" @@ -197,7 +197,7 @@ automation my_lights: event_data: entity_id: binary_sensor.cube_158d000103a3de action: - - service: notify.pushover + - action: notify.pushover data: title: "Cube event detected" message: "Cube has triggered this event: {{ trigger.event }}" @@ -256,7 +256,7 @@ If you want to migrate your manual automations to use the editor, you'll have to below: 25 value_template: "{{ float(state.state) + 2 }}" action: - - service: light.turn_on + - action: light.turn_on ``` {% endraw %} diff --git a/source/_docs/blueprint/schema.markdown b/source/_docs/blueprint/schema.markdown index 93d404a14e2..bac52d9e98c 100644 --- a/source/_docs/blueprint/schema.markdown +++ b/source/_docs/blueprint/schema.markdown @@ -271,7 +271,7 @@ trigger: to: "on" action: - - service: light.turn_on + - action: light.turn_on target: !input light_target - wait_for_trigger: platform: state @@ -279,7 +279,7 @@ action: from: "on" to: "off" - delay: !input no_motion_wait - - service: light.turn_off + - action: light.turn_off target: !input light_target ``` diff --git a/source/_docs/blueprint/selectors.markdown b/source/_docs/blueprint/selectors.markdown index 2282adf51de..3a5a58fbad0 100644 --- a/source/_docs/blueprint/selectors.markdown +++ b/source/_docs/blueprint/selectors.markdown @@ -75,7 +75,7 @@ The output of this selector is a list of actions. For example: ```yaml # Example action selector output result -- service: scene.turn_on +- action: scene.turn_on target: entity_id: scene.watching_movies metadata: {} @@ -1372,7 +1372,7 @@ a script sequence. For example: ```yaml action: - - service: light.turn_on + - action: light.turn_on target: !input lights ``` diff --git a/source/_docs/blueprint/tutorial.markdown b/source/_docs/blueprint/tutorial.markdown index 7b1fba184ce..93aee690b03 100644 --- a/source/_docs/blueprint/tutorial.markdown +++ b/source/_docs/blueprint/tutorial.markdown @@ -49,7 +49,7 @@ trigger: entity_id: binary_sensor.motion_kitchen action: - service: > + action: > {% if trigger.to_state.state == "on" %} light.turn_on {% else %} @@ -104,7 +104,7 @@ Inputs are not limited to strings. They can contain complex objects too. So in t ```yaml action: - service: > + action: > {% if trigger.to_state.state == "on" %} light.turn_on {% else %} @@ -238,7 +238,7 @@ trigger: entity_id: !input motion_sensor action: - - service: > + - action: > {% if trigger.to_state.state == "on" %} light.turn_on {% else %} diff --git a/source/_docs/configuration/splitting_configuration.markdown b/source/_docs/configuration/splitting_configuration.markdown index 4a4f9576d6e..22984656170 100644 --- a/source/_docs/configuration/splitting_configuration.markdown +++ b/source/_docs/configuration/splitting_configuration.markdown @@ -272,7 +272,7 @@ automation: entity_id: device_tracker.iphone to: "home" action: - service: light.turn_on + action: light.turn_on target: entity_id: light.entryway - alias: "Automation 2" @@ -281,7 +281,7 @@ automation: entity_id: device_tracker.iphone from: "home" action: - service: light.turn_off + action: light.turn_off target: entity_id: light.entryway ``` @@ -303,7 +303,7 @@ trigger: entity_id: device_tracker.iphone to: "home" action: - service: light.turn_on + action: light.turn_on target: entity_id: light.entryway ``` @@ -317,7 +317,7 @@ trigger: entity_id: device_tracker.iphone from: "home" action: - service: light.turn_off + action: light.turn_off target: entity_id: light.entryway ``` @@ -334,7 +334,7 @@ alexa: intents: LocateIntent: action: - service: notify.pushover + action: notify.pushover data: message: "Your location has been queried via Alexa." speech: @@ -372,7 +372,7 @@ alexa: ```yaml {% raw %} action: - service: notify.pushover + action: notify.pushover data: message: "Your location has been queried via Alexa." speech: @@ -413,7 +413,7 @@ automation: entity_id: device_tracker.iphone to: "home" action: - - service: light.turn_on + - action: light.turn_on target: entity_id: light.entryway - alias: "Automation 2" @@ -422,7 +422,7 @@ automation: entity_id: device_tracker.iphone from: "home" action: - - service: light.turn_off + - action: light.turn_off target: entity_id: light.entryway ``` @@ -444,7 +444,7 @@ automation: !include_dir_merge_list automation/ entity_id: device_tracker.iphone to: "home" action: - - service: light.turn_on + - action: light.turn_on target: entity_id: light.entryway - alias: "Automation 2" @@ -453,7 +453,7 @@ automation: !include_dir_merge_list automation/ entity_id: device_tracker.iphone from: "home" action: - - service: light.turn_off + - action: light.turn_off target: entity_id: light.entryway ``` diff --git a/source/_docs/configuration/templating.markdown b/source/_docs/configuration/templating.markdown index 6b78a537254..bfa929f53f2 100644 --- a/source/_docs/configuration/templating.markdown +++ b/source/_docs/configuration/templating.markdown @@ -34,7 +34,7 @@ Templates can get big pretty fast. To keep a clear overview, consider using YAML script: msg_who_is_home: sequence: - - service: notify.notify + - action: notify.notify data: message: > {% if is_state('device_tracker.paulus', 'home') %} diff --git a/source/_docs/scene.markdown b/source/_docs/scene.markdown index 2e6a219b4f3..9f23ca2093d 100644 --- a/source/_docs/scene.markdown +++ b/source/_docs/scene.markdown @@ -63,7 +63,7 @@ automation: from: "not_home" to: "home" action: - service: scene.turn_on + action: scene.turn_on target: entity_id: scene.romantic ``` @@ -81,7 +81,7 @@ automation: from: "not_home" to: "home" action: - service: scene.apply + action: scene.apply data: entities: light.tv_back_light: @@ -110,7 +110,7 @@ automation: from: "not_home" to: "home" action: - service: scene.turn_on + action: scene.turn_on target: entity_id: scene.romantic data: diff --git a/source/_docs/scene/editor.markdown b/source/_docs/scene/editor.markdown index 42c31d0d836..63c2ff87fde 100644 --- a/source/_docs/scene/editor.markdown +++ b/source/_docs/scene/editor.markdown @@ -19,7 +19,7 @@ The menu on the top-right has options to **Duplicate scene** and **Delete scene* A scene can be called in {% term automation %} action and {% term scripts %} using a turn on scene {% term action %}: ```yaml -service: scene.turn_on +action: scene.turn_on target: entity_id: scene.my_unique_id ``` diff --git a/source/_docs/scripts.markdown b/source/_docs/scripts.markdown index 8045bad1182..2151544aeda 100644 --- a/source/_docs/scripts.markdown +++ b/source/_docs/scripts.markdown @@ -21,11 +21,11 @@ script: sequence: # This is written using the Script Syntax - alias: "Turn on ceiling light" - service: light.turn_on + action: light.turn_on target: entity_id: light.ceiling - alias: "Notify that ceiling light is turned on" - service: notify.notify + action: notify.notify data: message: "Turned on the ceiling light!" ``` @@ -38,7 +38,7 @@ Performing an action can be done in various ways. For all the different possibil ```yaml - alias: "Bedroom lights on" - service: light.turn_on + action: light.turn_on target: entity_id: group.bedroom data: @@ -67,7 +67,7 @@ The variables {% term action %} allows you to set/override variables that will b - light.living_room brightness: 100 - alias: "Control lights" - service: light.turn_on + action: light.turn_on target: entity_id: "{{ entities }}" data: @@ -85,7 +85,7 @@ Variables can be templated. variables: blind_state_message: "The blind is {{ states('cover.blind') }}." - alias: "Notify about the state of the blind" - service: notify.mobile_app_iphone + action: notify.mobile_app_iphone data: message: "{{ blind_state_message }}" ``` @@ -115,11 +115,11 @@ sequence: - variables: people: "{{ people + 1 }}" # At this scope, people will now be 1 ... - - service: notify.notify + - action: notify.notify data: message: "There are {{ people }} people home" # "There are 1 people home" # ... but at this scope it will still be 0 - - service: notify.notify + - action: notify.notify data: message: "There are {{ people }} people home" # "There are 0 people home" ``` @@ -296,9 +296,9 @@ This can be used to take different actions based on whether or not the condition - if: - "{{ not wait.completed }}" then: - - service: script.door_did_not_open + - action: script.door_did_not_open else: - - service: script.turn_on + - action: script.turn_on target: entity_id: - script.door_did_open @@ -308,7 +308,7 @@ This can be used to take different actions based on whether or not the condition - wait_template: "{{ is_state('binary_sensor.door_1', 'on') }}" timeout: 10 continue_on_timeout: false -- service: switch.turn_on +- action: switch.turn_on target: entity_id: switch.some_light - wait_for_trigger: @@ -318,7 +318,7 @@ This can be used to take different actions based on whether or not the condition for: 2 timeout: "{{ wait.remaining }}" continue_on_timeout: false -- service: switch.turn_off +- action: switch.turn_off target: entity_id: switch.some_light ``` @@ -380,7 +380,7 @@ The following {% term automation %} example shows how to capture the custom even - platform: event event_type: event_light_state_changed action: - - service: notify.notify + - action: notify.notify data: message: "kitchen light is turned {{ trigger.event.data.state }}" ``` @@ -404,7 +404,7 @@ script: flash_light: mode: restart sequence: - - service: light.turn_on + - action: light.turn_on target: entity_id: "light.{{ light }}" - alias: "Cycle light 'count' times" @@ -412,13 +412,13 @@ script: count: "{{ count|int * 2 - 1 }}" sequence: - delay: 2 - - service: light.toggle + - action: light.toggle target: entity_id: "light.{{ light }}" flash_hallway_light: sequence: - alias: "Flash hallway light 3 times" - service: script.flash_light + action: script.flash_light data: light: hallway count: 3 @@ -445,7 +445,7 @@ repeat: - "kitchen" - "office" sequence: - - service: light.turn_off + - action: light.turn_off target: entity_id: "light.{{ repeat.item }}" ``` @@ -465,7 +465,7 @@ repeat: - language: Dutch message: Hallo Wereld sequence: - - service: notify.phone + - action: notify.phone data: title: "Message in {{ repeat.item.language }}" message: "{{ repeat.item.message }}!" @@ -484,7 +484,7 @@ is run. The sequence will be run _as long as_ the condition(s) evaluate to true. script: do_something: sequence: - - service: script.get_ready_for_something + - action: script.get_ready_for_something - alias: "Repeat the sequence AS LONG AS the conditions are true" repeat: while: @@ -495,7 +495,7 @@ script: - condition: template value_template: "{{ repeat.index <= 20 }}" sequence: - - service: script.something + - action: script.something ``` {% endraw %} @@ -538,7 +538,7 @@ automation: repeat: sequence: # Run command that for some reason doesn't always work - - service: shell_command.turn_something_on + - action: shell_command.turn_something_on # Give it time to complete - delay: milliseconds: 200 @@ -590,12 +590,12 @@ script: state: 0 then: - alias: "Then start cleaning already!" - service: vacuum.start + action: vacuum.start target: area_id: living_room # The `else` is fully optional and can be omitted else: - - service: notify.notify + - action: notify.notify data: message: "Skipped cleaning, someone is home!" ``` @@ -633,24 +633,24 @@ automation: - condition: template value_template: "{{ now().hour < 9 }}" sequence: - - service: script.sim_morning + - action: script.sim_morning # ELIF day - conditions: - condition: template value_template: "{{ now().hour < 18 }}" sequence: - - service: light.turn_off + - action: light.turn_off target: entity_id: light.living_room - - service: script.sim_day + - action: script.sim_day # ELSE night default: - - service: light.turn_off + - action: light.turn_off target: entity_id: light.kitchen - delay: minutes: "{{ range(1, 11)|random }}" - - service: light.turn_off + - action: light.turn_off target: entity_id: all ``` @@ -673,22 +673,22 @@ automation: {{ trigger.to_state.state == 'Home' and is_state('binary_sensor.all_clear', 'on') }} sequence: - - service: script.arrive_home + - action: script.arrive_home data: ok: true - conditions: > {{ trigger.to_state.state == 'Home' and is_state('binary_sensor.all_clear', 'off') }} sequence: - - service: script.turn_on + - action: script.turn_on target: entity_id: script.flash_lights - - service: script.arrive_home + - action: script.arrive_home data: ok: false - conditions: "{{ trigger.to_state.state == 'Away' }}" sequence: - - service: script.left_home + - action: script.left_home ``` {% endraw %} @@ -713,7 +713,7 @@ automation: below: 4 action: # This must always apply - - service: light.turn_on + - action: light.turn_on data: brightness: 255 color_temp: 366 @@ -728,7 +728,7 @@ automation: entity_id: binary_sensor.livingroom_tv state: "on" sequence: - - service: light.turn_on + - action: light.turn_on data: brightness: 255 color_temp: 366 @@ -741,7 +741,7 @@ automation: entity_id: binary_sensor.studio_pc state: "on" sequence: - - service: light.turn_on + - action: light.turn_on data: brightness: 255 color_temp: 366 @@ -777,18 +777,18 @@ automation: action: - alias: "Turn on devices" sequence: - - service: light.turn_on + - action: light.turn_on target: entity_id: light.ceiling - - service: siren.turn_on + - action: siren.turn_on target: entity_id: siren.noise_maker - alias: "Send notifications" sequence: - - service: notify.person1 + - action: notify.person1 data: message: "The motion sensor was triggered!" - - service: notify.person2 + - action: notify.person2 data: message: "Oh oh, someone triggered the motion sensor..." ``` @@ -813,10 +813,10 @@ automation: to: "on" action: - parallel: - - service: notify.person1 + - action: notify.person1 data: message: "These messages are sent at the same time!" - - service: notify.person2 + - action: notify.person2 data: message: "These messages are sent at the same time!" ``` @@ -834,10 +834,10 @@ script: - platform: state entity_id: binary_sensor.motion to: "on" - - service: notify.person1 + - action: notify.person1 data: message: "This message awaited the motion trigger" - - service: notify.person2 + - action: notify.person2 data: message: "I am sent immediately and do not await the above action!" ``` @@ -915,12 +915,12 @@ it encounters an error; it will continue to the next {% term action %}. ```yaml - alias: "If this one fails..." continue_on_error: true - service: notify.super_unreliable_service_provider + action: notify.super_unreliable_service_provider data: message: "I'm going to error out..." - alias: "This one will still run!" - service: persistent_notification.create + action: persistent_notification.create data: title: "Hi there!" message: "I'm fine..." @@ -943,13 +943,13 @@ script: # The message will not be sent. - enabled: false alias: "Notify that the ceiling light is being turned on" - service: notify.notify + action: notify.notify data: message: "Turning on the ceiling light!" # This action will run, as it is not disabled - alias: "Turn on the ceiling light" - service: light.turn_on + action: light.turn_on target: entity_id: light.ceiling ``` diff --git a/source/_docs/scripts/service-calls.markdown b/source/_docs/scripts/service-calls.markdown index ab9676ae411..c51c0992416 100644 --- a/source/_docs/scripts/service-calls.markdown +++ b/source/_docs/scripts/service-calls.markdown @@ -18,7 +18,7 @@ Use the "Actions" tab under **Developer tools** to discover available actions. Perform the action `homeassistant.turn_on` on the {% term entity %} `group.living_room`. This will turn all members of `group.living_room` on. You can also use `entity_id: all` and it will turn on all possible entities. ```yaml -service: homeassistant.turn_on +action: homeassistant.turn_on entity_id: group.living_room ``` @@ -34,7 +34,7 @@ The following example uses a single action to turn on the lights in the living room area, 2 additional light devices and 2 additional light entities: ```yaml -service: light.turn_on +action: light.turn_on target: area_id: living_room device_id: @@ -50,7 +50,7 @@ target: You can also specify other parameters beside the entity to target. For example, the `light.turn_on` action allows specifying the brightness. ```yaml -service: light.turn_on +action: light.turn_on entity_id: group.living_room data: brightness: 120 @@ -66,7 +66,7 @@ You can use [templating] support to dynamically choose which action to perform. {% raw %} ```yaml -service: > +action: > {% if states('sensor.temperature') | float > 15 %} switch.turn_on {% else %} @@ -85,8 +85,8 @@ For example, you may test turning on or off a 'group' (See [groups](/integration To turn a group on or off, pass the following info: - Domain: `homeassistant` -- Service: `turn_on` -- Service Data: `{ "entity_id": "group.kitchen" }` +- Action: `turn_on` +- Action data: `{ "entity_id": "group.kitchen" }` ### Use templates to determine the attributes @@ -95,7 +95,7 @@ Templates can also be used for the data that you pass to the action. {% raw %} ```yaml -service: thermostat.set_temperature +action: thermostat.set_temperature target: entity_id: > {% if is_state('device_tracker.paulus', 'home') %} @@ -114,7 +114,7 @@ You can use a template returning a native dictionary as well, which is useful if {% raw %} ```yaml -service: climate.set_temperature +action: climate.set_temperature data: > {% if states('sensor.temperature_living') < 19 %} {"hvac_mode": "heat", "temperature": 19 } @@ -138,7 +138,7 @@ that contains the response data. You can define any name for your `response_vari {% raw %} ```yaml -service: calendar.get_events +action: calendar.get_events target: entity_id: calendar.school data: @@ -160,7 +160,7 @@ Which data fields can be used in an action depends on the type of notification t {% raw %} ```yaml -service: notify.gmail_com +action: notify.gmail_com data: target: "gduser1@workspacesamples.dev" title: "Daily agenda for {{ now().date() }}" diff --git a/source/_docs/tools/dev-tools.markdown b/source/_docs/tools/dev-tools.markdown index d6504dda3ba..d4354848519 100644 --- a/source/_docs/tools/dev-tools.markdown +++ b/source/_docs/tools/dev-tools.markdown @@ -108,7 +108,7 @@ If there is an automation that handles that event, it will be automatically trig platform: event event_type: event_light_state_changed action: - - service: notify.notify + - action: notify.notify data: message: "Light is turned {{ trigger.event.data.state }}" ``` diff --git a/source/_integrations/alarm_control_panel.template.markdown b/source/_integrations/alarm_control_panel.template.markdown index 3f251c1bbf3..7bd048f92ae 100644 --- a/source/_integrations/alarm_control_panel.template.markdown +++ b/source/_integrations/alarm_control_panel.template.markdown @@ -45,13 +45,13 @@ alarm_control_panel: safe_alarm_panel: value_template: "{{ states('alarm_control_panel.real_alarm') }}" arm_away: - service: alarm_control_panel.alarm_arm_away + action: alarm_control_panel.alarm_arm_away target: entity_id: alarm_control_panel.real_alarm data: code: !secret alarm_code arm_home: - service: alarm_control_panel.alarm_arm_home + action: alarm_control_panel.alarm_arm_home target: entity_id: alarm_control_panel.real_alarm data: @@ -60,7 +60,7 @@ alarm_control_panel: - condition: state entity_id: device_tracker.paulus state: "home" - - service: alarm_control_panel.alarm_disarm + - action: alarm_control_panel.alarm_disarm target: entity_id: alarm_control_panel.real_alarm data: diff --git a/source/_integrations/alarmdecoder.markdown b/source/_integrations/alarmdecoder.markdown index e5eb3f90396..8d9cd96f9e2 100644 --- a/source/_integrations/alarmdecoder.markdown +++ b/source/_integrations/alarmdecoder.markdown @@ -132,7 +132,7 @@ Using a combination of the available {% term actions %} and attributes, you can entity_id: alarm_control_panel.alarm_panel attribute: chime state: False - - service: alarmdecoder.alarm_toggle_chime + - action: alarmdecoder.alarm_toggle_chime target: entity_id: alarm_control_panel.alarm_panel data: @@ -142,7 +142,7 @@ Using a combination of the available {% term actions %} and attributes, you can entity_id: alarm_control_panel.alarm_panel attribute: chime state: True - - service: alarmdecoder.alarm_toggle_chime + - action: alarmdecoder.alarm_toggle_chime target: entity_id: alarm_control_panel.alarm_panel data: diff --git a/source/_integrations/alert.markdown b/source/_integrations/alert.markdown index 0ad2520f5e0..236933574d7 100644 --- a/source/_integrations/alert.markdown +++ b/source/_integrations/alert.markdown @@ -135,7 +135,7 @@ provided by the `alert` integration: - platform: group name: john_phone_sms services: - - service: twilio_sms + - action: twilio_sms data: target: !secret john_phone ``` @@ -291,7 +291,7 @@ but you will still receive the done message. event_data: data: "/garage_acknowledge" action: - - service: alert.turn_off + - action: alert.turn_off target: entity_id: alert.garage_door ``` diff --git a/source/_integrations/alexa.intent.markdown b/source/_integrations/alexa.intent.markdown index 3a6cd09ec7c..e79d7f99681 100644 --- a/source/_integrations/alexa.intent.markdown +++ b/source/_integrations/alexa.intent.markdown @@ -220,7 +220,7 @@ Then add the intent to your `intent_script` section in your HA configuration fil intent_script: ActivateSceneIntent: action: - service: scene.turn_on + action: scene.turn_on target: entity_id: scene.{{ Scene | replace(" ", "_") }} data: @@ -274,7 +274,7 @@ Then add the intent to your intent_script section in your HA configuration file: intent_script: RunScriptIntent: action: - service: script.turn_on + action: script.turn_on target: entity_id: script.{{ Script | replace(" ", "_") }} speech: @@ -304,7 +304,7 @@ The configuration is the same as an intent with the exception being you will use intent_script: amzn1.ask.skill.08888888-7777-6666-5555-444444444444: action: - service: script.turn_on + action: script.turn_on target: entity_id: script.red_alert speech: @@ -337,7 +337,7 @@ intent_script: speech: text: Done. Good night! action: - service: switch.turn_off + action: switch.turn_off target: entity_id: - switch.room1 @@ -347,7 +347,7 @@ intent_script: text: Alright amzn1.ask.skill.08888888-7777-6666-5555-444444444444.SessionEndedRequest: action: - service: switch.turn_off + action: switch.turn_off target: entity_id: - switch.room1 diff --git a/source/_integrations/amazon_polly.markdown b/source/_integrations/amazon_polly.markdown index 1bf7d227454..b0c8284c4d6 100644 --- a/source/_integrations/amazon_polly.markdown +++ b/source/_integrations/amazon_polly.markdown @@ -87,7 +87,7 @@ engine: Say to all `media_player` device entities: ```yaml -- service: tts.amazon_polly_say +- action: tts.amazon_polly_say data: message: "Hello from Amazon Polly" ``` @@ -95,7 +95,7 @@ Say to all `media_player` device entities: or ```yaml -- service: tts.amazon_polly_say +- action: tts.amazon_polly_say data: message: > @@ -106,7 +106,7 @@ or Say to the `media_player.living_room` device entity: ```yaml -- service: tts.amazon_polly_say +- action: tts.amazon_polly_say target: entity_id: media_player.living_room message: > @@ -118,7 +118,7 @@ Say to the `media_player.living_room` device entity: Say with break: ```yaml -- service: tts.amazon_polly_say +- action: tts.amazon_polly_say data: message: > @@ -140,7 +140,7 @@ Amazon Polly supports accented bilingual voices and you may find that you'd pref Note: You now need to enclose all new and previous TTS input within the `` tags. To use SSML in automation, you can follow these steps, for instance: ```yaml -service: tts.amazon_polly_say +action: tts.amazon_polly_say data: cache: true entity_id: media_player.mpd diff --git a/source/_integrations/amcrest.markdown b/source/_integrations/amcrest.markdown index 3a729edae66..c886a1df065 100644 --- a/source/_integrations/amcrest.markdown +++ b/source/_integrations/amcrest.markdown @@ -292,7 +292,7 @@ elements: bottom: 50px tap_action: action: call-service - service: amcrest.ptz_control + action: amcrest.ptz_control service_data: entity_id: camera.lakehouse movement: up @@ -304,7 +304,7 @@ elements: bottom: 0px tap_action: action: call-service - service: amcrest.ptz_control + action: amcrest.ptz_control service_data: entity_id: camera.lakehouse movement: down @@ -316,7 +316,7 @@ elements: bottom: 25px tap_action: action: call-service - service: amcrest.ptz_control + action: amcrest.ptz_control service_data: entity_id: camera.lakehouse movement: left @@ -328,7 +328,7 @@ elements: bottom: 25px tap_action: action: call-service - service: amcrest.ptz_control + action: amcrest.ptz_control service_data: entity_id: camera.lakehouse movement: right @@ -340,7 +340,7 @@ elements: bottom: 50px tap_action: action: call-service - service: amcrest.ptz_control + action: amcrest.ptz_control service_data: entity_id: camera.lakehouse movement: left_up @@ -352,7 +352,7 @@ elements: bottom: 50px tap_action: action: call-service - service: amcrest.ptz_control + action: amcrest.ptz_control service_data: entity_id: camera.lakehouse movement: right_up @@ -364,7 +364,7 @@ elements: bottom: 0px tap_action: action: call-service - service: amcrest.ptz_control + action: amcrest.ptz_control service_data: entity_id: camera.lakehouse movement: left_down @@ -376,7 +376,7 @@ elements: bottom: 0px tap_action: action: call-service - service: amcrest.ptz_control + action: amcrest.ptz_control service_data: entity_id: camera.lakehouse movement: right_down @@ -388,13 +388,13 @@ elements: right: 25px tap_action: action: call-service - service: amcrest.ptz_control + action: amcrest.ptz_control service_data: entity_id: camera.lakehouse movement: zoom_in hold_action: action: call-service - service: amcrest.ptz_control + action: amcrest.ptz_control data: entity_id: camera.lakehouse movement: zoom_out diff --git a/source/_integrations/androidtv.markdown b/source/_integrations/androidtv.markdown index db4911e50ed..8f1ba56ac34 100644 --- a/source/_integrations/androidtv.markdown +++ b/source/_integrations/androidtv.markdown @@ -119,7 +119,7 @@ You can launch an app on your device using the `media_player.select_source` comm ```yaml start_netflix: sequence: - - service: media_player.select_source + - action: media_player.select_source target: entity_id: media_player.fire_tv_living_room data: @@ -127,7 +127,7 @@ start_netflix: stop_netflix: sequence: - - service: media_player.select_source + - action: media_player.select_source target: entity_id: media_player.fire_tv_living_room data: @@ -147,7 +147,7 @@ In an [action](/getting-started/automation-action/) of your [automation setup](/ ```yaml action: - service: androidtv.adb_command + action: androidtv.adb_command target: entity_id: media_player.androidtv_tv_living_room data: @@ -189,7 +189,7 @@ As an example, an action in a [script](/docs/scripts) could be changed from this ```yaml # Send the "UP" command (slow) -- service: androidtv.adb_command +- action: androidtv.adb_command target: entity_id: media_player.fire_tv_living_room data: @@ -200,7 +200,7 @@ to this: ```yaml # Send the "UP" command using `sendevent` (faster) -- service: androidtv.adb_command +- action: androidtv.adb_command target: entity_id: media_player.fire_tv_living_room data: @@ -325,7 +325,7 @@ You can also send other Android keys using the syntax `input keyevent {key}`, re **Example to send sequence of commands:** ```yaml -service: remote.send_command +action: remote.send_command target: device_id: 12345f9b4c9863e28ddd52c87dcebe05 data: diff --git a/source/_integrations/androidtv_remote.markdown b/source/_integrations/androidtv_remote.markdown index ae917e974d2..9f3c54d8aa5 100644 --- a/source/_integrations/androidtv_remote.markdown +++ b/source/_integrations/androidtv_remote.markdown @@ -64,7 +64,7 @@ Example: ```yaml # Launch the YouTube app -service: media_player.play_media +action: media_player.play_media data: media_content_type: app media_content_id: com.google.android.youtube.tv @@ -91,7 +91,7 @@ Example: ```yaml # Open a specific YouTube video: -service: media_player.play_media +action: media_player.play_media data: media_content_type: url media_content_id: https://www.youtube.com/watch?v=dQw4w9WgXcQ @@ -107,7 +107,7 @@ Example: ```yaml # Change channel to number 15: -service: media_player.play_media +action: media_player.play_media data: media_content_type: channel media_content_id: 15 @@ -136,19 +136,19 @@ media_player: browse_media_entity: media_player.living_room_tv_cast commands: turn_off: - service: media_player.turn_off + action: media_player.turn_off data: entity_id: media_player.living_room_tv_remote turn_on: - service: media_player.turn_on + action: media_player.turn_on data: entity_id: media_player.living_room_tv_remote volume_up: - service: media_player.volume_up + action: media_player.volume_up data: entity_id: media_player.living_room_tv_remote volume_down: - service: media_player.volume_down + action: media_player.volume_down data: entity_id: media_player.living_room_tv_remote ``` @@ -249,7 +249,7 @@ Example actions: ```yaml # Open the currently selected item on the Android TV -service: remote.send_command +action: remote.send_command data: command: DPAD_CENTER target: @@ -258,7 +258,7 @@ target: ```yaml # Long press on the currently selected item on the Android TV -service: remote.send_command +action: remote.send_command data: command: DPAD_CENTER hold_secs: 0.5 @@ -268,7 +268,7 @@ target: ```yaml # Launch YouTube -service: remote.turn_on +action: remote.turn_on data: activity: https://www.youtube.com target: @@ -277,7 +277,7 @@ target: ```yaml # Open a specific YouTube video: -service: remote.turn_on +action: remote.turn_on data: activity: https://www.youtube.com/watch?v=dQw4w9WgXcQ target: @@ -318,7 +318,7 @@ cards: icon: mdi:arrow-up-bold tap_action: action: call-service - service: remote.send_command + action: remote.send_command data: command: DPAD_UP target: @@ -335,7 +335,7 @@ cards: icon: mdi:arrow-left-bold tap_action: action: call-service - service: remote.send_command + action: remote.send_command data: command: DPAD_LEFT target: @@ -346,14 +346,14 @@ cards: icon: mdi:circle tap_action: action: call-service - service: remote.send_command + action: remote.send_command data: command: DPAD_CENTER target: entity_id: remote.living_room_tv hold_action: action: call-service - service: remote.send_command + action: remote.send_command data: command: DPAD_CENTER hold_secs: 0.5 @@ -363,7 +363,7 @@ cards: icon: mdi:arrow-right-bold tap_action: action: call-service - service: remote.send_command + action: remote.send_command data: command: DPAD_RIGHT target: @@ -374,14 +374,14 @@ cards: icon: mdi:arrow-left tap_action: action: call-service - service: remote.send_command + action: remote.send_command data: command: BACK target: entity_id: remote.living_room_tv hold_action: action: call-service - service: remote.send_command + action: remote.send_command data: command: BACK hold_secs: 0.5 @@ -391,7 +391,7 @@ cards: icon: mdi:arrow-down-bold tap_action: action: call-service - service: remote.send_command + action: remote.send_command data: command: DPAD_DOWN target: @@ -402,14 +402,14 @@ cards: icon: mdi:home-outline tap_action: action: call-service - service: remote.send_command + action: remote.send_command data: command: HOME target: entity_id: remote.living_room_tv hold_action: action: call-service - service: remote.send_command + action: remote.send_command data: command: HOME hold_secs: 0.5 @@ -423,14 +423,14 @@ cards: icon: mdi:skip-previous tap_action: action: call-service - service: remote.send_command + action: remote.send_command data: command: MEDIA_PREVIOUS target: entity_id: remote.living_room_tv hold_action: action: call-service - service: remote.send_command + action: remote.send_command data: command: MEDIA_REWIND target: @@ -439,14 +439,14 @@ cards: icon: mdi:play-pause tap_action: action: call-service - service: remote.send_command + action: remote.send_command data: command: MEDIA_PLAY_PAUSE target: entity_id: remote.living_room_tv hold_action: action: call-service - service: remote.send_command + action: remote.send_command data: command: MEDIA_STOP target: @@ -455,14 +455,14 @@ cards: icon: mdi:skip-next tap_action: action: call-service - service: remote.send_command + action: remote.send_command data: command: MEDIA_NEXT target: entity_id: remote.living_room_tv hold_action: action: call-service - service: remote.send_command + action: remote.send_command data: command: MEDIA_FAST_FORWARD target: @@ -471,7 +471,7 @@ cards: icon: mdi:volume-off tap_action: action: call-service - service: remote.send_command + action: remote.send_command data: command: MUTE target: @@ -482,7 +482,7 @@ cards: icon: mdi:volume-medium tap_action: action: call-service - service: remote.send_command + action: remote.send_command data: command: VOLUME_DOWN target: @@ -493,7 +493,7 @@ cards: icon: mdi:volume-high tap_action: action: call-service - service: remote.send_command + action: remote.send_command data: command: VOLUME_UP target: @@ -508,7 +508,7 @@ cards: icon: mdi:youtube tap_action: action: call-service - service: remote.turn_on + action: remote.turn_on data: activity: https://www.youtube.com target: @@ -519,7 +519,7 @@ cards: icon: mdi:netflix tap_action: action: call-service - service: remote.turn_on + action: remote.turn_on data: activity: com.netflix.ninja target: @@ -531,7 +531,7 @@ cards: https://upload.wikimedia.org/wikipedia/commons/thumb/1/11/Amazon_Prime_Video_logo.svg/450px-Amazon_Prime_Video_logo.svg.png tap_action: action: call-service - service: remote.turn_on + action: remote.turn_on data: activity: com.amazon.amazonvideo.livingroom target: @@ -543,7 +543,7 @@ cards: https://upload.wikimedia.org/wikipedia/commons/thumb/3/3e/Disney%2B_logo.svg/440px-Disney%2B_logo.svg.png tap_action: action: call-service - service: remote.turn_on + action: remote.turn_on data: activity: com.disney.disneyplus target: diff --git a/source/_integrations/apple_tv.markdown b/source/_integrations/apple_tv.markdown index 867850067c5..364f336401e 100644 --- a/source/_integrations/apple_tv.markdown +++ b/source/_integrations/apple_tv.markdown @@ -62,7 +62,7 @@ Examples: ```yaml # Open the Netflix app at a specific title -service: media_player.play_media +action: media_player.play_media data: media_content_type: url media_content_id: https://www.netflix.com/title/80234304 @@ -72,7 +72,7 @@ target: ```yaml # Open a specific YouTube video: -service: media_player.play_media +action: media_player.play_media data: media_content_type: url media_content_id: youtube://www.youtube.com/watch?v=dQw4w9WgXcQ @@ -128,7 +128,7 @@ being in a fixed place on the home screen: lounge_appletv_netflix: alias: "Select Netflix" sequence: - - service: remote.send_command + - action: remote.send_command target: entity_id: remote.lounge_appletv data: @@ -147,7 +147,7 @@ the Media Player: apple_tv_sleep: alias: "Make the Apple TV sleep" sequence: - - service: remote.send_command + - action: remote.send_command target: entity_id: remote.lounge_appletv data: @@ -155,14 +155,14 @@ apple_tv_sleep: delay_secs: 1 command: - home - - service: remote.send_command + - action: remote.send_command target: entity_id: remote.lounge_appletv data: delay_secs: 1 command: - select - - service: media_player.turn_off + - action: media_player.turn_off target: entity_id: media_player.lounge_appletv ``` @@ -170,7 +170,7 @@ apple_tv_sleep: Send 3 `left` commands with delay between each: ```yaml -service: remote.send_command +action: remote.send_command target: entity_id: remote.apple_tv data: diff --git a/source/_integrations/apprise.markdown b/source/_integrations/apprise.markdown index d5b52d97d95..0e008ec0515 100644 --- a/source/_integrations/apprise.markdown +++ b/source/_integrations/apprise.markdown @@ -72,7 +72,7 @@ config: ## Example action ```yaml -- service: notify.NOTIFIER_NAME +- action: notify.NOTIFIER_NAME data: message: "A message from Home Assistant" ``` @@ -80,7 +80,7 @@ config: If you're using configuration files to store your Apprise URLs in, then you have the added bonus of associating tags with them. By default, Apprise in Home Assistant will only notify the elements that have no tags associated with them. You can optionally focus on only notifying a specific service based on the tag(s) you assigned them like so: ```yaml -- service: notify.NOTIFIER_NAME +- action: notify.NOTIFIER_NAME data: message: "A message from Home Assistant" target: [ diff --git a/source/_integrations/august.markdown b/source/_integrations/august.markdown index 12c7ac10d49..fec9f55ebaf 100644 --- a/source/_integrations/august.markdown +++ b/source/_integrations/august.markdown @@ -161,7 +161,7 @@ Using the lock operation sensors, you can detect when a user operates a lock and action: - data: {} entity_id: camera.inside - service: camera.turn_off + action: camera.turn_off ``` {% endraw %} diff --git a/source/_integrations/azure_service_bus.markdown b/source/_integrations/azure_service_bus.markdown index e4710c2aa0f..2de31c694bd 100644 --- a/source/_integrations/azure_service_bus.markdown +++ b/source/_integrations/azure_service_bus.markdown @@ -85,7 +85,7 @@ automation: platform: sun event: sunset action: - service: notify.test_queue + action: notify.test_queue data: message: "Sun is going down" title: "Good evening" diff --git a/source/_integrations/backup.markdown b/source/_integrations/backup.markdown index e8cc9112199..eddde8a6e0d 100644 --- a/source/_integrations/backup.markdown +++ b/source/_integrations/backup.markdown @@ -40,7 +40,7 @@ The action has no additional options or parameters. Example action: ```yaml -service: backup.create +action: backup.create ``` ### Example: Backing up every night at 3:00 AM @@ -56,7 +56,7 @@ automation: at: "03:00:00" action: alias: "Create backup now" - service: backup.create + action: backup.create ``` ## Restoring a backup diff --git a/source/_integrations/bang_olufsen.markdown b/source/_integrations/bang_olufsen.markdown index dc428e6fb61..943f45c0035 100644 --- a/source/_integrations/bang_olufsen.markdown +++ b/source/_integrations/bang_olufsen.markdown @@ -60,7 +60,7 @@ The Bang & Olufsen integration supports different playback types in the `media_p Playing [DR P1](https://www.dr.dk/lyd/p1) from a URL: ```yaml -service: media_player.play_media +action: media_player.play_media target: entity_id: media_player.beosound_balance_12345678 data: @@ -71,7 +71,7 @@ data: Activating the first favourite: ```yaml -service: media_player.play_media +action: media_player.play_media target: entity_id: media_player.beosound_balance_12345678 data: @@ -82,7 +82,7 @@ data: Playing a local file: ```yaml -service: media_player.play_media +action: media_player.play_media target: entity_id: media_player.beosound_balance_12345678 data: @@ -93,7 +93,7 @@ data: Playing a radio station: ```yaml -service: media_player.play_media +action: media_player.play_media target: entity_id: media_player.beosound_balance_12345678 data: @@ -104,7 +104,7 @@ data: Playing a Deezer flow. Optionally define a Deezer user ID: ```yaml -service: media_player.play_media +action: media_player.play_media target: entity_id: media_player.beosound_balance_12345678 data: @@ -117,7 +117,7 @@ data: Playing a Deezer playlist. Optionally define starting position for the playlist: ```yaml -service: media_player.play_media +action: media_player.play_media target: entity_id: media_player.beosound_balance_12345678 data: @@ -130,7 +130,7 @@ data: Playing a Deezer album. Optionally define starting position for the album: ```yaml -service: media_player.play_media +action: media_player.play_media target: entity_id: media_player.beosound_balance_12345678 data: @@ -143,7 +143,7 @@ data: Playing a Deezer track: ```yaml -service: media_player.play_media +action: media_player.play_media target: entity_id: media_player.beosound_balance_12345678 data: @@ -154,7 +154,7 @@ data: Playing a Tidal playlist. Optionally define starting position for the playlist: ```yaml -service: media_player.play_media +action: media_player.play_media target: entity_id: media_player.beosound_balance_12345678 data: @@ -167,7 +167,7 @@ data: Playing a Tidal album. Optionally define starting position for the album: ```yaml -service: media_player.play_media +action: media_player.play_media target: entity_id: media_player.beosound_balance_12345678 data: @@ -180,7 +180,7 @@ data: Playing a Tidal track: ```yaml -service: media_player.play_media +action: media_player.play_media target: entity_id: media_player.beosound_balance_12345678 data: @@ -208,7 +208,7 @@ Extra keys available: Playing a local file with an absolute volume as an overlay: ```yaml -service: media_player.play_media +action: media_player.play_media target: entity_id: media_player.beosound_balance_12345678 data: @@ -222,7 +222,7 @@ data: Playing a Bang & Olufsen Cloud TTS message with an offset volume (as TTS messages can be quiet): ```yaml -service: media_player.play_media +action: media_player.play_media target: entity_id: media_player.beosound_balance_12345678 data: @@ -235,7 +235,7 @@ data: Playing a Bang & Olufsen Cloud TTS message with a local language: ```yaml -service: media_player.play_media +action: media_player.play_media target: entity_id: media_player.beosound_balance_12345678 data: diff --git a/source/_integrations/binary_sensor.xiaomi_aqara.markdown b/source/_integrations/binary_sensor.xiaomi_aqara.markdown index af8af3e34ac..fa76c4353de 100644 --- a/source/_integrations/binary_sensor.xiaomi_aqara.markdown +++ b/source/_integrations/binary_sensor.xiaomi_aqara.markdown @@ -49,12 +49,12 @@ The requirement is that you have setup the [`xiaomi aqara` integration](/integra entity_id: sensor.illumination_34ce00xxxx11 below: 300 action: - - service: light.turn_on + - action: light.turn_on target: entity_id: light.gateway_light_34ce00xxxx11 data: brightness: 5 - - service: automation.turn_on + - action: automation.turn_on target: entity_id: automation.MOTION_OFF - alias: "If there no motion for 5 minutes turn off the gateway light" @@ -66,10 +66,10 @@ The requirement is that you have setup the [`xiaomi aqara` integration](/integra for: minutes: 5 action: - - service: light.turn_off + - action: light.turn_off target: entity_id: light.gateway_light_34ce00xxxx11 - - service: automation.turn_off + - action: automation.turn_off target: entity_id: automation.Motion_off ``` @@ -84,7 +84,7 @@ The requirement is that you have setup the [`xiaomi aqara` integration](/integra from: "off" to: "on" action: - service: climate.set_operation_mode + action: climate.set_operation_mode target: entity_id: climate.livingroom data: @@ -98,7 +98,7 @@ The requirement is that you have setup the [`xiaomi aqara` integration](/integra for: minutes: 5 action: - service: climate.set_operation_mode + action: climate.set_operation_mode target: entity_id: climate.livingroom data: @@ -114,7 +114,7 @@ The requirement is that you have setup the [`xiaomi aqara` integration](/integra entity_id: group.family state: "not_home" action: - - service: notify.notify_person + - action: notify.notify_person data: message: "The door has been opened" ``` @@ -129,11 +129,11 @@ The requirement is that you have setup the [`xiaomi aqara` integration](/integra from: "off" to: "on" action: - - service: notify.html5 + - action: notify.html5 data: title: Fire alarm! message: Fire/Smoke detected! - - service: xiaomi_aqara.play_ringtone + - action: xiaomi_aqara.play_ringtone data: gw_mac: xxxxxxxxxxxx ringtone_id: 2 @@ -152,7 +152,7 @@ The requirement is that you have setup the [`xiaomi aqara` integration](/integra from: "off" to: "on" action: - - service: notify.html5 + - action: notify.html5 data: title: Gas alarm! message: "Gas with a density of {{ state_attr('binary_sensor.natgas_sensor_158dxxxxxxxxxx', 'density') }} detected." @@ -173,7 +173,7 @@ As indicated in the table on top of this page there are 3 versions of the button entity_id: binary_sensor.switch_158d000xxxxxc2 click_type: single action: - service: switch.toggle + action: switch.toggle target: entity_id: switch.wall_switch_left_158d000xxxxx01 - alias: "Toggle couch light on double click" @@ -184,7 +184,7 @@ As indicated in the table on top of this page there are 3 versions of the button entity_id: binary_sensor.switch_158d000xxxxxc2 click_type: double action: - service: switch.toggle + action: switch.toggle target: entity_id: switch.wall_switch_right_158d000xxxxx01 - alias: "Let a dog bark on long press" @@ -195,7 +195,7 @@ As indicated in the table on top of this page there are 3 versions of the button entity_id: binary_sensor.switch_158d000xxxxxc2 click_type: long_click_press action: - service: xiaomi_aqara.play_ringtone + action: xiaomi_aqara.play_ringtone data: gw_mac: xxxxxxxxxxxx ringtone_id: 8 @@ -215,7 +215,7 @@ Available events are `flip90`, `flip180`, `move`, `tap_twice`, `shake_air`, `swi entity_id: binary_sensor.cube_15xxxxxxxxxxxx action_type: flip90 action: - - service: light.turn_on + - action: light.turn_on target: entity_id: light.gateway_light_28xxxxxxxxxx data: @@ -228,7 +228,7 @@ Available events are `flip90`, `flip180`, `move`, `tap_twice`, `shake_air`, `swi entity_id: binary_sensor.cube_15xxxxxxxxxxxx action_type: flip180 action: - - service: light.turn_on + - action: light.turn_on target: entity_id: light.gateway_light_28xxxxxxxxxx data: @@ -241,7 +241,7 @@ Available events are `flip90`, `flip180`, `move`, `tap_twice`, `shake_air`, `swi entity_id: binary_sensor.cube_15xxxxxxxxxxxx action_type: move action: - - service: light.turn_on + - action: light.turn_on target: entity_id: light.gateway_light_28xxxxxxxxxx data: @@ -254,7 +254,7 @@ Available events are `flip90`, `flip180`, `move`, `tap_twice`, `shake_air`, `swi entity_id: binary_sensor.cube_15xxxxxxxxxxxx action_type: tap_twice action: - - service: light.turn_on + - action: light.turn_on target: entity_id: light.gateway_light_28xxxxxxxxxx data: @@ -267,7 +267,7 @@ Available events are `flip90`, `flip180`, `move`, `tap_twice`, `shake_air`, `swi entity_id: binary_sensor.cube_15xxxxxxxxxxxx action_type: shake_air action: - - service: light.turn_on + - action: light.turn_on target: entity_id: light.gateway_light_28xxxxxxxxxx data: @@ -289,7 +289,7 @@ The Aqara Wireless Switch is available as single-key and double-key version. Eac entity_id: binary_sensor.wall_switch_left_158xxxxxxxxx12 click_type: single action: - service: light.turn_on + action: light.turn_on target: entity_id: light.gateway_light_34xxxxxxxx13 data: @@ -312,7 +312,7 @@ The Aqara Wireless Switch is available as single-key and double-key version. Eac entity_id: binary_sensor.wall_switch_right_158xxxxxxxxx12 click_type: single action: - service: light.turn_on + action: light.turn_on target: entity_id: light.gateway_light_34xxxxxxxx13 data: @@ -335,7 +335,7 @@ The Aqara Wireless Switch is available as single-key and double-key version. Eac entity_id: binary_sensor.wall_switch_both_158xxxxxxxxx12 click_type: both action: - service: light.turn_off + action: light.turn_off target: entity_id: light.gateway_light_34xxxxxxxx13 ``` @@ -355,7 +355,7 @@ This automation toggles the living room lamp on vibration/tilt. entity_id: binary_sensor.vibration_xxxx000000 movement_type: vibrate action: - service: light.toggle + action: light.toggle target: entity_id: light.living_room_lamp - alias: "Turn on Living Room Lamp on tilt" @@ -366,7 +366,7 @@ This automation toggles the living room lamp on vibration/tilt. entity_id: binary_sensor.vibration_xxxx000000 movement_type: tilt action: - service: light.toggle + action: light.toggle target: entity_id: light.living_room_lamp ``` diff --git a/source/_integrations/blink.markdown b/source/_integrations/blink.markdown index 13ade842553..e8168832005 100644 --- a/source/_integrations/blink.markdown +++ b/source/_integrations/blink.markdown @@ -116,10 +116,10 @@ This example script shows how to take a picture with your camera, named `My Came ```yaml alias: "Blink Snap Picture" sequence: - - service: blink.trigger_camera + - action: blink.trigger_camera target: entity_id: camera.blink_my_camera - - service: camera.snapshot + - action: camera.snapshot target: entity_id: camera.blink_my_camera data: @@ -140,7 +140,7 @@ Here, this example assumes your blink module is named `My Sync Module` and that entity_id: all to: "not_home" action: - service: alarm_control_panel.alarm_arm_away + action: alarm_control_panel.alarm_arm_away target: entity_id: alarm_control_panel.blink_my_sync_module ``` @@ -157,7 +157,7 @@ Similar to the previous example, this automation will disarm blink when arriving entity_id: all to: "home" action: - service: alarm_control_panel.alarm_disarm + action: alarm_control_panel.alarm_disarm target: entity_id: alarm_control_panel.blink_my_sync_module ``` @@ -178,7 +178,7 @@ The following example assumes your camera's name (in the Blink app) is `My Camer entity_id: binary_sensor.blink_my_camera_motion_detected to: "on" action: - - service: blink.save_video + - action: blink.save_video target: entity_id: camera.blink_my_camera data: @@ -206,7 +206,7 @@ The file name of the downloaded video file is not configurable. - platform: time_pattern minutes: /3 action: - - service: blink.save_recent_clips + - action: blink.save_recent_clips target: entity_id: camera.my_camera data: diff --git a/source/_integrations/bmw_connected_drive.markdown b/source/_integrations/bmw_connected_drive.markdown index 33d226fd636..7cc6077ffac 100644 --- a/source/_integrations/bmw_connected_drive.markdown +++ b/source/_integrations/bmw_connected_drive.markdown @@ -79,7 +79,7 @@ The name of the action is `notify.bmw_connected_drive_`. ```yaml ... action: - service: notify.bmw_connected_drive_ + action: notify.bmw_connected_drive_ data: message: The name of the POI # this is shown on the iDrive dashboard data: diff --git a/source/_integrations/braviatv.markdown b/source/_integrations/braviatv.markdown index 83e5c4c4145..7ed542b6025 100644 --- a/source/_integrations/braviatv.markdown +++ b/source/_integrations/braviatv.markdown @@ -69,36 +69,36 @@ media_player: browse_media_entity: media_player.sony_tv_native commands: turn_off: - service: media_player.turn_off + action: media_player.turn_off data: entity_id: media_player.sony_tv_native turn_on: - service: media_player.turn_on + action: media_player.turn_on data: entity_id: media_player.sony_tv_native select_source: - service: media_player.select_source + action: media_player.select_source data: entity_id: media_player.sony_tv_native source: "{{ source }}" media_play: - service: media_player.media_play + action: media_player.media_play target: entity_id: media_player.sony_tv_native media_pause: - service: media_player.media_pause + action: media_player.media_pause target: entity_id: media_player.sony_tv_native media_play_pause: - service: media_player.media_play_pause + action: media_player.media_play_pause target: entity_id: media_player.sony_tv_native media_previous_track: - service: media_player.media_previous_track + action: media_player.media_previous_track target: entity_id: media_player.sony_tv_native media_next_track: - service: media_player.media_next_track + action: media_player.media_next_track target: entity_id: media_player.sony_tv_native ``` @@ -119,7 +119,7 @@ The `play_media` {% term action %} can be used in an {% term automation %} or {% **Example to open YouTube app:** ```yaml -service: media_player.play_media +action: media_player.play_media target: entity_id: media_player.bravia_tv data: @@ -130,7 +130,7 @@ data: **Example to switch to channel number 11:** ```yaml -service: media_player.play_media +action: media_player.play_media target: entity_id: media_player.bravia_tv data: @@ -141,7 +141,7 @@ data: **Example to switch to channel including 'news' in its name:** ```yaml -service: media_player.play_media +action: media_player.play_media target: entity_id: media_player.bravia_tv data: @@ -158,7 +158,7 @@ The commands that can be sent to the TV depend on the model of your TV. To displ **Example to send `Down` key command:** ```yaml -service: remote.send_command +action: remote.send_command target: entity_id: remote.bravia_tv data: diff --git a/source/_integrations/bring.markdown b/source/_integrations/bring.markdown index 15fb893c8c4..4e7487d3190 100644 --- a/source/_integrations/bring.markdown +++ b/source/_integrations/bring.markdown @@ -58,7 +58,7 @@ The **Bring** integration offers an action to send push notifications to the Bri ```yaml ... action: - service: bring.send_message + action: bring.send_message target: entity_id: todo.bring_shoppinglist data: @@ -72,7 +72,7 @@ Note that for the notification type `urgent_message` the attribute `item` is **r ```yaml ... action: - service: bring.send_message + action: bring.send_message target: entity_id: todo.bring_shoppinglist data: diff --git a/source/_integrations/broadlink.markdown b/source/_integrations/broadlink.markdown index 63f93e02fa7..b66948cac55 100644 --- a/source/_integrations/broadlink.markdown +++ b/source/_integrations/broadlink.markdown @@ -92,7 +92,7 @@ To learn IR codes, call `remote.learn_command` with the device name and command script: learn_tv_power: sequence: - - service: remote.learn_command + - action: remote.learn_command target: entity_id: remote.bedroom data: @@ -113,7 +113,7 @@ Learning RF codes takes place in two steps. First call `remote.learn_command` wi script: learn_car_unlock: sequence: - - service: remote.learn_command + - action: remote.learn_command target: entity_id: remote.garage data: @@ -137,7 +137,7 @@ In order to streamline the learning process, you may want to provide a list of c script: learn_tv_commands: sequence: - - service: remote.learn_command + - action: remote.learn_command target: entity_id: remote.bedroom data: @@ -164,7 +164,7 @@ If the code works sometimes, and sometimes it doesn't, you can try to relearn it script: learn_tv_power_button: sequence: - - service: remote.learn_command + - action: remote.learn_command target: entity_id: remote.bedroom data: @@ -200,7 +200,7 @@ To send a command that you've learned, call `remote.send_command` with the devic script: tv_power: sequence: - - service: remote.send_command + - action: remote.send_command target: entity_id: remote.bedroom data: @@ -217,7 +217,7 @@ Use `num_repeats:` to send the same command multiple times: script: turn_up_tv_volume_20: sequence: - - service: remote.send_command + - action: remote.send_command target: entity_id: remote.bedroom data: @@ -235,7 +235,7 @@ You can provide a list of commands to be sent sequentially: script: turn_on_ac: sequence: - - service: remote.send_command + - action: remote.send_command target: entity_id: remote.bedroom data: @@ -254,7 +254,7 @@ Sometimes you may want to send a base64 code obtained elsewhere. Use the `b64:` script: turn_on_tv: sequence: - - service: remote.send_command + - action: remote.send_command target: entity_id: remote.bedroom data: @@ -270,7 +270,7 @@ You can send a sequence of base64 codes just like normal commands: script: turn_on_ac: sequence: - - service: remote.send_command + - action: remote.send_command target: entity_id: remote.bedroom data: @@ -288,7 +288,7 @@ You can mix commands and base64 codes: script: turn_on_ac: sequence: - - service: remote.send_command + - action: remote.send_command target: entity_id: remote.bedroom data: @@ -317,7 +317,7 @@ To delete a command, call `remote.delete_command` with the device name and the c script: delete_tv_power: sequence: - - service: remote.delete_command + - action: remote.delete_command target: entity_id: remote.bedroom data: @@ -334,7 +334,7 @@ You can provide a list of commands to be deleted: script: delete_tv_commands: sequence: - - service: remote.delete_command + - action: remote.delete_command target: entity_id: remote.bedroom data: diff --git a/source/_integrations/button.markdown b/source/_integrations/button.markdown index a99b6a0441c..63a3b1e3516 100644 --- a/source/_integrations/button.markdown +++ b/source/_integrations/button.markdown @@ -41,7 +41,7 @@ trigger: - platform: state entity_id: button.my_button action: - - service: notify.frenck + - action: notify.frenck data: message: "My button has been pressed!" ``` @@ -53,7 +53,7 @@ The button entities exposes a single {% term action %}: {% my developer_call_ser This action can be called to trigger a button press for that entity. ```yaml -- service: button.press +- action: button.press target: entity_id: button.my_button ``` diff --git a/source/_integrations/calendar.markdown b/source/_integrations/calendar.markdown index 6026e32bf82..f4f16b1fc68 100644 --- a/source/_integrations/calendar.markdown +++ b/source/_integrations/calendar.markdown @@ -93,7 +93,7 @@ automation: event: start entity_id: calendar.personal action: - - service: persistent_notification.create + - action: persistent_notification.create data: message: >- Event {{ trigger.calendar_event.summary }} @ @@ -129,10 +129,10 @@ automation: - if: - "{{ trigger.event == 'start' }}" then: - - service: light.turn_on + - action: light.turn_on entity_id: light.front else: - - service: light.turn_off + - action: light.turn_off entity_id: light.front ``` {% endraw %} @@ -167,7 +167,7 @@ You either use `start_date_time` and `end_date_time`, or `start_date` and `end_d This is a full example of a {% term service %} call in YAML: ```yaml -service: calendar.create_event +action: calendar.create_event target: entity_id: calendar.device_automation_schedules data: @@ -180,7 +180,7 @@ Home Assistant Calendars do not allow zero duration Calendar events. The followi {% raw %} ```yaml -service: calendar.create_event +action: calendar.create_event target: entity_id: calendar.device_automation_schedules data: @@ -207,7 +207,7 @@ Use only one of `end_date_time` or `duration`. {% endnote %} ```yaml -service: calendar.get_events +action: calendar.get_events target: entity_id: - calendar.school @@ -233,7 +233,7 @@ This example uses a template with response data in another action: {% raw %} ```yaml -service: notify.nina +action: notify.nina data: title: Daily agenda for {{ now().date() }} message: >- diff --git a/source/_integrations/camera.markdown b/source/_integrations/camera.markdown index 8cc14634368..066a87ff6b0 100644 --- a/source/_integrations/camera.markdown +++ b/source/_integrations/camera.markdown @@ -65,7 +65,7 @@ For example, the following action in an automation would send an `hls` live stre ```yaml action: - service: camera.play_stream + action: camera.play_stream target: entity_id: camera.yourcamera data: @@ -93,7 +93,7 @@ For example, the following action in an automation would take a recording from " ```yaml action: - service: camera.record + action: camera.record target: entity_id: camera.yourcamera data: @@ -119,7 +119,7 @@ For example, the following action in an automation would take a snapshot from "y ```yaml action: - service: camera.snapshot + action: camera.snapshot target: entity_id: camera.yourcamera data: diff --git a/source/_integrations/cast.markdown b/source/_integrations/cast.markdown index 718244cd5b0..61e35fc30b0 100644 --- a/source/_integrations/cast.markdown +++ b/source/_integrations/cast.markdown @@ -43,7 +43,7 @@ cast_downstairs_on_kitchen: dashboard_path: lovelace-cast entity_id: media_player.kitchen view_path: downstairs - service: cast.show_lovelace_view + action: cast.show_lovelace_view ``` {% important %} @@ -70,7 +70,7 @@ You can play MP3 streams like net radios, FLAC files or videos from your local n ```yaml # Play a video file from the local network: -service: media_player.play_media +action: media_player.play_media target: entity_id: media_player.chromecast data: @@ -80,7 +80,7 @@ data: ```yaml # Show a jpeg image: -service: media_player.play_media +action: media_player.play_media target: entity_id: media_player.chromecast data: @@ -93,7 +93,7 @@ For the possible metadata types and values check [Google cast documentation > Me ```yaml # Play a movie from the internet, with extra metadata provided: -service: media_player.play_media +action: media_player.play_media target: entity_id: media_player.chromecast data: @@ -110,7 +110,7 @@ data: ```yaml # Play a netradio, with extra metadata provided: -service: media_player.play_media +action: media_player.play_media target: entity_id: media_player.chromecast data: @@ -161,7 +161,7 @@ Example values to cast [this episode](https://www.bbc.co.uk/iplayer/episode/b09w ```yaml alias: "Cast BBC iPlayer to My Chromecast" sequence: - - service: media_player.play_media + - action: media_player.play_media target: entity_id: media_player.my_chromecast data: @@ -202,7 +202,7 @@ Example values to cast [BBC Radio 1](https://www.bbc.co.uk/sounds/play/live:bbc_ ```yaml alias: "Cast BBC Sounds to My Chromecast" sequence: - - service: media_player.play_media + - action: media_player.play_media target: entity_id: media_player.my_chromecast data: @@ -252,7 +252,7 @@ Optional: "media_id": "http://commondatastorage.googleapis.com/gtv-videos-bucket/sample/BigBuckBunny.mp4", "media_type": "video/mp4" }' - service: media_player.play_media + action: media_player.play_media ``` ### [NRK Radio](https://radio.nrk.no) @@ -286,7 +286,7 @@ Example values to cast the item at "app_name": "supla", "media_id": "3601824" }' - service: media_player.play_media + action: media_player.play_media ``` ### YouTube @@ -408,7 +408,7 @@ Optional: "app_name": "youtube", "media_id": "dQw4w9WgXcQ" }' - service: media_player.play_media + action: media_player.play_media ``` ## Troubleshooting automatic discovery diff --git a/source/_integrations/cisco_webex_teams.markdown b/source/_integrations/cisco_webex_teams.markdown index 568649d1d1d..1c7b5301ebd 100644 --- a/source/_integrations/cisco_webex_teams.markdown +++ b/source/_integrations/cisco_webex_teams.markdown @@ -69,7 +69,7 @@ Here are the automations for the above screenshot: - platform: webhook webhook_id: build_failed action: - service: notify.cisco_webex_teams_notify + action: notify.cisco_webex_teams_notify data: message: "
Build 0.89.5 compile failed." @@ -82,7 +82,7 @@ Here are the automations for the above screenshot: - platform: webhook webhook_id: build_unstable action: - service: notify.cisco_webex_teams_notify + action: notify.cisco_webex_teams_notify data: title: "Build 0.89.6 is unstable." message: "
Version 0.89.6 failed verifications. @@ -105,7 +105,7 @@ Here are the automations for the above screenshot: - platform: webhook webhook_id: build_passed action: - service: notify.cisco_webex_teams_notify + action: notify.cisco_webex_teams_notify data: title: "✅ Version 0.89.7 passed all tests and deployed to production!" message: "
Version 0.89.7 passed all verifications. diff --git a/source/_integrations/clicksend_tts.markdown b/source/_integrations/clicksend_tts.markdown index fe4965b427e..baac22ad4f6 100644 --- a/source/_integrations/clicksend_tts.markdown +++ b/source/_integrations/clicksend_tts.markdown @@ -65,7 +65,7 @@ trigger: - platform: sun event: sunset action: - - service: notify.clicksend_tts + - action: notify.clicksend_tts data: message: "The sun has set" ``` diff --git a/source/_integrations/climate.markdown b/source/_integrations/climate.markdown index 058354d4137..a94204770de 100644 --- a/source/_integrations/climate.markdown +++ b/source/_integrations/climate.markdown @@ -42,7 +42,7 @@ automation: platform: time at: "07:15:00" action: - - service: climate.set_aux_heat + - action: climate.set_aux_heat target: entity_id: climate.kitchen data: @@ -68,7 +68,7 @@ automation: platform: time at: "07:15:00" action: - - service: climate.set_preset_mode + - action: climate.set_preset_mode target: entity_id: climate.kitchen data: @@ -96,7 +96,7 @@ automation: platform: time at: "07:15:00" action: - - service: climate.set_temperature + - action: climate.set_temperature target: entity_id: climate.kitchen data: @@ -111,7 +111,7 @@ automation: platform: time at: "07:15:00" action: - - service: climate.set_temperature + - action: climate.set_temperature target: entity_id: climate.kitchen data: @@ -137,7 +137,7 @@ automation: platform: time at: "07:15:00" action: - - service: climate.set_humidity + - action: climate.set_humidity target: entity_id: climate.kitchen data: @@ -161,7 +161,7 @@ automation: platform: time at: "07:15:00" action: - - service: climate.set_fan_mode + - action: climate.set_fan_mode target: entity_id: climate.kitchen data: @@ -185,7 +185,7 @@ automation: platform: time at: "07:15:00" action: - - service: climate.set_hvac_mode + - action: climate.set_hvac_mode target: entity_id: climate.kitchen data: @@ -209,7 +209,7 @@ automation: platform: time at: "07:15:00" action: - - service: climate.set_swing_mode + - action: climate.set_swing_mode target: entity_id: climate.kitchen data: diff --git a/source/_integrations/color_extractor.markdown b/source/_integrations/color_extractor.markdown index a40716152ec..8460369aef4 100644 --- a/source/_integrations/color_extractor.markdown +++ b/source/_integrations/color_extractor.markdown @@ -59,7 +59,7 @@ Example usage in an {% term automation %}, taking the album art present on a Chr entity_id: media_player.chromecast action: - - service: color_extractor.turn_on + - action: color_extractor.turn_on data_template: color_extract_url: "{{ states.media_player.chromecast.attributes.entity_picture }}" entity_id: light.shelf_leds @@ -76,7 +76,7 @@ With a nicer transition period of 5 seconds and setting brightness to 100% each entity_id: media_player.chromecast action: - - service: color_extractor.turn_on + - action: color_extractor.turn_on data_template: color_extract_url: "{{ states.media_player.chromecast.attributes.entity_picture }}" entity_id: light.shelf_leds diff --git a/source/_integrations/counter.markdown b/source/_integrations/counter.markdown index 477df2d9827..3a819288d9b 100644 --- a/source/_integrations/counter.markdown +++ b/source/_integrations/counter.markdown @@ -155,7 +155,7 @@ automation: event_data: level: ERROR action: - service: counter.increment + action: counter.increment target: entity_id: counter.error_counter diff --git a/source/_integrations/cover.markdown b/source/_integrations/cover.markdown index 1edf4f59f32..c1aefb91294 100644 --- a/source/_integrations/cover.markdown +++ b/source/_integrations/cover.markdown @@ -65,7 +65,7 @@ automation: platform: time at: "07:15:00" action: - - service: cover.open_cover + - action: cover.open_cover target: entity_id: cover.demo ``` @@ -87,7 +87,7 @@ automation: platform: time at: "07:15:00" action: - - service: cover.set_cover_position + - action: cover.set_cover_position target: entity_id: cover.demo data: @@ -111,7 +111,7 @@ automation: platform: time at: "07:15:00" action: - - service: cover.set_cover_tilt_position + - action: cover.set_cover_tilt_position target: entity_id: cover.demo data: diff --git a/source/_integrations/cover.template.markdown b/source/_integrations/cover.template.markdown index 7f92395ba73..b677f070c5b 100644 --- a/source/_integrations/cover.template.markdown +++ b/source/_integrations/cover.template.markdown @@ -39,11 +39,11 @@ cover: friendly_name: "Garage Door" value_template: "{{ states('sensor.garage_door')|float > 0 }}" open_cover: - service: script.open_garage_door + action: script.open_garage_door close_cover: - service: script.close_garage_door + action: script.close_garage_door stop_cover: - service: script.stop_garage_door + action: script.stop_garage_door ``` {% endraw %} @@ -189,18 +189,18 @@ cover: - condition: state entity_id: sensor.garage_door state: "off" - - service: switch.turn_on + - action: switch.turn_on target: entity_id: switch.garage_door close_cover: - condition: state entity_id: sensor.garage_door state: "on" - - service: switch.turn_off + - action: switch.turn_off target: entity_id: switch.garage_door stop_cover: - service: switch.turn_on + action: switch.turn_on target: entity_id: switch.garage_door icon_template: >- @@ -231,23 +231,23 @@ cover: cover_group: friendly_name: "Cover Group" open_cover: - service: script.cover_group + action: script.cover_group data: modus: "open" close_cover: - service: script.cover_group + action: script.cover_group data: modus: "close" stop_cover: - service: script.cover_group + action: script.cover_group data: modus: "stop" set_cover_position: - service: script.cover_group_position + action: script.cover_group_position data: position: "{{position}}" set_cover_tilt_position: - service: script.cover_group_tilt_position + action: script.cover_group_tilt_position data: tilt: "{{tilt}}" value_template: "{{is_state('sensor.cover_group', 'open')}}" @@ -274,14 +274,14 @@ sensor: script: cover_group: sequence: - - service: "cover.{{modus}}_cover" + - action: "cover.{{modus}}_cover" target: entity_id: - cover.bedroom - cover.livingroom cover_group_position: sequence: - - service: cover.set_cover_position + - action: cover.set_cover_position target: entity_id: - cover.bedroom @@ -296,7 +296,7 @@ automation: event: sunset offset: "+00:30:00" action: - - service: cover.set_cover_position + - action: cover.set_cover_position target: entity_id: cover.cover_group data: @@ -318,15 +318,15 @@ cover: cover_group: friendly_name: "Cover Group" open_cover: - service: script.cover_group + action: script.cover_group data: modus: "open" close_cover: - service: script.cover_group + action: script.cover_group data: modus: "close" stop_cover: - service: script.cover_group + action: script.cover_group data: modus: "stop" value_template: "{{is_state('sensor.cover_group', 'open')}}" @@ -353,15 +353,15 @@ cover: cover_group: friendly_name: "Cover Group" open_cover: - service: script.cover_group + action: script.cover_group data: modus: "open" close_cover: - service: script.cover_group + action: script.cover_group data: modus: "close" stop_cover: - service: script.cover_group + action: script.cover_group data: modus: "stop" value_template: "{{is_state('sensor.cover_group', 'open')}}" diff --git a/source/_integrations/deconz.markdown b/source/_integrations/deconz.markdown index 0245a08f1a8..a40eb61f9be 100644 --- a/source/_integrations/deconz.markdown +++ b/source/_integrations/deconz.markdown @@ -201,7 +201,7 @@ automation: id: remote_control_1 event: 1002 action: - - service: light.toggle + - action: light.toggle target: entity_id: light.lamp @@ -214,7 +214,7 @@ automation: id: remote_control_1 event: 2002 action: - - service: light.turn_on + - action: light.turn_on target: entity_id: light.lamp data: @@ -231,7 +231,7 @@ automation: id: remote_control_1 event: 3002 action: - - service: light.turn_on + - action: light.turn_on target: entity_id: light.lamp data: @@ -248,7 +248,7 @@ automation: id: remote_control_1 gesture: 7 action: - - service: light.turn_on + - action: light.turn_on target: entity_id: light.lamp ``` @@ -269,7 +269,7 @@ automation: id: tint_remote_1 event: 6002 action: - - service: light.turn_on + - action: light.turn_on data: xy_color: - '{{ trigger.event.data.xy.0 }}' @@ -293,7 +293,7 @@ automation: entity_id: binary_sensor.doorbell_motion to: "on" action: - - service: deconz.configure + - action: deconz.configure data: entity: light.hue_lamp field: /state @@ -304,7 +304,7 @@ automation: bri: 255 alert: "breathe" - delay: 00:00:15 - - service: deconz.configure + - action: deconz.configure data: entity: light.hue_lamp field: "/state" diff --git a/source/_integrations/device_automation.markdown b/source/_integrations/device_automation.markdown index cab524a1b2d..03264ab4032 100644 --- a/source/_integrations/device_automation.markdown +++ b/source/_integrations/device_automation.markdown @@ -29,5 +29,5 @@ Example: type: turn_off entity_id: light.bowl action: - - service: camera.turn_off + - action: camera.turn_off ``` diff --git a/source/_integrations/dexcom.markdown b/source/_integrations/dexcom.markdown index 912a57685b8..33238cc7ff1 100644 --- a/source/_integrations/dexcom.markdown +++ b/source/_integrations/dexcom.markdown @@ -55,7 +55,7 @@ If you have a sensor session running, and once you have enabled the Dexcom integ after: "22:00:00" before: "06:00:00" action: - - service: light.turn_on + - action: light.turn_on target: entity_id: light.kitchen ``` diff --git a/source/_integrations/dialogflow.markdown b/source/_integrations/dialogflow.markdown index bab7a140ca5..72b27600714 100644 --- a/source/_integrations/dialogflow.markdown +++ b/source/_integrations/dialogflow.markdown @@ -109,10 +109,10 @@ intent_script: speech: text: Turning {{ Room }} lights {{ OnOff }} action: - - service: notify.pushbullet + - action: notify.pushbullet data: message: Someone asked via apiai to turn {{ Room }} lights {{ OnOff }} - - service: > + - action: > {%- if OnOff == "on" -%} switch.turn_on {%- else -%} diff --git a/source/_integrations/directv.markdown b/source/_integrations/directv.markdown index 2729729a507..9cc6838cf70 100644 --- a/source/_integrations/directv.markdown +++ b/source/_integrations/directv.markdown @@ -97,7 +97,7 @@ At the moment, the following buttons are supported: A typical action for pressing several buttons looks like this. ```yaml -service: remote.send_command +action: remote.send_command target: entity_id: remote.directv_entity data: diff --git a/source/_integrations/discord.markdown b/source/_integrations/discord.markdown index 201fc37a05b..027c7dcc1f0 100644 --- a/source/_integrations/discord.markdown +++ b/source/_integrations/discord.markdown @@ -114,7 +114,7 @@ To include messages with embedding, use these attributes underneath the `embed` ### Example action ```yaml -- service: notify.discord +- action: notify.discord data: message: "A message from Home Assistant" target: ["1234567890", "0987654321"] @@ -127,7 +127,7 @@ To include messages with embedding, use these attributes underneath the `embed` ### Example action with attachments sourced from remote URLs ```yaml -- service: notify.discord +- action: notify.discord data: message: "A message from Home Assistant" target: ["1234567890", "0987654321"] @@ -143,7 +143,7 @@ Note that `verify_ssl` defaults to `True`, and that any remote hosts will need t ### Example embed action ```yaml -- service: notify.discord +- action: notify.discord data: message: "" target: ["1234567890", "0987654321"] diff --git a/source/_integrations/dlna_dms.markdown b/source/_integrations/dlna_dms.markdown index 3bed11fc51e..d6f1b7e278d 100644 --- a/source/_integrations/dlna_dms.markdown +++ b/source/_integrations/dlna_dms.markdown @@ -41,7 +41,7 @@ URIs generated while browsing will look like the Object ID form above. However, Using a path URI: ```yaml -service: media_player.play_media +action: media_player.play_media target: entity_id: media_player.living_room_tv data: @@ -51,7 +51,7 @@ data: Using a query URI: ```yaml -service: media_player.play_media +action: media_player.play_media target: entity_id: media_player.living_room_tv data: diff --git a/source/_integrations/dominos.markdown b/source/_integrations/dominos.markdown index 28be4dd81df..f0e243642a4 100644 --- a/source/_integrations/dominos.markdown +++ b/source/_integrations/dominos.markdown @@ -38,7 +38,7 @@ dominos: Now you can use the Dominos {% term action %} to order pizza within your automations: ```yaml -- service: dominos.order +- action: dominos.order data: order_entity_id: dominos.medium_pan ``` diff --git a/source/_integrations/doods.markdown b/source/_integrations/doods.markdown index 5cd9143e7bc..51bae78c2b2 100644 --- a/source/_integrations/doods.markdown +++ b/source/_integrations/doods.markdown @@ -220,7 +220,7 @@ image_processing: entity_id: - binary_sensor.driveway action: - - service: image_processing.scan + - action: image_processing.scan target: entity_id: image_processing.doods_camera_driveway ``` diff --git a/source/_integrations/doorbird.markdown b/source/_integrations/doorbird.markdown index 9feb717e55b..52de7a2ce32 100644 --- a/source/_integrations/doorbird.markdown +++ b/source/_integrations/doorbird.markdown @@ -108,7 +108,7 @@ The example automation below shows how to turn on a light when somebody presses platform: event event_type: doorbird_driveway_gate_somebody_pressed_the_button action: - service: light.turn_on + action: light.turn_on target: entity_id: light.side_entry_porch ``` diff --git a/source/_integrations/dovado.markdown b/source/_integrations/dovado.markdown index a33f356a2f9..25e6c7eadef 100644 --- a/source/_integrations/dovado.markdown +++ b/source/_integrations/dovado.markdown @@ -80,7 +80,7 @@ automation: platform: sun event: sunset action: - service: notify.dovado + action: notify.dovado data: message: "The sun has set" target: "+14151234567" diff --git a/source/_integrations/downloader.markdown b/source/_integrations/downloader.markdown index d9f1df48d04..7bc6f4da678 100644 --- a/source/_integrations/downloader.markdown +++ b/source/_integrations/downloader.markdown @@ -55,7 +55,7 @@ Along with the event the following payload parameters are available: platform: event event_type: downloader_download_failed action: - service: persistent_notification.create + action: persistent_notification.create data: message: "{{trigger.event.data.filename}} download failed" title: "Download Failed" diff --git a/source/_integrations/easyenergy.markdown b/source/_integrations/easyenergy.markdown index 6ad960470ad..d63719ef847 100644 --- a/source/_integrations/easyenergy.markdown +++ b/source/_integrations/easyenergy.markdown @@ -171,7 +171,7 @@ template: - platform: time_pattern seconds: "*" action: - - service: easyenergy.get_energy_usage_prices + - action: easyenergy.get_energy_usage_prices response_variable: response data: config_entry: "013713c172577bada2874a32dbe44feb" diff --git a/source/_integrations/ecobee.markdown b/source/_integrations/ecobee.markdown index 5cc5586b965..b545f1d1280 100644 --- a/source/_integrations/ecobee.markdown +++ b/source/_integrations/ecobee.markdown @@ -96,7 +96,7 @@ The `ecobee` notify platform allows you to send notifications to an ecobee therm Example action: ```yaml -service: notify.send_message +action: notify.send_message data: message: "Hello, this is your thermostat." entity_id: notify.ecobee diff --git a/source/_integrations/ecovacs.markdown b/source/_integrations/ecovacs.markdown index 65f0a5b97b0..67027940ddc 100644 --- a/source/_integrations/ecovacs.markdown +++ b/source/_integrations/ecovacs.markdown @@ -147,7 +147,7 @@ The integration has a `raw_get_positions` action to retrieve device and chargers Example: ```yaml -service: ecovacs.raw_get_positions +action: ecovacs.raw_get_positions target: entity_id: vacuum.deebot_n8_plus ``` diff --git a/source/_integrations/elgato.markdown b/source/_integrations/elgato.markdown index 2a6d1320e67..31cdeb7c84e 100644 --- a/source/_integrations/elgato.markdown +++ b/source/_integrations/elgato.markdown @@ -87,7 +87,7 @@ a binary sensor (a doorbell) is triggered: entity_id: binary_sensor.doorbell to: "on" action: - - service: elgato.identify + - action: elgato.identify target: entity_id: light.elgato_key_light ``` diff --git a/source/_integrations/emulated_roku.markdown b/source/_integrations/emulated_roku.markdown index 4072fcba941..5d4de089809 100644 --- a/source/_integrations/emulated_roku.markdown +++ b/source/_integrations/emulated_roku.markdown @@ -124,7 +124,7 @@ The following is an example implementation of an automation: type: keypress key: Fwd action: - - service: media_player.volume_up + - action: media_player.volume_up target: entity_id: media_player.amplifier ``` diff --git a/source/_integrations/energyzero.markdown b/source/_integrations/energyzero.markdown index e26dc656880..b1af541195c 100644 --- a/source/_integrations/energyzero.markdown +++ b/source/_integrations/energyzero.markdown @@ -140,7 +140,7 @@ template: - platform: time_pattern hours: "*" action: - - service: energyzero.get_energy_prices + - action: energyzero.get_energy_prices response_variable: prices data: config_entry: 1b4a46c6cba0677bbfb5a8c53e8618b0 diff --git a/source/_integrations/enocean.markdown b/source/_integrations/enocean.markdown index 9d61d04b79f..602b2a33e08 100644 --- a/source/_integrations/enocean.markdown +++ b/source/_integrations/enocean.markdown @@ -118,7 +118,7 @@ automation: id: [0xYY, 0xYY, 0xYY, 0xYY] pushed: 0 action: - service: "{% if trigger.event.data.onoff %} light.turn_on {% else %} light.turn_off {%endif %}" + action: "{% if trigger.event.data.onoff %} light.turn_on {% else %} light.turn_off {%endif %}" target: entity_id: "{% if trigger.event.data.which == 1 %} light.hall_left {% else %} light.hall_right {%endif %}" ``` diff --git a/source/_integrations/event.markdown b/source/_integrations/event.markdown index 86bec2f53ac..c0e4378e5e0 100644 --- a/source/_integrations/event.markdown +++ b/source/_integrations/event.markdown @@ -40,7 +40,7 @@ trigger: - platform: state entity_id: event.doorbell action: - - service: notify.frenck + - action: notify.frenck data: message: "Ding Dong! Someone is at the door!" ``` diff --git a/source/_integrations/evohome.markdown b/source/_integrations/evohome.markdown index ea3cd3413f3..ae3b93c19e0 100644 --- a/source/_integrations/evohome.markdown +++ b/source/_integrations/evohome.markdown @@ -130,7 +130,7 @@ For **AutoWithEco**, the period of time is a `duration` is up to 24 hours. ```yaml - action: - - service: evohome.set_system_mode + - action: evohome.set_system_mode data: mode: AutoWithEco duration: {hours: 1, minutes: 30} @@ -140,7 +140,7 @@ For the other modes, such as **Away**, the duration is a `period` of days, where ```yaml - action: - - service: evohome.set_system_mode + - action: evohome.set_system_mode data: mode: Away period: {days: 30} @@ -162,7 +162,7 @@ This action will set the `setpoint` of a zone, as identified by its `entity_id`, ```yaml - action: - - service: evohome.set_zone_override + - action: evohome.set_zone_override target: entity_id: climate.loungeroom data: @@ -173,7 +173,7 @@ The `duration` can be up to 24 hours, after which the zone mode will revert to s ```yaml - action: - - service: evohome.set_zone_override + - action: evohome.set_zone_override target: entity_id: climate.loungeroom data: diff --git a/source/_integrations/facebook.markdown b/source/_integrations/facebook.markdown index a92e01e98dc..a17d6603044 100644 --- a/source/_integrations/facebook.markdown +++ b/source/_integrations/facebook.markdown @@ -52,7 +52,7 @@ automation: platform: sun event: sunset action: - service: notify.facebook + action: notify.facebook data: message: "Good Evening" target: @@ -114,7 +114,7 @@ You could also send rich messing (cards, buttons, images, videos, etc). [Info](h script: test_fb_notification: sequence: - - service: notify.facebook + - action: notify.facebook data: message: Some text before the quick replies target: 0034643123212 diff --git a/source/_integrations/fan.markdown b/source/_integrations/fan.markdown index ca7525d9477..ecc22e77d42 100644 --- a/source/_integrations/fan.markdown +++ b/source/_integrations/fan.markdown @@ -45,7 +45,7 @@ automation: platform: time at: "07:15:00" action: - - service: fan.set_percentage + - action: fan.set_percentage target: entity_id: fan.kitchen data: @@ -69,7 +69,7 @@ automation: platform: time at: "07:15:00" action: - - service: fan.set_preset_mode + - action: fan.set_preset_mode target: entity_id: fan.kitchen data: @@ -93,7 +93,7 @@ automation: platform: time at: "07:15:00" action: - - service: fan.set_direction + - action: fan.set_direction target: entity_id: fan.kitchen data: @@ -117,7 +117,7 @@ automation: platform: time at: "07:15:00" action: - - service: fan.oscillate + - action: fan.oscillate target: entity_id: fan.kitchen data: @@ -151,7 +151,7 @@ automation: platform: time at: "07:15:00" action: - - service: fan.turn_off + - action: fan.turn_off target: entity_id: fan.kitchen data: @@ -178,7 +178,7 @@ automation: type: press subtype: raise action: - - service: fan.increase_speed + - action: fan.increase_speed target: entity_id: fan.dining_room_fan_by_front_door ``` @@ -203,7 +203,7 @@ automation: type: press subtype: lower action: - - service: fan.decrease_speed + - action: fan.decrease_speed target: entity_id: fan.dining_room_fan_by_front_door ``` diff --git a/source/_integrations/fan.template.markdown b/source/_integrations/fan.template.markdown index 01ae4f6a795..538ae983d4f 100644 --- a/source/_integrations/fan.template.markdown +++ b/source/_integrations/fan.template.markdown @@ -42,23 +42,23 @@ fan: oscillating_template: "{{ states('input_select.osc') }}" direction_template: "{{ states('input_select.direction') }}" turn_on: - service: script.fan_on + action: script.fan_on turn_off: - service: script.fan_off + action: script.fan_off set_percentage: - service: script.fans_set_speed + action: script.fans_set_speed data: percentage: "{{ percentage }}" set_preset_mode: - service: script.fans_set_preset_mode + action: script.fans_set_preset_mode data: preset_mode: "{{ preset_mode }}" set_oscillating: - service: script.fan_oscillating + action: script.fan_oscillating data: oscillating: "{{ oscillating }}" set_direction: - service: script.fan_direction + action: script.fan_direction data: direction: "{{ direction }}" speed_count: 6 @@ -175,21 +175,21 @@ fan: friendly_name: "Helper Fan" value_template: "{{ states('input_boolean.state') }}" turn_on: - - service: input_boolean.turn_on + - action: input_boolean.turn_on target: entity_id: input_boolean.state turn_off: - - service: input_boolean.turn_off + - action: input_boolean.turn_off target: entity_id: input_boolean.state percentage_template: > {{ states('input_number.percentage') if is_state('input_boolean.state', 'on') else 0 }} speed_count: 6 set_percentage: - - service: input_boolean.turn_{{ 'on' if percentage > 0 else 'off' }} + - action: input_boolean.turn_{{ 'on' if percentage > 0 else 'off' }} target: entity_id: input_boolean.state - - service: input_number.set_value + - action: input_number.set_value target: entity_id: input_number.percentage data: @@ -213,18 +213,18 @@ fan: friendly_name: "Preset Mode Fan Example" value_template: "{{ states('fan.percentage_fan') }}" turn_on: - - service: fan.turn_on + - action: fan.turn_on target: entity_id: fan.percentage_fan turn_off: - - service: fan.turn_off + - action: fan.turn_off target: entity_id: fan.percentage_fan percentage_template: > {{ state_attr('fan.percentage_fan', 'percentage') }} speed_count: 3 set_percentage: - - service: fan.set_percentage + - action: fan.set_percentage target: entity_id: fan.percentage_fan data: @@ -247,7 +247,7 @@ fan: off {% endif %} set_preset_mode: - - service: fan.set_percentage + - action: fan.set_percentage target: entity_id: fan.percentage_fan data: diff --git a/source/_integrations/feedreader.markdown b/source/_integrations/feedreader.markdown index c5fa88b6a1d..f4f66fd6981 100644 --- a/source/_integrations/feedreader.markdown +++ b/source/_integrations/feedreader.markdown @@ -31,7 +31,7 @@ automation: platform: event event_type: feedreader action: - service: script.turn_on + action: script.turn_on target: entity_id: script.my_action ``` @@ -47,7 +47,7 @@ automation: event_data: feed_url: "https://hasspodcast.io/feed/podcast" action: - service: persistent_notification.create + action: persistent_notification.create data: title: "New HA Podcast available" message: "New Podcast available - {{ as_timestamp(now()) | timestamp_custom('%I:%M:%S %p %d%b%Y', true) }}" diff --git a/source/_integrations/fireservicerota.markdown b/source/_integrations/fireservicerota.markdown index 4dc5138f371..2fd2f03d56b 100644 --- a/source/_integrations/fireservicerota.markdown +++ b/source/_integrations/fireservicerota.markdown @@ -121,7 +121,7 @@ automation: platform: state entity_id: sensor.incidents action: - service: light.turn_on + action: light.turn_on target: entity_id: light.bedroom @@ -138,7 +138,7 @@ automation: attribute: message_to_speech_url state: None action: - - service: media_player.play_media + - action: media_player.play_media data_template: entity_id: media_player.nest_hub_bedroom media_content_id: > @@ -150,7 +150,7 @@ automation: platform: state entity_id: switch.response_button action: - service: homeassistant.turn_on + action: homeassistant.turn_on target: entity_id: switch.incident_response @@ -159,7 +159,7 @@ automation: platform: homeassistant event: start action: - service: cast.show_lovelace_view + action: cast.show_lovelace_view data: entity_id: media_player.nest_hub_bedroom view_path: fsr diff --git a/source/_integrations/flic.markdown b/source/_integrations/flic.markdown index febee6dbeec..747c52c83cc 100644 --- a/source/_integrations/flic.markdown +++ b/source/_integrations/flic.markdown @@ -85,7 +85,7 @@ automation: button_name: flic_81e4ac74b6d2 click_type: single action: - service: homeassistant.turn_on + action: homeassistant.turn_on target: entity_id: group.lights_livingroom ``` @@ -108,7 +108,7 @@ automation: platform: event event_type: flic_click action: - - service: notify.html5 + - action: notify.html5 data: title: "flic click" message: "flic {{ trigger.event.data.button_name }} was {{ trigger.event.data.click_type }} clicked" diff --git a/source/_integrations/flume.markdown b/source/_integrations/flume.markdown index ab57f46359b..200f9ef6204 100644 --- a/source/_integrations/flume.markdown +++ b/source/_integrations/flume.markdown @@ -53,7 +53,7 @@ trigger: - platform: time_pattern minutes: /5 action: - - service: flume.list_notifications + - action: flume.list_notifications data: config_entry: 1234 # replace this with your config entry id response_variable: notifications @@ -63,7 +63,7 @@ action: {{ notifications.notifications | selectattr('type', 'equalto', 1) | sort(attribute == ('created_datetime', reverse == true) | length > 0 }} then: - - service: notify.all + - action: notify.all data: message: >- {%- set usage_alert == notifications.notifications | diff --git a/source/_integrations/flux_led.markdown b/source/_integrations/flux_led.markdown index de86e857a7a..a3e4abdad60 100644 --- a/source/_integrations/flux_led.markdown +++ b/source/_integrations/flux_led.markdown @@ -257,7 +257,7 @@ The Addressable v3 (0xA3) models allow setting a color effect per zone. The leng ```yaml #Example action -service: flux_led.set_zones +action: flux_led.set_zones target: entity_id: - light.addressable_v3_8e2f7f @@ -287,7 +287,7 @@ The RGB with MIC (0x08), Addressable v2 (0xA2), and Addressable v3 (0xA3) models ```yaml #Example action -service: flux_led.set_music_mode +action: flux_led.set_music_mode target: entity_id: - light.addressable_v3_8e2f7f diff --git a/source/_integrations/folder_watcher.markdown b/source/_integrations/folder_watcher.markdown index fb87d0ea979..4d6dd3ce214 100644 --- a/source/_integrations/folder_watcher.markdown +++ b/source/_integrations/folder_watcher.markdown @@ -57,7 +57,7 @@ automation:   platform: state entity_id: event.created action: -   service: notify.notify +   action: notify.notify   data:     title: New image captured!     message: "Created {{ trigger.to_state.attributes.file }} in {{ trigger.to_state.attributes.folder }}" diff --git a/source/_integrations/foscam.markdown b/source/_integrations/foscam.markdown index 3e398ed096c..a3cb4dbf741 100644 --- a/source/_integrations/foscam.markdown +++ b/source/_integrations/foscam.markdown @@ -73,7 +73,7 @@ elements: bottom: 50px tap_action: action: call-service - service: foscam.ptz + action: foscam.ptz data: entity_id: camera.bedroom movement: up @@ -85,7 +85,7 @@ elements: bottom: 0px tap_action: action: call-service - service: foscam.ptz + action: foscam.ptz data: entity_id: camera.bedroom movement: down @@ -97,7 +97,7 @@ elements: bottom: 25px tap_action: action: call-service - service: foscam.ptz + action: foscam.ptz data: entity_id: camera.bedroom movement: left @@ -109,7 +109,7 @@ elements: bottom: 25px tap_action: action: call-service - service: foscam.ptz + action: foscam.ptz data: entity_id: camera.bedroom movement: right @@ -121,7 +121,7 @@ elements: bottom: 50px tap_action: action: call-service - service: foscam.ptz + action: foscam.ptz data: entity_id: camera.bedroom movement: top_left @@ -133,7 +133,7 @@ elements: bottom: 50px tap_action: action: call-service - service: foscam.ptz + action: foscam.ptz data: entity_id: camera.bedroom movement: top_right @@ -145,7 +145,7 @@ elements: bottom: 0px tap_action: action: call-service - service: foscam.ptz + action: foscam.ptz data: entity_id: camera.bedroom movement: bottom_left @@ -157,7 +157,7 @@ elements: bottom: 0px tap_action: action: call-service - service: foscam.ptz + action: foscam.ptz data: entity_id: camera.bedroom movement: bottom_right diff --git a/source/_integrations/foursquare.markdown b/source/_integrations/foursquare.markdown index c5847ebfc87..b09830bb3f4 100644 --- a/source/_integrations/foursquare.markdown +++ b/source/_integrations/foursquare.markdown @@ -62,7 +62,7 @@ automation: platform: event event_type: foursquare.push action: - service: script.turn_on + action: script.turn_on target: entity_id: script.my_action ``` diff --git a/source/_integrations/fritz.markdown b/source/_integrations/fritz.markdown index a558379e2ed..dbeedcb45b5 100644 --- a/source/_integrations/fritz.markdown +++ b/source/_integrations/fritz.markdown @@ -105,7 +105,7 @@ The following script can be used to easily add a reconnect button to your UI. If fritz_box_reconnect: alias: "Reconnect FRITZ!Box" sequence: - - service: button.press + - action: button.press target: entity_id: button.fritzbox_7530_reconnect @@ -120,7 +120,7 @@ automation: - platform: time at: "05:00:00" action: - - service: button.press + - action: button.press target: entity_id: button.fritzbox_7530_reconnect @@ -136,7 +136,7 @@ automation: entity_id: switch.fritzbox_7530_wifi_myssid to: "on" action: - - service: notify.notify + - action: notify.notify data: title: "Guest Wi-Fi is enabled" message: "Password: ..." diff --git a/source/_integrations/fritzbox_callmonitor.markdown b/source/_integrations/fritzbox_callmonitor.markdown index 3bc67ce397e..d22246789e9 100644 --- a/source/_integrations/fritzbox_callmonitor.markdown +++ b/source/_integrations/fritzbox_callmonitor.markdown @@ -56,7 +56,7 @@ automation: - platform: state entity_id: sensor.phone action: - - service: notify.notify + - action: notify.notify data: title: "Phone" message: >- diff --git a/source/_integrations/frontier_silicon.markdown b/source/_integrations/frontier_silicon.markdown index 211ca211f89..85963dd323e 100644 --- a/source/_integrations/frontier_silicon.markdown +++ b/source/_integrations/frontier_silicon.markdown @@ -55,7 +55,7 @@ trigger: from: "off" to: "on" action: - service: media_player.turn_on + action: media_player.turn_on target: entity_id: "media_player.badezimmer" ``` diff --git a/source/_integrations/fully_kiosk.markdown b/source/_integrations/fully_kiosk.markdown index c6273c287d5..0dcee21a894 100644 --- a/source/_integrations/fully_kiosk.markdown +++ b/source/_integrations/fully_kiosk.markdown @@ -100,7 +100,7 @@ You can use the `fully_kiosk.load_url` action to have the tablet open the specif Example: ```yaml -service: fully_kiosk.load_url +action: fully_kiosk.load_url data: url: "https://home-assistant.io" target: @@ -120,7 +120,7 @@ You can use the `fully_kiosk.set_config` action to change the many configuration Example: ```yaml -service: fully_kiosk.set_config +action: fully_kiosk.set_config data: key: "startURL" value: "https://home-assistant.io" @@ -140,7 +140,7 @@ You can use the `fully_kiosk.start_application` action to have the tablet launch Example: ```yaml -service: fully_kiosk.start_application +action: fully_kiosk.start_application data: application: "de.ozerov.fully" target: diff --git a/source/_integrations/geniushub.markdown b/source/_integrations/geniushub.markdown index 8c93ff91392..829d67da940 100644 --- a/source/_integrations/geniushub.markdown +++ b/source/_integrations/geniushub.markdown @@ -95,7 +95,7 @@ Each such entity has a state attribute that will contain a list of any such issu entity_id: sensor.geniushub_errors above: 0 action: - - service: notify.pushbullet_notifier + - action: notify.pushbullet_notifier data: title: "Genius Hub has errors" message: >- @@ -115,7 +115,7 @@ This alert may be useful to see if the CH is being turned on whilst you're on a platform: state entity_id: binary_sensor.dual_channel_receiver_2_1 action: - - service: notify.pushbullet_notifier + - action: notify.pushbullet_notifier data: title: "Warning: CH State Change!" message: >- diff --git a/source/_integrations/geo_location.markdown b/source/_integrations/geo_location.markdown index 8e5b79e61c4..d6b3f44cc53 100644 --- a/source/_integrations/geo_location.markdown +++ b/source/_integrations/geo_location.markdown @@ -65,7 +65,7 @@ automation: condition: template value_template: "{{ trigger.to_state.attributes.type == 'Bush Fire' }}" action: - - service: persistent_notification.create + - action: persistent_notification.create data: message: "{{ trigger.to_state.name }} - {{ trigger.to_state.attributes.status }}" title: "Bush Fire Alert" diff --git a/source/_integrations/github.markdown b/source/_integrations/github.markdown index 89d6b4d9a62..5eaf673e69e 100644 --- a/source/_integrations/github.markdown +++ b/source/_integrations/github.markdown @@ -132,7 +132,7 @@ trigger: - platform: state entity_id: sensor.awesome_repository_latest_release action: - - service: notify.notify + - action: notify.notify data: title: "New github/repository release" message: >- @@ -154,7 +154,7 @@ trigger: - platform: state entity_id: sensor.awesome_repository_stars action: - - service: notify.notify + - action: notify.notify data: title: "New github/repository new star" message: >- diff --git a/source/_integrations/goodwe.markdown b/source/_integrations/goodwe.markdown index 1f8ac9b85e1..f058617268d 100644 --- a/source/_integrations/goodwe.markdown +++ b/source/_integrations/goodwe.markdown @@ -51,7 +51,7 @@ The integration will poll the inverter for new values every 10 seconds. If you w minutes: "*" seconds: "/30" action: - - service: homeassistant.update_entity + - action: homeassistant.update_entity target: entity_id: sensor.ppv ``` diff --git a/source/_integrations/google.markdown b/source/_integrations/google.markdown index 3cd6b649332..b5a4bd2af84 100644 --- a/source/_integrations/google.markdown +++ b/source/_integrations/google.markdown @@ -110,7 +110,7 @@ You either use `start_date_time` and `end_date_time`, or `start_date` and `end_d This is a full example of an action in YAML: ```yaml -service: google.create_event +action: google.create_event target: entity_id: calendar.device_automation_schedules data: diff --git a/source/_integrations/google_assistant_sdk.markdown b/source/_integrations/google_assistant_sdk.markdown index a82d95b1435..315b090332a 100644 --- a/source/_integrations/google_assistant_sdk.markdown +++ b/source/_integrations/google_assistant_sdk.markdown @@ -162,14 +162,14 @@ You can use the `google_assistant_sdk.send_text_command` action to send commands Examples: ```yaml -service: google_assistant_sdk.send_text_command +action: google_assistant_sdk.send_text_command data: command: "turn off kitchen TV" ``` ```yaml # Say a joke on the living room speaker -service: google_assistant_sdk.send_text_command +action: google_assistant_sdk.send_text_command data: command: "tell me a joke" media_player: media_player.living_room_speaker @@ -178,7 +178,7 @@ data: You can send multiple commands in the same conversation context which is useful to unlock doors or open covers that need a PIN. Example: ```yaml -service: google_assistant_sdk.send_text_command +action: google_assistant_sdk.send_text_command data: command: - "open the garage door" @@ -188,7 +188,7 @@ data: You can get responses. Example: ```yaml -service: google_assistant_sdk.send_text_command +action: google_assistant_sdk.send_text_command data: command: - "tell me a joke" @@ -219,7 +219,7 @@ You can use the `notify.google_assistant_sdk` action to broadcast messages to Go Example to broadcast to all speakers: ```yaml -service: notify.google_assistant_sdk +action: notify.google_assistant_sdk data: message: time for dinner ``` @@ -227,7 +227,7 @@ data: Example to broadcast to speakers in selected rooms: ```yaml -service: notify.google_assistant_sdk +action: notify.google_assistant_sdk data: message: time for dinner target: diff --git a/source/_integrations/google_generative_ai_conversation.markdown b/source/_integrations/google_generative_ai_conversation.markdown index b9073be8225..06f5f92e33c 100644 --- a/source/_integrations/google_generative_ai_conversation.markdown +++ b/source/_integrations/google_generative_ai_conversation.markdown @@ -106,7 +106,7 @@ This action populates [response data](/docs/scripts/service-calls#use-templates- {% raw %} ```yaml -service: google_generative_ai_conversation.generate_content +action: google_generative_ai_conversation.generate_content data: prompt: >- Very briefly describe what you see in this image from my doorbell camera. @@ -123,7 +123,7 @@ Another example with multiple images: {% raw %} ```yaml -service: google_generative_ai_conversation.generate_content +action: google_generative_ai_conversation.generate_content data: prompt: >- Briefly describe what happened in the following sequence of images diff --git a/source/_integrations/google_mail.markdown b/source/_integrations/google_mail.markdown index 71e3e23530d..6cea2c338d6 100644 --- a/source/_integrations/google_mail.markdown +++ b/source/_integrations/google_mail.markdown @@ -73,7 +73,7 @@ The following attributes can be placed inside the `data` key of the action for e This is the full service call to send an email: ```yaml -service: notify.example_gmail_com +action: notify.example_gmail_com data: message: "test" title: "test email" diff --git a/source/_integrations/google_sheets.markdown b/source/_integrations/google_sheets.markdown index 1b380298010..26ab362f9ac 100644 --- a/source/_integrations/google_sheets.markdown +++ b/source/_integrations/google_sheets.markdown @@ -61,7 +61,7 @@ You can use the `google_sheets.append_sheet` action to add rows of data to the S ```yaml # Example action -service: google_sheets.append_sheet +action: google_sheets.append_sheet data: config_entry: 1b4a46c6cba0677bbfb5a8c53e8618b0 worksheet: "Car Charging" @@ -71,7 +71,7 @@ data: Cost: "{{ states('input_number.car_charging_cost')|float(0) }}" # Example action with multiple rows -service: google_sheets.append_sheet +action: google_sheets.append_sheet data: config_entry: 1b4a46c6cba0677bbfb5a8c53e8618b0 worksheet: "Car Charging" diff --git a/source/_integrations/google_translate.markdown b/source/_integrations/google_translate.markdown index c542e189067..549a5876eb0 100644 --- a/source/_integrations/google_translate.markdown +++ b/source/_integrations/google_translate.markdown @@ -121,7 +121,7 @@ For more options about `speak`, see the Speak section on the main [TTS](/integra In YAML, your action will look like this: ```yaml -service: tts.speak +action: tts.speak target: entity_id: tts.google_en_com data: @@ -141,7 +141,7 @@ Say to all `media_player` device entities: ```yaml # Replace google_translate_say with _say when you use a different platform. -service: tts.google_translate_say +action: tts.google_translate_say data: entity_id: all message: "May the force be with you." @@ -150,7 +150,7 @@ data: Say to the `media_player.floor` device entity: ```yaml -service: tts.google_translate_say +action: tts.google_translate_say data: entity_id: media_player.floor message: "May the force be with you." @@ -159,7 +159,7 @@ data: Say to the `media_player.floor` device entity in French: ```yaml -service: tts.google_translate_say +action: tts.google_translate_say data: entity_id: media_player.floor message: "Que la force soit avec toi." @@ -169,7 +169,7 @@ data: Say to the `media_player.floor` device entity in UK English: ```yaml -service: tts.google_translate_say +action: tts.google_translate_say data: entity_id: media_player.floor message: "May the force be with you." @@ -177,7 +177,7 @@ data: ``` ```yaml -service: tts.google_translate_say +action: tts.google_translate_say data: entity_id: media_player.floor message: "May the force be with you." @@ -191,7 +191,7 @@ With a template: {% raw %} ```yaml -service: tts.google_translate_say +action: tts.google_translate_say data: message: "Temperature is {{states('sensor.temperature')}}." cache: false diff --git a/source/_integrations/google_travel_time.markdown b/source/_integrations/google_travel_time.markdown index f383da778f9..cf779066813 100644 --- a/source/_integrations/google_travel_time.markdown +++ b/source/_integrations/google_travel_time.markdown @@ -85,7 +85,7 @@ You can use the `homeassistant.update_entity` action to update the sensor on-dem - thu - fri action: - - service: homeassistant.update_entity + - action: homeassistant.update_entity target: entity_id: sensor.morning_commute ``` diff --git a/source/_integrations/group.markdown b/source/_integrations/group.markdown index 68f78529aba..18770dce99a 100644 --- a/source/_integrations/group.markdown +++ b/source/_integrations/group.markdown @@ -327,10 +327,10 @@ notify: - platform: group name: "My notification group" services: - - service: html5 + - action: html5 data: target: "macbook" - - service: html5_nexus + - action: html5_nexus ``` {% configuration %} diff --git a/source/_integrations/gstreamer.markdown b/source/_integrations/gstreamer.markdown index 572eecf178e..a58632a6eb0 100644 --- a/source/_integrations/gstreamer.markdown +++ b/source/_integrations/gstreamer.markdown @@ -85,7 +85,7 @@ media_player: script: tts: sequence: - - service: tts.google_say # or amazon_polly, voicerss, etc + - action: tts.google_say # or amazon_polly, voicerss, etc target: entity_id: media_player.gstreamer data: diff --git a/source/_integrations/harmony.markdown b/source/_integrations/harmony.markdown index 983b4d14152..5c5dfcd0df9 100644 --- a/source/_integrations/harmony.markdown +++ b/source/_integrations/harmony.markdown @@ -81,7 +81,7 @@ Using the activity name 'Watch TV', you can perform an action via automation to ```yaml action: - - service: remote.turn_on + - action: remote.turn_on target: entity_id: remote.bed_room_hub data: @@ -129,7 +129,7 @@ In the file 'harmony_REMOTENAME.conf' you can find the available devices and com A typical action for sending several button presses looks like this: ```yaml -service: remote.send_command +action: remote.send_command target: entity_id: remote.tv_room data: @@ -141,7 +141,7 @@ data: ``` OR ```yaml -service: remote.send_command +action: remote.send_command target: entity_id: remote.tv_room data: @@ -164,7 +164,7 @@ Sends the change channel command to the Harmony HUB A typical action for changing the channel would be:: ```yaml -service: harmony.change_channel +action: harmony.change_channel target: entity_id: remote.tv_room data: @@ -212,7 +212,7 @@ automation: condition: template value_template: '{{ trigger.to_state.attributes.current_activity == "Kodi" }}' action: - service: input_boolean.turn_on + action: input_boolean.turn_on target: entity_id: input_boolean.notify - alias: "PowerOff started from harmony hub" @@ -223,7 +223,7 @@ automation: condition: template value_template: '{{ trigger.to_state.attributes.current_activity == "PowerOff" }}' action: - service: input_boolean.turn_off + action: input_boolean.turn_off target: entity_id: input_boolean.notify ``` diff --git a/source/_integrations/hdmi_cec.markdown b/source/_integrations/hdmi_cec.markdown index 8ee39bba1b3..31e3dec4532 100644 --- a/source/_integrations/hdmi_cec.markdown +++ b/source/_integrations/hdmi_cec.markdown @@ -171,7 +171,7 @@ So an Automation action using the example above would look something like this. ```yaml action: - service: hdmi_cec.select_device + action: hdmi_cec.select_device data: device: Chromecast ``` @@ -184,7 +184,7 @@ An Automation action using the example above would look something like this. ```yaml action: - service: hdmi_cec.power_on + action: hdmi_cec.power_on ``` ### Standby @@ -195,7 +195,7 @@ An Automation action using the example above would look something like this. ```yaml action: - service: hdmi_cec.standby + action: hdmi_cec.standby ``` ### Change volume level diff --git a/source/_integrations/heos.markdown b/source/_integrations/heos.markdown index c33f14b709f..7760def5052 100644 --- a/source/_integrations/heos.markdown +++ b/source/_integrations/heos.markdown @@ -37,7 +37,7 @@ A connection to a single device enables control for all devices on the network. Use the sign-in action (go to **Developer Tools** > **Actions** and then run the `heos.sign_in` with your username and password. Use the "Fill example data" first, then change it with your data. Check the logs right after, there you should see if the sign-in was successful or not) to sign the connected controller into a HEOS account so that it can retrieve and play HEOS favorites and playlists. An error message is logged if sign-in is unsuccessful. Example action data payload: ```yaml -service: heos.sign_in +action: heos.sign_in data: username: "example@example.com" password: "password" @@ -59,7 +59,7 @@ Use the sign-out action to sign the connected controller out of a HEOS account. You can play a HEOS favorite by number or name with the `media_player.play_media` action. Example action data payload: ```yaml -service: media_player.play_media +action: media_player.play_media data: entity_id: media_player.office media_content_type: "favorite" @@ -77,7 +77,7 @@ data: You can play a HEOS playlist with the `media_player.play_media` action. Example action data payload: ```yaml -service: media_player.play_media +action: media_player.play_media data: entity_id: media_player.office media_content_type: "playlist" @@ -95,7 +95,7 @@ data: You can play a HEOS Quick Select by number or name with the `media_player.play_media` action. Example action data payload: ```yaml -service: media_player.play_media +action: media_player.play_media data: entity_id: media_player.office media_content_type: "quick_select" @@ -113,7 +113,7 @@ data: You can play a URL through a HEOS media player using the `media_player.play_media` action. The HEOS player must be able to reach the URL. Example action data payload: ```yaml -service: media_player.play_media +action: media_player.play_media data: entity_id: media_player.office media_content_type: "url" @@ -131,7 +131,7 @@ data: For grouping HEOS media players together for synchronous playback you can use the `media_player.join` action. With the example action data payload down below you'll expand playback of `media_player.office` to the `media_player.kitchen` and `media_player.bathroom` players. Please note that all of the media players need to be HEOS players. ```yaml -service: media_player.join +action: media_player.join data: entity_id: media_player.office group_members: @@ -150,7 +150,7 @@ data: For removing a HEOS player from a group you can use the `media_player.unjoin` action. ```yaml -service: media_player.unjoin +action: media_player.unjoin data: entity_id: media_player.office ``` diff --git a/source/_integrations/here_travel_time.markdown b/source/_integrations/here_travel_time.markdown index 3a16f9fd819..93f6601a888 100644 --- a/source/_integrations/here_travel_time.markdown +++ b/source/_integrations/here_travel_time.markdown @@ -86,7 +86,7 @@ automation: - thu - fri action: - - service: homeassistant.update_entity + - action: homeassistant.update_entity target: entity_id: sensor.morning_commute ``` diff --git a/source/_integrations/hive.markdown b/source/_integrations/hive.markdown index f231d973cf1..e35a5797f86 100644 --- a/source/_integrations/hive.markdown +++ b/source/_integrations/hive.markdown @@ -66,7 +66,7 @@ Examples: script: boost_heating: sequence: - - service: hive.boost_heating_on + - action: hive.boost_heating_on target: entity_id: "climate.heating" data: @@ -89,7 +89,7 @@ Examples: script: boost_heating: sequence: - - service: hive.boost_heating_off + - action: hive.boost_heating_off target: entity_id: "climate.heating" ``` @@ -111,7 +111,7 @@ Examples: script: boost_hot_water: sequence: - - service: "hive.boost_hot_water" + - action: "hive.boost_hot_water" target: entity_id: "water_heater.hot_water" data: diff --git a/source/_integrations/homeassistant.markdown b/source/_integrations/homeassistant.markdown index 240a7e4bd69..e1858c88c73 100644 --- a/source/_integrations/homeassistant.markdown +++ b/source/_integrations/homeassistant.markdown @@ -314,7 +314,7 @@ Update the location of the Home Assistant default zone (usually "Home"). ```yaml action: - service: homeassistant.set_location + action: homeassistant.set_location data: latitude: 32.87336 longitude: 117.22743 @@ -336,7 +336,7 @@ for example, a light and a switch can be toggled in a single action. ```yaml action: - service: homeassistant.toggle + action: homeassistant.toggle target: entity_id: - light.living_room @@ -358,7 +358,7 @@ for example, a light and a switch can be turned on in a single action. ```yaml action: - service: homeassistant.turn_on + action: homeassistant.turn_on target: entity_id: - light.living_room @@ -380,7 +380,7 @@ for example, a light and a switch can be turned off in a single action. ```yaml action: - service: homeassistant.turn_off + action: homeassistant.turn_off target: entity_id: - light.living_room @@ -399,7 +399,7 @@ Force one or more entities to update its data rather than wait for the next sche ```yaml action: - service: homeassistant.update_entity + action: homeassistant.update_entity target: entity_id: - light.living_room diff --git a/source/_integrations/homekit.markdown b/source/_integrations/homekit.markdown index 4b3e75e8a4f..455dec8c815 100644 --- a/source/_integrations/homekit.markdown +++ b/source/_integrations/homekit.markdown @@ -462,7 +462,7 @@ automation: # Send the arrow right key via a broadlink IR blaster action: - service: broadlink.send + action: broadlink.send host: 192.168.1.55 packet: XXXXXXXX ``` @@ -479,9 +479,9 @@ automation: event_type: homekit_state_change event_data: entity_id: cover.garage_door - service: open_cover + action: open_cover action: - - service: persistent_notification.create + - action: persistent_notification.create data: message: "The garage door got opened via HomeKit" ``` diff --git a/source/_integrations/homematic.markdown b/source/_integrations/homematic.markdown index a76bcdf441c..63af5ad4c35 100644 --- a/source/_integrations/homematic.markdown +++ b/source/_integrations/homematic.markdown @@ -260,7 +260,7 @@ automation: channel: 1 param: PRESS_SHORT action: - service: switch.turn_on + action: switch.turn_on target: entity_id: switch.Kitchen_Ambience ``` @@ -307,7 +307,7 @@ Simulate a button being pressed: ```yaml ... action: - service: homematic.virtualkey + action: homematic.virtualkey data: address: "BidCoS-RF" channel: 1 @@ -319,7 +319,7 @@ Open KeyMatic: ```yaml ... action: - service: homematic.virtualkey + action: homematic.virtualkey data: address: "LEQ1234567" channel: 1 @@ -331,7 +331,7 @@ Set boolean variable to true: ```yaml ... action: - service: homematic.set_variable_value + action: homematic.set_variable_value target: entity_id: homematic.ccu2 data: @@ -349,7 +349,7 @@ Manually turn on a switch actor: ```yaml ... action: - service: homematic.set_device_value + action: homematic.set_device_value data: address: "LEQ1234567" channel: 1 @@ -362,7 +362,7 @@ Manually set temperature on thermostat: ```yaml ... action: - service: homematic.set_device_value + action: homematic.set_device_value data: address: "LEQ1234567" channel: 4 @@ -375,7 +375,7 @@ Manually set the active profile on thermostat: ```yaml ... action: - service: homematic.set_device_value + action: homematic.set_device_value data: address: "LEQ1234567" channel: 1 @@ -389,7 +389,7 @@ Set the week program of a wall thermostat: ```yaml ... action: - service: homematic.put_paramset + action: homematic.put_paramset data: interface: wireless address: "LEQ1234567" @@ -403,7 +403,7 @@ Set the week program of a wall thermostat with explicit `rx_mode` (BidCos-RF onl ```yaml ... action: - service: homematic.put_paramset + action: homematic.put_paramset data: interface: wireless address: "LEQ1234567" @@ -424,7 +424,7 @@ Manually set lock on KeyMatic devices: ```yaml ... action: - service: lock.lock + action: lock.lock target: entity_id: lock.leq1234567 ``` @@ -434,7 +434,7 @@ Manually set unlock on KeyMatic devices: ```yaml ... action: - service: lock.unlock + action: lock.unlock target: entity_id: lock.leq1234567 ``` @@ -454,14 +454,14 @@ lock: unique_id: basedoor value_template: "{{ is_state('sensor.lock_status', 'locked') }}" lock: - service: homematic.set_device_value + action: homematic.set_device_value data: address: "002A1BE9A792D2" channel: 1 param: LOCK_TARGET_LEVEL value: 0 unlock: - service: homematic.set_device_value + action: homematic.set_device_value data: address: "002A1BE9A792D2" channel: 1 @@ -494,7 +494,7 @@ automation: to: "off" action: # Reconnect, if sensor has not been updated for over 10 minutes - service: homematic.reconnect + action: homematic.reconnect ``` {% endraw %} @@ -538,7 +538,7 @@ automation: platform: state entity_id: sensor.v_last_reboot action: - service: homematic.reconnect + action: homematic.reconnect ``` ## Notifications @@ -626,7 +626,7 @@ notify: - name: group_hm platform: group services: - - service: my_hm + - action: my_hm data: data: value: "1,1,108000{% if is_state('binary_sensor.oeqxxxxxxx_state', 'on') %},1{% endif %}{% if is_state('binary_sensor.oeqxxxxxxx_state', 'on') %},2{% endif %}" diff --git a/source/_integrations/homematicip_cloud.markdown b/source/_integrations/homematicip_cloud.markdown index 6baf8039f12..4dc697d794e 100644 --- a/source/_integrations/homematicip_cloud.markdown +++ b/source/_integrations/homematicip_cloud.markdown @@ -234,7 +234,7 @@ Activate eco mode with duration. ```yaml ... action: - service: homematicip_cloud.activate_eco_mode_with_duration + action: homematicip_cloud.activate_eco_mode_with_duration data: duration: 60 accesspoint_id: 3014xxxxxxxxxxxxxxxxxxxx @@ -245,7 +245,7 @@ Activate eco mode with period. ```yaml ... action: - service: homematicip_cloud.activate_eco_mode_with_period + action: homematicip_cloud.activate_eco_mode_with_period data: endtime: 2019-09-17 18:00 accesspoint_id: 3014xxxxxxxxxxxxxxxxxxxx @@ -256,7 +256,7 @@ Activates the vacation mode until the given time. ```yaml ... action: - service: homematicip_cloud.activate_vacation + action: homematicip_cloud.activate_vacation data: endtime: 2019-09-17 18:00 temperature: 18.5 @@ -268,7 +268,7 @@ Deactivates the eco mode immediately. ```yaml ... action: - service: homematicip_cloud.deactivate_eco_mode + action: homematicip_cloud.deactivate_eco_mode data: accesspoint_id: 3014xxxxxxxxxxxxxxxxxxxx ``` @@ -278,7 +278,7 @@ Deactivates the vacation mode immediately. ```yaml ... action: - service: homematicip_cloud.deactivate_vacation + action: homematicip_cloud.deactivate_vacation data: accesspoint_id: 3014xxxxxxxxxxxxxxxxxxxx ``` @@ -291,7 +291,7 @@ You can get the required index from the native Homematic IP App. ```yaml ... action: - service: homematicip_cloud.set_active_climate_profile + action: homematicip_cloud.set_active_climate_profile target: entity_id: climate.livingroom data: @@ -303,7 +303,7 @@ Dump the configuration of the Homematic IP Access Point(s). ```yaml ... action: - service: homematicip_cloud.dump_hap_config + action: homematicip_cloud.dump_hap_config data: anonymize: True ``` @@ -313,7 +313,7 @@ Reset energy counter of measuring actuators. ```yaml ... action: - service: homematicip_cloud.reset_energy_counter + action: homematicip_cloud.reset_energy_counter target: entity_id: switch.livingroom ``` diff --git a/source/_integrations/homeworks.markdown b/source/_integrations/homeworks.markdown index 19ae794dda8..9ff751783d6 100644 --- a/source/_integrations/homeworks.markdown +++ b/source/_integrations/homeworks.markdown @@ -45,7 +45,7 @@ Send a custom command to the Lutron Homeworks controller. The example shows how to send `KBP`, wait 0.5 seconds, then send `KBR` to simulate a keypad button keypress with a duration of a half second. ```yaml -service: homeworks.send_command +action: homeworks.send_command data: controller_id: "homeworks" command: diff --git a/source/_integrations/honeywell.markdown b/source/_integrations/honeywell.markdown index 97ba49a06e3..0f27d947963 100644 --- a/source/_integrations/honeywell.markdown +++ b/source/_integrations/honeywell.markdown @@ -64,7 +64,7 @@ trigger: action: - repeat: sequence: - - service: climate.set_temperature + - action: climate.set_temperature target: entity_id: climate.stat data: diff --git a/source/_integrations/html5.markdown b/source/_integrations/html5.markdown index ee5d31436b5..da7d2cb19c6 100644 --- a/source/_integrations/html5.markdown +++ b/source/_integrations/html5.markdown @@ -146,7 +146,7 @@ Example of adding a tag to your notification. This won't create new notification - platform: state entity_id: sensor.sensor action: - service: notify.html5 + action: notify.html5 data: message: "Last known sensor state is {{ states('sensor.sensor') }}." data: diff --git a/source/_integrations/humidifier.markdown b/source/_integrations/humidifier.markdown index 6725025b91c..7448d8125f3 100644 --- a/source/_integrations/humidifier.markdown +++ b/source/_integrations/humidifier.markdown @@ -64,7 +64,7 @@ automation: - platform: time at: "07:15:00" action: - - service: humidifier.set_mode + - action: humidifier.set_mode target: entity_id: humidifier.bedroom data: @@ -88,7 +88,7 @@ automation: - platform: time at: "07:15:00" action: - - service: humidifier.set_humidity + - action: humidifier.set_humidity target: entity_id: humidifier.bedroom data: diff --git a/source/_integrations/hunterdouglas_powerview.markdown b/source/_integrations/hunterdouglas_powerview.markdown index 492fe0686f7..cd8566d514d 100644 --- a/source/_integrations/hunterdouglas_powerview.markdown +++ b/source/_integrations/hunterdouglas_powerview.markdown @@ -228,7 +228,7 @@ trigger: platform: time at: "18:00:00" action: - - service: scene.turn_on + - action: scene.turn_on target: entity_id: scene.10877 ``` @@ -245,7 +245,7 @@ trigger: - platform: time_pattern hours: '1' action: - - service: homeassistant.update_entity + - action: homeassistant.update_entity target: entity_id: - cover.family_right diff --git a/source/_integrations/husqvarna_automower.markdown b/source/_integrations/husqvarna_automower.markdown index 5ed08f5996a..2a37cc84287 100644 --- a/source/_integrations/husqvarna_automower.markdown +++ b/source/_integrations/husqvarna_automower.markdown @@ -175,7 +175,7 @@ With this action, you can let your mower mow or park for a given time. You can s ```yaml # Replace with the name of your mower. -service: husqvarna_automower.override_schedule +action: husqvarna_automower.override_schedule target: entity_id: lawn_mower. data: diff --git a/source/_integrations/hyperion.markdown b/source/_integrations/hyperion.markdown index 69523f81b61..78bf1989306 100644 --- a/source/_integrations/hyperion.markdown +++ b/source/_integrations/hyperion.markdown @@ -118,7 +118,7 @@ automation: entity_id: light.hyperion to: "on" action: - - service: light.turn_on + - action: light.turn_on target: entity_id: light.hyperion data: @@ -140,7 +140,7 @@ To have the lights playing an effect when pausing, idle or turn off a media play entity_id: media_player.plex.plex to: "idle" action: - - service: light.turn_on + - action: light.turn_on target: entity_id: light.hyperion data: @@ -156,7 +156,7 @@ To capture the screen on a USB capture device, when playing something on a media entity_id: media_player.plex to: "playing" action: - - service: switch.turn_on + - action: switch.turn_on target: entity_id: switch.[instance]_component_usb_capture ``` @@ -176,7 +176,7 @@ To toggle the LED device together with the light entity in order to turn light o entity_id: switch.[instance]_component_led_device state: "off" action: - - service: switch.turn_on + - action: switch.turn_on target: entity_id: switch.[instance]_component_led_device ``` diff --git a/source/_integrations/ibeacon.markdown b/source/_integrations/ibeacon.markdown index 7c49d732e03..ef44d6fadc5 100644 --- a/source/_integrations/ibeacon.markdown +++ b/source/_integrations/ibeacon.markdown @@ -108,7 +108,7 @@ trigger: seconds: 0 above: 20 action: - - service: notify.notify + - action: notify.notify data: message: "The black trash can has left the building" title: "The black trash can has left the building" diff --git a/source/_integrations/ifttt.markdown b/source/_integrations/ifttt.markdown index 2b425b00371..4d56b864deb 100644 --- a/source/_integrations/ifttt.markdown +++ b/source/_integrations/ifttt.markdown @@ -45,7 +45,7 @@ automation: action: call_service # the same action 'name' you used in the Body section of the IFTTT recipe condition: [] action: - - service: '{{ trigger.event.data.service }}' + - action: '{{ trigger.event.data.service }}' target: entity_id: '{{ trigger.event.data.entity_id }}' @@ -147,7 +147,7 @@ automation: platform: homeassistant event: start action: - service: ifttt.trigger + action: ifttt.trigger data: {"event":"TestHA_Trigger", "value1":"Hello World!"} ``` @@ -165,7 +165,7 @@ automation: platform: homeassistant event: start action: - service: script.ifttt_notify + action: script.ifttt_notify data: value1: "HA Status:" value2: "{{ trigger.event.data.entity_id.split('_')[1] }} is " @@ -180,7 +180,7 @@ automation: #Example Script to send TestHA_Trigger to IFTTT but with some other data (homeassistant UP). ifttt_notify: sequence: - - service: ifttt.trigger + - action: ifttt.trigger data: {"event":"TestHA_Trigger", "value1":"{{ value1 }}", "value2":"{{ value2 }}", "value3":"{{ value3 }}"} ``` diff --git a/source/_integrations/image_processing.markdown b/source/_integrations/image_processing.markdown index 436dc8a2c87..a151668228d 100644 --- a/source/_integrations/image_processing.markdown +++ b/source/_integrations/image_processing.markdown @@ -74,7 +74,7 @@ automation: entity_id: sensor.door_motion_sensor to: "on" action: - - service: image_processing.scan + - action: image_processing.scan target: entity_id: image_processing.door ... diff --git a/source/_integrations/imap.markdown b/source/_integrations/imap.markdown index 62e2b9f3b4b..07a4cccbee4 100644 --- a/source/_integrations/imap.markdown +++ b/source/_integrations/imap.markdown @@ -207,16 +207,16 @@ condition: - condition: template value_template: "{{ trigger.event.data['sender'] == 'info@example.com' }}" action: - - service: imap.fetch + - action: imap.fetch data: entry: 91fadb3617c5a3ea692aeb62d92aa869 uid: "{{ trigger.event.data['uid'] }}" response_variable: message_text - - service: imap.seen + - action: imap.seen data: entry: 91fadb3617c5a3ea692aeb62d92aa869 uid: "{{ trigger.event.data['uid'] }}" - - service: persistent_notification.create + - action: persistent_notification.create metadata: {} data: message: "{{ message_text['subject'] }}" diff --git a/source/_integrations/incomfort.markdown b/source/_integrations/incomfort.markdown index ddc6ce8db7d..483197614f8 100644 --- a/source/_integrations/incomfort.markdown +++ b/source/_integrations/incomfort.markdown @@ -53,7 +53,7 @@ To send an alert if the CV pressure is too low or too high, consider the followi entity_id: sensor.cv_pressure below: 1.0 action: - - service: notify.pushbullet_notifier + - action: notify.pushbullet_notifier data: title: "Warning: Low CH Pressure" message: >- diff --git a/source/_integrations/input_boolean.markdown b/source/_integrations/input_boolean.markdown index 25dc2e01dc6..5c7cf8de25d 100644 --- a/source/_integrations/input_boolean.markdown +++ b/source/_integrations/input_boolean.markdown @@ -97,7 +97,7 @@ automation: entity_id: input_boolean.notify_home state: "on" action: - - service: notify.pushbullet + - action: notify.pushbullet data: title: "" message: "Honey, I'm home!" @@ -108,7 +108,7 @@ You can also set or change the status of an `input_boolean` by using your automation action. ```yaml -service: input_boolean.turn_on +action: input_boolean.turn_on target: entity_id: input_boolean.notify_home ``` diff --git a/source/_integrations/input_button.markdown b/source/_integrations/input_button.markdown index ef17846f3ef..805636c71aa 100644 --- a/source/_integrations/input_button.markdown +++ b/source/_integrations/input_button.markdown @@ -71,7 +71,7 @@ trigger: - platform: state entity_id: input_button.my_button action: - - service: notify.frenck + - action: notify.frenck data: message: "My button has been pressed!" ``` @@ -84,7 +84,7 @@ The input button entities exposes a single action: This action can be used to trigger a button press for that entity. ```yaml -- service: input_button.press +- action: input_button.press target: entity_id: input_button.my_button ``` diff --git a/source/_integrations/input_datetime.markdown b/source/_integrations/input_datetime.markdown index 90afc6e93e5..35e85da17b6 100644 --- a/source/_integrations/input_datetime.markdown +++ b/source/_integrations/input_datetime.markdown @@ -121,7 +121,7 @@ automation: platform: time at: input_datetime.bedroom_alarm_clock_time action: - service: light.turn_on + action: light.turn_on target: entity_id: light.bedroom ``` @@ -134,37 +134,37 @@ If you have a `datetime` object you can use its `timestamp` method. Of if you ha ```yaml # Sets time to 05:30:00 -- service: input_datetime.set_datetime +- action: input_datetime.set_datetime target: entity_id: input_datetime.XXX data: time: "05:30:00" # Sets time to time from datetime object -- service: input_datetime.set_datetime +- action: input_datetime.set_datetime target: entity_id: input_datetime.XXX data: time: "{{ now().strftime('%H:%M:%S') }}" # Sets date to 2020-08-24 -- service: input_datetime.set_datetime +- action: input_datetime.set_datetime target: entity_id: input_datetime.XXX data: date: "2020-08-24" # Sets date to date from datetime object -- service: input_datetime.set_datetime +- action: input_datetime.set_datetime target: entity_id: input_datetime.XXX data: date: "{{ now().strftime('%Y-%m-%d') }}" # Sets date and time to 2020-08-25 05:30:00 -- service: input_datetime.set_datetime +- action: input_datetime.set_datetime target: entity_id: input_datetime.XXX data: datetime: "2020-08-25 05:30:00" # Sets date and time from datetime object -- service: input_datetime.set_datetime +- action: input_datetime.set_datetime target: entity_id: input_datetime.XXX data: @@ -172,7 +172,7 @@ If you have a `datetime` object you can use its `timestamp` method. Of if you ha # Sets date and/or time from UNIX timestamp # This can be used whether the input_datetime has just a date, # or just a time, or has both -- service: input_datetime.set_datetime +- action: input_datetime.set_datetime target: entity_id: input_datetime.XXX data: diff --git a/source/_integrations/input_number.markdown b/source/_integrations/input_number.markdown index 0a219b127a8..3ae736e3145 100644 --- a/source/_integrations/input_number.markdown +++ b/source/_integrations/input_number.markdown @@ -131,7 +131,7 @@ automation: platform: state entity_id: input_number.bedroom_brightness action: - - service: light.turn_on + - action: light.turn_on target: entity_id: light.bedroom data: @@ -171,7 +171,7 @@ automation: entity_id: input_select.scene_bedroom to: CUSTOM action: - - service: light.turn_on + - action: light.turn_on target: entity_id: light.bedroom data: @@ -203,7 +203,7 @@ automation: platform: mqtt topic: "setTemperature" action: - service: input_number.set_value + action: input_number.set_value target: entity_id: input_number.target_temp data: @@ -216,7 +216,7 @@ automation: platform: state entity_id: input_number.target_temp action: - service: mqtt.publish + action: mqtt.publish data: topic: "setTemperature" retain: true @@ -256,7 +256,7 @@ automation: to: "on" action: - delay: "00:{{ states('input_number.minutes') | int }}:{{ states('input_number.seconds') | int }}" - - service: switch.turn_off + - action: switch.turn_off target: entity_id: switch.something ``` diff --git a/source/_integrations/input_select.markdown b/source/_integrations/input_select.markdown index ce01a61b4cf..3c416aaf829 100644 --- a/source/_integrations/input_select.markdown +++ b/source/_integrations/input_select.markdown @@ -139,7 +139,7 @@ automation: platform: event event_type: MY_CUSTOM_EVENT action: - - service: input_select.select_option + - action: input_select.select_option target: entity_id: input_select.who_cooks data: @@ -156,7 +156,7 @@ automation: platform: event event_type: MY_CUSTOM_EVENT action: - - service: input_select.set_options + - action: input_select.set_options target: entity_id: input_select.who_cooks data: @@ -190,7 +190,7 @@ input_select: topic: "thermostatMode" # entity_id: input_select.thermostat_mode action: - service: input_select.select_option + action: input_select.select_option target: entity_id: input_select.thermostat_mode data: @@ -203,7 +203,7 @@ input_select: platform: state entity_id: input_select.thermostat_mode action: - service: mqtt.publish + action: mqtt.publish data: topic: "thermostatMode" retain: true diff --git a/source/_integrations/input_text.markdown b/source/_integrations/input_text.markdown index 5bafef44f7c..414c22bd29c 100644 --- a/source/_integrations/input_text.markdown +++ b/source/_integrations/input_text.markdown @@ -133,7 +133,7 @@ automation: platform: state entity_id: input_select.scene_bedroom action: - - service: input_text.set_value + - action: input_text.set_value target: entity_id: input_text.bedroom data: diff --git a/source/_integrations/insteon.markdown b/source/_integrations/insteon.markdown index ca68809fc76..a51ddb2ae08 100644 --- a/source/_integrations/insteon.markdown +++ b/source/_integrations/insteon.markdown @@ -135,7 +135,7 @@ automation: - id: trigger_scene_25_on alias: "Turn on scene 25" action: - - service: insteon.scene_on + - action: insteon.scene_on group: 25 ``` @@ -168,7 +168,7 @@ automation: entity_id: light.some_light state: "off" action: - - service: light.turn_on + - action: light.turn_on target: entity_id: light.some_light @@ -185,7 +185,7 @@ automation: entity_id: light.some_light state: "off" action: - - service: light.turn_on + - action: light.turn_on target: entity_id: light.some_light ``` diff --git a/source/_integrations/intent_script.markdown b/source/_integrations/intent_script.markdown index 34adabbcd36..d8a70a8f69e 100644 --- a/source/_integrations/intent_script.markdown +++ b/source/_integrations/intent_script.markdown @@ -23,7 +23,7 @@ intent_script: speech: text: We have {{ states('sensor.temperature') }} degrees action: - service: notify.notify + action: notify.notify data: message: Hello from an intent! ``` @@ -110,7 +110,7 @@ conversation: intent_script: EventCountToday: action: - - service: calendar.get_events + - action: calendar.get_events target: entity_id: calendar.my_calendar data_template: diff --git a/source/_integrations/isy994.markdown b/source/_integrations/isy994.markdown index 1a58b7753fa..8c1ffcdc8fd 100644 --- a/source/_integrations/isy994.markdown +++ b/source/_integrations/isy994.markdown @@ -103,7 +103,7 @@ automation: uom: "100" prec: "0" action: - service: light.turn_off + action: light.turn_off target: entity_id: light.lr_track_lights_rear ``` diff --git a/source/_integrations/kaleidescape.markdown b/source/_integrations/kaleidescape.markdown index 809084ab428..7780582f554 100644 --- a/source/_integrations/kaleidescape.markdown +++ b/source/_integrations/kaleidescape.markdown @@ -57,7 +57,7 @@ The Kaleidescape remote platform will create a [Remote](/integrations/remote/) e A typical action might look like the example below, which sends a command to the device to _select_ the currently highlighted item. ```yaml -service: remote.send_command +action: remote.send_command target: entity_id: remote.kaleidescape_theater data: @@ -234,7 +234,7 @@ A typical automation might look like the example below, which turns up the light entity_id: sensor.kaleidescape_theater_media_location from: content action: - - service: scene.turn_on + - action: scene.turn_on target: entity_id: scene.theater_lights ``` diff --git a/source/_integrations/keyboard_remote.markdown b/source/_integrations/keyboard_remote.markdown index 867b384c0a2..9d5bec04c05 100644 --- a/source/_integrations/keyboard_remote.markdown +++ b/source/_integrations/keyboard_remote.markdown @@ -102,7 +102,7 @@ automation: type: key_down # only trigger on key_down events (optional) action: - service: light.turn_on + action: light.turn_on target: entity_id: light.all ``` @@ -128,7 +128,7 @@ automation: platform: event event_type: keyboard_remote_connected action: - - service: media_player.play_media + - action: media_player.play_media target: entity_id: media_player.speaker data: @@ -142,7 +142,7 @@ automation: event_data: device_name: "00:58:56:4C:C0:91" action: - - service: media_player.play_media + - action: media_player.play_media target: entity_id: media_player.speaker data: diff --git a/source/_integrations/knx.markdown b/source/_integrations/knx.markdown index 2fde7fdeb6e..4569eb6dd83 100644 --- a/source/_integrations/knx.markdown +++ b/source/_integrations/knx.markdown @@ -374,7 +374,7 @@ automation: destination: "0/4/20" action: - delay: 0:0:10 - - service: knx.read + - action: knx.read data: # Cover position address address: "0/4/21" @@ -384,7 +384,7 @@ automation: event: start action: # Register the group address to trigger a knx_event - - service: knx.event_register + - action: knx.event_register data: # Cover move trigger address: "0/4/20" @@ -607,7 +607,7 @@ automation: state: "on" action: - entity_id: light.hue_color_lamp_1 - service: light.turn_on + action: light.turn_on - trigger: platform: numeric_state entity_id: binary_sensor.livingroom_switch @@ -620,9 +620,9 @@ automation: state: "on" action: - entity_id: light.hue_bloom_1 - service: homeassistant.turn_on + action: homeassistant.turn_on - entity_id: light.hue_bloom_2 - service: homeassistant.turn_on + action: homeassistant.turn_on ``` {% configuration %} @@ -1508,7 +1508,7 @@ entity_category: ### Example action ```yaml -service: notify.send_message +action: notify.send_message data: message: "Hello from HA!" entity_id: notify.alarm diff --git a/source/_integrations/kodi.markdown b/source/_integrations/kodi.markdown index 394e234a5cf..30a3ef1f0bf 100644 --- a/source/_integrations/kodi.markdown +++ b/source/_integrations/kodi.markdown @@ -52,7 +52,7 @@ automation: entity_id: media_player.kodi type: turn_on action: - - service: script.kodi_turn_on + - action: script.kodi_turn_on - id: kodi_turn_off alias: "Kodi: turn off" @@ -63,7 +63,7 @@ automation: entity_id: media_player.kodi type: turn_off action: - - service: script.kodi_turn_off + - action: script.kodi_turn_off ``` ### Actions @@ -113,7 +113,7 @@ With this configuration, when calling `media_player/turn_on` on the Kodi device, script: turn_on_kodi_with_wol: sequence: - - service: wake_on_lan.send_magic_packet + - action: wake_on_lan.send_magic_packet data: mac: aa:bb:cc:dd:ee:ff broadcast_address: 192.168.255.255 @@ -129,7 +129,7 @@ Here are the equivalent ways to configure each of the old options to turn off Ko script: kodi_quit: sequence: - - service: kodi.call_method + - action: kodi.call_method target: entity_id: media_player.kodi data: @@ -142,7 +142,7 @@ script: script: kodi_hibernate: sequence: - - service: kodi.call_method + - action: kodi.call_method target: entity_id: media_player.kodi data: @@ -155,7 +155,7 @@ script: script: kodi_suspend: sequence: - - service: kodi.call_method + - action: kodi.call_method target: entity_id: media_player.kodi data: @@ -168,7 +168,7 @@ script: script: kodi_reboot: sequence: - - service: kodi.call_method + - action: kodi.call_method target: entity_id: media_player.kodi data: @@ -181,7 +181,7 @@ script: script: kodi_shutdown: sequence: - - service: kodi.call_method + - action: kodi.call_method target: entity_id: media_player.kodi data: @@ -196,7 +196,7 @@ For Kodi devices running 24/7 attached to a CEC capable TV (OSMC / OpenElec and script: turn_on_kodi_with_cec: sequence: - - service: kodi.call_method + - action: kodi.call_method target: entity_id: media_player.kodi data: @@ -207,10 +207,10 @@ script: turn_off_kodi_with_cec: sequence: - - service: media_player.media_stop + - action: media_player.media_stop target: entity_id: media_player.kodi - - service: kodi.call_method + - action: kodi.call_method target: entity_id: media_player.kodi data: @@ -236,11 +236,11 @@ script: alias: "Turn on the silly box" sequence: - alias: "TV on" - service: media_player.turn_on + action: media_player.turn_on target: entity_id: media_player.kodi - alias: "Play TV channel" - service: media_player.play_media + action: media_player.play_media target: entity_id: media_player.kodi data: @@ -273,10 +273,10 @@ script: alias: "Turn on the silly box with random Firefighter Sam episode" sequence: - alias: "TV on" - service: media_player.turn_on + action: media_player.turn_on target: entity_id: media_player.kodi - - service: media_player.play_media + - action: media_player.play_media target: entity_id: media_player.kodi data: @@ -294,7 +294,7 @@ script: alias: "Update Kodi Library" sequence: - alias: "Call Kodi update" - service: kodi.call_method + action: kodi.call_method target: entity_id: media_player.kodi data: @@ -349,7 +349,7 @@ password: ```yaml kodi_notification: sequence: - - service: notify.NOTIFIER_NAME + - action: notify.NOTIFIER_NAME data: title: "Home Assistant" message: "Message to KODI from Home Assistant!" @@ -445,14 +445,14 @@ action: - condition: template value_template: "{{trigger.event.data.data.key=='volume_up'}}" sequence: - - service: media_player.volume_up + - action: media_player.volume_up target: entity_id: media_player.receiver - conditions: - condition: template value_template: "{{trigger.event.data.data.key=='volume_down'}}" sequence: - - service: media_player.volume_down + - action: media_player.volume_down target: entity_id: media_player.receiver ``` diff --git a/source/_integrations/lametric.markdown b/source/_integrations/lametric.markdown index 7b442ac97c9..3616b58b5ee 100644 --- a/source/_integrations/lametric.markdown +++ b/source/_integrations/lametric.markdown @@ -170,7 +170,7 @@ To add a notification sound, icon, cycles, or priority override, from: "not_home" to: "school" action: - service: notify.my_lametric + action: notify.my_lametric data: message: "Tom has arrived at school!" data: diff --git a/source/_integrations/landisgyr_heat_meter.markdown b/source/_integrations/landisgyr_heat_meter.markdown index f0101cda990..ab3ba2bc931 100644 --- a/source/_integrations/landisgyr_heat_meter.markdown +++ b/source/_integrations/landisgyr_heat_meter.markdown @@ -80,7 +80,7 @@ trigger: - platform: time at: "23:30:00" action: - - service: homeassistant.update_entity + - action: homeassistant.update_entity target: entity_id: sensor.heat_meter_heat_usage_gj ``` diff --git a/source/_integrations/lcn.markdown b/source/_integrations/lcn.markdown index 4473ea78c24..7b43735186b 100644 --- a/source/_integrations/lcn.markdown +++ b/source/_integrations/lcn.markdown @@ -722,7 +722,7 @@ Set absolute brightness of output port in percent. Example: ```yaml -service: lcn.output_abs +action: lcn.output_abs data: address: myhome.0.7 output: output1 @@ -744,7 +744,7 @@ Set relative brightness of output port in percent. Example: ```yaml -service: lcn.output_rel +action: lcn.output_rel data: address: myhome.0.7 output: output1 @@ -764,7 +764,7 @@ Toggle output port. Example: ```yaml -service: lcn.output_toggle +action: lcn.output_toggle data: address: myhome.0.7 output: output1 @@ -786,7 +786,7 @@ Example states: `t---001-` Example: ```yaml -service: lcn.relays +action: lcn.relays data: address: myhome.0.7 state: t---001- @@ -804,7 +804,7 @@ Set the LED status. Example: ```yaml -service: lcn.led +action: lcn.led data: address: myhome.0.7 led: led6 @@ -827,7 +827,7 @@ If `unit_of_measurement` is not defined, it is assumed to be `native`. Example: ```yaml -service: lcn.var_abs +action: lcn.var_abs data: address: myhome.0.7 variable: var1 @@ -856,7 +856,7 @@ If `unit_of_measurement` is not defined, it is assumed to be `native`. Example: ```yaml -service: lcn.var_rel +action: lcn.var_rel data: address: myhome.0.7 variable: var1 @@ -881,7 +881,7 @@ Reset value of variable or setpoint. Example: ```yaml -service: lcn.var_reset +action: lcn.var_reset data: address: myhome.0.7 variable: var1 @@ -906,7 +906,7 @@ If `state` is not defined, it is assumed to be `False`. Example: ```yaml -service: lcn.lock_regulator +action: lcn.lock_regulator data: address: myhome.0.7 setpoint: r1varsetpoint @@ -933,7 +933,7 @@ Examples: Send keys immediately: ```yaml -service: lcn.send_keys +action: lcn.send_keys data: address: myhome.0.7 keys: a1a5d8 @@ -942,7 +942,7 @@ data: Send keys deferred: ```yaml -service: lcn.send_keys +action: lcn.send_keys data: address: myhome.0.7 keys: a1a5d8 @@ -970,7 +970,7 @@ Examples: Lock keys forever: ```yaml -service: lcn.lock_keys +action: lcn.lock_keys data: address: myhome.0.7 table: a @@ -979,7 +979,7 @@ data: Lock keys for a specified time period: ```yaml -service: lcn.lock_keys +action: lcn.lock_keys data: address: myhome.0.7 state: 1---t0-- @@ -1003,7 +1003,7 @@ Each row can be set independently and can store up to 60 characters (encoded in Example: ```yaml -service: lcn.dyn_text +action: lcn.dyn_text data: address: myhome.0.7 row: 1 @@ -1022,7 +1022,7 @@ Send arbitrary PCK command. Only the command part of the PCK command has to be s Example: ```yaml -service: lcn.pck +action: lcn.pck data: address: myhome.0.7 pck: PIN4 diff --git a/source/_integrations/lg_netcast.markdown b/source/_integrations/lg_netcast.markdown index 3e161686741..08897bd4b7c 100644 --- a/source/_integrations/lg_netcast.markdown +++ b/source/_integrations/lg_netcast.markdown @@ -43,7 +43,7 @@ automation: - platform: lg_netcast.turn_on entity_id: media_player.lg_netcast_smart_tv action: - - service: wake_on_lan.send_magic_packet + - action: wake_on_lan.send_magic_packet data: mac: AA-BB-CC-DD-EE-FF broadcast_address: 11.22.33.44 @@ -57,7 +57,7 @@ The `play_media` action can be used in a script to switch to the specified TV ch ```yaml # Example action entry in script to switch to channel number 15 -service: media_player.play_media +action: media_player.play_media target: entity_id: media_player.lg_tv data: diff --git a/source/_integrations/lifx.markdown b/source/_integrations/lifx.markdown index 5dac8b42d76..60923d268d7 100644 --- a/source/_integrations/lifx.markdown +++ b/source/_integrations/lifx.markdown @@ -96,7 +96,7 @@ automation: trigger: # ... action: - - service: light.turn_on + - action: light.turn_on target: entity_id: light.office, light.kitchen data: @@ -110,7 +110,7 @@ script: colorloop_start: alias: "Start colorloop" sequence: - - service: lifx.effect_colorloop + - action: lifx.effect_colorloop target: entity_id: group.livingroom data: @@ -214,7 +214,7 @@ The palette for the Sky effect is shared between all three sky types. To use a c For example, the following YAML will trigger the Sky effect with the Sunrise sky type to run for five minutes using the same palette as the LIFX smartphone app: ```yaml -service: lifx.effect_sky +action: lifx.effect_sky target: entity_id: light.lifx_ceiling data: diff --git a/source/_integrations/lifx_cloud.markdown b/source/_integrations/lifx_cloud.markdown index 1546cbd36fb..cb587833428 100644 --- a/source/_integrations/lifx_cloud.markdown +++ b/source/_integrations/lifx_cloud.markdown @@ -29,7 +29,7 @@ scene: You can then activate each scene with its name from the smartphone app: ```yaml - - service: scene.turn_on + - action: scene.turn_on target: entity_id: scene.goodnight ``` diff --git a/source/_integrations/light.markdown b/source/_integrations/light.markdown index 83bc767431e..b082eab302e 100644 --- a/source/_integrations/light.markdown +++ b/source/_integrations/light.markdown @@ -75,7 +75,7 @@ automation: entity_id: binary_sensor.motion_1 to: "on" action: - - service: light.turn_on + - action: light.turn_on target: entity_id: light.living_room data: @@ -90,7 +90,7 @@ automation: - at: '05:00' platform: time action: - - service: light.turn_on + - action: light.turn_on target: entity_id: light.ledliststair data: diff --git a/source/_integrations/light.template.markdown b/source/_integrations/light.template.markdown index 1e7623f9a49..572e5f7ff42 100644 --- a/source/_integrations/light.template.markdown +++ b/source/_integrations/light.template.markdown @@ -40,28 +40,28 @@ light: hs_template: "({{states('input_number.h_input') | int}}, {{states('input_number.s_input') | int}})" effect_list_template: "{{ state_attr('light.led_strip', 'effect_list') }}" turn_on: - service: script.theater_lights_on + action: script.theater_lights_on turn_off: - service: script.theater_lights_off + action: script.theater_lights_off set_level: - service: script.theater_lights_level + action: script.theater_lights_level data: brightness: "{{ brightness }}" set_temperature: - service: input_number.set_value + action: input_number.set_value data: value: "{{ color_temp }}" entity_id: input_number.temperature_input set_hs: - - service: input_number.set_value + - action: input_number.set_value data: value: "{{ h }}" entity_id: input_number.h_input - - service: input_number.set_value + - action: input_number.set_value data: value: "{{ s }}" entity_id: input_number.s_input - - service: light.turn_on + - action: light.turn_on data: entity_id: - light.led_strip @@ -70,7 +70,7 @@ light: - "{{ hs[0] }}" - "{{ hs[1] }}" set_effect: - - service: light.turn_on + - action: light.turn_on data: entity_id: - light.led_strip @@ -251,19 +251,19 @@ light: off {% endif %} turn_on: - service: media_player.volume_mute + action: media_player.volume_mute target: entity_id: media_player.receiver data: is_volume_muted: false turn_off: - service: media_player.volume_mute + action: media_player.volume_mute target: entity_id: media_player.receiver data: is_volume_muted: true set_level: - service: media_player.volume_set + action: media_player.volume_set target: entity_id: media_player.receiver data: @@ -311,13 +311,13 @@ light: mdi:lightbulb-off {% endif %} turn_on: - service: media_player.volume_mute + action: media_player.volume_mute target: entity_id: media_player.receiver data: is_volume_muted: false turn_off: - service: media_player.volume_mute + action: media_player.volume_mute target: entity_id: media_player.receiver data: @@ -359,13 +359,13 @@ light: /local/lightbulb-off.png {% endif %} turn_on: - service: media_player.volume_mute + action: media_player.volume_mute target: entity_id: media_player.receiver data: is_volume_muted: false turn_off: - service: media_player.volume_mute + action: media_player.volume_mute target: entity_id: media_player.receiver data: @@ -400,18 +400,18 @@ light: availability_template: "{{ not is_state('light.wled_master', 'unknown') }}" turn_on: - service: light.turn_on + action: light.turn_on entity_id: light.wled_segment_0, light.wled_segment_1, light.wled_master turn_off: - service: light.turn_off + action: light.turn_off entity_id: light.wled_master set_level: - service: light.turn_on + action: light.turn_on entity_id: light.wled_master data: brightness: "{{ brightness }}" set_rgbw: - service: light.turn_on + action: light.turn_on entity_id: light.wled_segment_0, light.wled_segment_1 data: rgbw_color: @@ -421,7 +421,7 @@ light: - "{{ w }}" effect: "Solid" set_effect: - service: light.turn_on + action: light.turn_on entity_id: light.wled_segment_0, light.wled_segment_1 data: effect: "{{ effect }}" diff --git a/source/_integrations/limitlessled.markdown b/source/_integrations/limitlessled.markdown index 109d2a1bb66..41f267e39f5 100644 --- a/source/_integrations/limitlessled.markdown +++ b/source/_integrations/limitlessled.markdown @@ -114,7 +114,7 @@ automation: trigger: # ... action: - - service: light.turn_on + - action: light.turn_on target: entity_id: - light.office diff --git a/source/_integrations/lirc.markdown b/source/_integrations/lirc.markdown index 35b89da5424..8ab3bf28358 100644 --- a/source/_integrations/lirc.markdown +++ b/source/_integrations/lirc.markdown @@ -90,7 +90,7 @@ automation: event_data: button_name: KEY_0 action: - service: homeassistant.turn_off + action: homeassistant.turn_off target: entity_id: group.a_lights ``` diff --git a/source/_integrations/litterrobot.markdown b/source/_integrations/litterrobot.markdown index d558027debc..ac3077f7395 100644 --- a/source/_integrations/litterrobot.markdown +++ b/source/_integrations/litterrobot.markdown @@ -93,7 +93,7 @@ Enables (with `start_time` parameter) or disables sleep mode on the Litter-Robot Example of setting the sleep mode to begin at 10:30 PM. ```yaml -service: litterrobot.set_sleep_mode +action: litterrobot.set_sleep_mode target: entity_id: vacuum.litter_robot_litter_box data: diff --git a/source/_integrations/llamalab_automate.markdown b/source/_integrations/llamalab_automate.markdown index bcf11fa714f..29f51d8c7c3 100644 --- a/source/_integrations/llamalab_automate.markdown +++ b/source/_integrations/llamalab_automate.markdown @@ -57,7 +57,7 @@ device: Example Automation: ```yaml -- service: notify.entity_id +- action: notify.entity_id data: message: "This is the message" data: diff --git a/source/_integrations/lock.markdown b/source/_integrations/lock.markdown index 83576ff7a44..3e88ccf93ff 100644 --- a/source/_integrations/lock.markdown +++ b/source/_integrations/lock.markdown @@ -34,7 +34,7 @@ Lock your door, the attribute should appear under a 'data' attribute for the act ```yaml action: - service: lock.lock + action: lock.lock target: entity_id: lock.my_place ``` @@ -51,7 +51,7 @@ Unlock your door, the attribute should appear under a 'data' attribute for the a ```yaml action: - service: lock.unlock + action: lock.unlock target: entity_id: lock.my_place ``` diff --git a/source/_integrations/lock.template.markdown b/source/_integrations/lock.template.markdown index 84719d98462..9cd4f878a64 100644 --- a/source/_integrations/lock.template.markdown +++ b/source/_integrations/lock.template.markdown @@ -39,11 +39,11 @@ lock: name: Garage door value_template: "{{ is_state('sensor.door', 'on') }}" lock: - service: switch.turn_on + action: switch.turn_on target: entity_id: switch.door unlock: - service: switch.turn_off + action: switch.turn_off target: entity_id: switch.door ``` @@ -113,11 +113,11 @@ lock: name: Garage Door value_template: "{{ is_state('switch.source', 'on') }}" lock: - service: switch.turn_on + action: switch.turn_on target: entity_id: switch.source unlock: - service: switch.turn_off + action: switch.turn_off target: entity_id: switch.source ``` @@ -137,11 +137,11 @@ lock: value_template: "{{ is_state('sensor.skylight.state', 'on') }}" optimistic: true lock: - service: switch.turn_on + action: switch.turn_on target: entity_id: switch.source unlock: - service: switch.turn_off + action: switch.turn_off target: entity_id: switch.source ``` @@ -160,11 +160,11 @@ lock: name: Garage Door value_template: "{{ is_state('sensor.skylight.state', 'on') }}" lock: - service: switch.turn_on + action: switch.turn_on target: entity_id: switch.skylight_open unlock: - service: switch.turn_on + action: switch.turn_on target: entity_id: switch.skylight_close ``` @@ -184,14 +184,14 @@ lock: value_template: "{{ is_state('switch.source', 'on') }}" code_format_template: "{{ '\\d{4}' if is_state('switch.source', 'on') else None }}" lock: - - service: switch.turn_on + - action: switch.turn_on target: entity_id: switch.source unlock: - variables: pin: !secret garage_door_pin - condition: "{{ code == pin }}" - - service: switch.turn_off + - action: switch.turn_off target: entity_id: switch.source ``` diff --git a/source/_integrations/logbook.markdown b/source/_integrations/logbook.markdown index b52ef960644..c53b9a8dc7f 100644 --- a/source/_integrations/logbook.markdown +++ b/source/_integrations/logbook.markdown @@ -162,7 +162,7 @@ script: add_logbook_entry: alias: "Add Logbook" sequence: - - service: logbook.log + - action: logbook.log data: name: Kitchen message: is being used diff --git a/source/_integrations/logger.markdown b/source/_integrations/logger.markdown index c0b55f59b80..175d05596f4 100644 --- a/source/_integrations/logger.markdown +++ b/source/_integrations/logger.markdown @@ -147,7 +147,7 @@ level) using the `logger.set_default_level` action. An example call might look like this: ```yaml -service: logger.set_default_level +action: logger.set_default_level data: level: info ``` @@ -160,7 +160,7 @@ It accepts the same format as `logs` in the configuration. An example call might look like this: ```yaml -service: logger.set_level +action: logger.set_level data: homeassistant.core: fatal homeassistant.components.mqtt: warning diff --git a/source/_integrations/lutron.markdown b/source/_integrations/lutron.markdown index 86c13170ad9..86bde3b589f 100644 --- a/source/_integrations/lutron.markdown +++ b/source/_integrations/lutron.markdown @@ -81,7 +81,7 @@ Any configured Powr Savr occupancy sensors will be added as occupancy binary sen id: office_pico_on action: single action: - - service: notify.telegram + - action: notify.telegram data: message: "pico just turned on!" ``` diff --git a/source/_integrations/mailgun.markdown b/source/_integrations/mailgun.markdown index 6e121b93eeb..587a4d71b6b 100644 --- a/source/_integrations/mailgun.markdown +++ b/source/_integrations/mailgun.markdown @@ -59,7 +59,7 @@ automation: event_data: action: call_service action: - service: light.turn_on + action: light.turn_on target: entity_id: light.office ``` @@ -106,7 +106,7 @@ automation: platform: event event_type: SPECIAL_EVENT action: - service: notify.mailgun + action: notify.mailgun data: title: "Something special has happened" message: "This a test message from Home Assistant" diff --git a/source/_integrations/manual.markdown b/source/_integrations/manual.markdown index f80cc1440b7..2d795a6fa99 100644 --- a/source/_integrations/manual.markdown +++ b/source/_integrations/manual.markdown @@ -188,7 +188,7 @@ automation: entity_id: alarm_control_panel.home_alarm state: armed_away action: - service: alarm_control_panel.alarm_trigger + action: alarm_control_panel.alarm_trigger target: entity_id: alarm_control_panel.home_alarm ``` @@ -203,7 +203,7 @@ automation: entity_id: alarm_control_panel.home_alarm to: "triggered" action: - - service: notify.notify + - action: notify.notify data: message: "ALARM! The alarm has been triggered" ``` @@ -219,7 +219,7 @@ automation: to: "19" # many z-wave locks use Alarm Type 19 for 'Unlocked by Keypad' action: - - service: alarm_control_panel.alarm_disarm + - action: alarm_control_panel.alarm_disarm target: entity_id: alarm_control_panel.home_alarm ``` @@ -235,7 +235,7 @@ Sending a Notification when the Alarm is Armed (Away/Home), Disarmed and in Pend entity_id: alarm_control_panel.home_alarm to: "disarmed" action: - - service: notify.notify + - action: notify.notify data: message: "ALARM! The alarm is Disarmed at {{ states('sensor.date_time') }}" ``` @@ -247,7 +247,7 @@ Sending a Notification when the Alarm is Armed (Away/Home), Disarmed and in Pend entity_id: alarm_control_panel.home_alarm to: "pending" action: - - service: notify.notify + - action: notify.notify data: message: "ALARM! The alarm is in pending status at {{ states('sensor.date_time') }}" ``` @@ -259,7 +259,7 @@ Sending a Notification when the Alarm is Armed (Away/Home), Disarmed and in Pend entity_id: alarm_control_panel.home_alarm to: "armed_away" action: - - service: notify.notify + - action: notify.notify data: message: "ALARM! The alarm is armed in Away mode {{ states('sensor.date_time') }}" ``` @@ -271,7 +271,7 @@ Sending a Notification when the Alarm is Armed (Away/Home), Disarmed and in Pend entity_id: alarm_control_panel.home_alarm to: "armed_home" action: - - service: notify.notify + - action: notify.notify data: # Using multi-line notation allows for easier quoting message: > diff --git a/source/_integrations/mastodon.markdown b/source/_integrations/mastodon.markdown index 04af929502a..02a87a28102 100644 --- a/source/_integrations/mastodon.markdown +++ b/source/_integrations/mastodon.markdown @@ -56,7 +56,7 @@ The following attributes can be placed inside `data` for extended functionality. This will post a message to Mastodon. Visibility will default to your account's setting. ```yaml -- service: notify.mastodon +- action: notify.mastodon message: "A toot from Home Assistant" ``` @@ -65,7 +65,7 @@ This will post a message to Mastodon. Visibility will default to your account's This will post a message to Mastodon, but visibility is marked as `private` so only followers will see it. ```yaml -- service: notify.mastodon +- action: notify.mastodon message: "A private toot from Home Assistant" target: private ``` @@ -75,7 +75,7 @@ This will post a message to Mastodon, but visibility is marked as `private` so o This will post a message to Mastodon that includes an image. ```yaml -- service: notify.mastodon +- action: notify.mastodon message: "A media toot from Home Assistant" data: media: /config/www/funny_meme.png @@ -86,7 +86,7 @@ This will post a message to Mastodon that includes an image. This will post a message to Mastodon that includes an image and a target of `unlisted`, so it doesn't show in the public timeline. ```yaml -- service: notify.mastodon +- action: notify.mastodon message: "A media toot from Home Assistant" target: unlisted data: diff --git a/source/_integrations/matrix.markdown b/source/_integrations/matrix.markdown index 44ed36f557e..6d21fdd2b78 100644 --- a/source/_integrations/matrix.markdown +++ b/source/_integrations/matrix.markdown @@ -135,7 +135,7 @@ automation: event_data: command: testword action: - service: notify.matrix_notify + action: notify.matrix_notify data: message: "It looks like you wrote !testword" - alias: 'React to an introduction' @@ -145,7 +145,7 @@ automation: event_data: command: introduction action: - service: notify.matrix_notify + action: notify.matrix_notify data: message: "Hello {{trigger.event.data.args['name']}}" ``` @@ -197,7 +197,7 @@ Supported formats are: `text` (default), and `html`. ```yaml # Example of notification as HTML action: - service: notify.matrix_notify + action: notify.matrix_notify data: message: >-

Hello, world!

@@ -212,7 +212,7 @@ It is possible to send images with notifications. To do so, add a list of paths ```yaml # Example of notification with images action: - service: notify.matrix_notify + action: notify.matrix_notify data: message: "Test with images" data: diff --git a/source/_integrations/mealie.markdown b/source/_integrations/mealie.markdown index 96a129d7a76..9189b0cbfb9 100644 --- a/source/_integrations/mealie.markdown +++ b/source/_integrations/mealie.markdown @@ -136,7 +136,7 @@ template: - platform: time_pattern hours: /1 action: - - service: mealie.get_mealplan + - action: mealie.get_mealplan data: config_entry_id: YOUR_MEALIE_CONFIG_ENTITY_ID response_variable: result diff --git a/source/_integrations/media_player.markdown b/source/_integrations/media_player.markdown index 1e0c61169fa..10790ef7ea5 100644 --- a/source/_integrations/media_player.markdown +++ b/source/_integrations/media_player.markdown @@ -125,7 +125,7 @@ Documentation: Example of calling media player action with title and image set: ```yaml -service: media_player.play_media +action: media_player.play_media target: entity_id: media_player.chromecast data: diff --git a/source/_integrations/media_source.markdown b/source/_integrations/media_source.markdown index 76aad90c36e..a8c82ed2b43 100644 --- a/source/_integrations/media_source.markdown +++ b/source/_integrations/media_source.markdown @@ -88,7 +88,7 @@ of supported video formats. Example: ```yaml -service: media_player.play_media +action: media_player.play_media target: entity_id: media_player.living_room_tv data: diff --git a/source/_integrations/mediaroom.markdown b/source/_integrations/mediaroom.markdown index 7f8350be106..3d59cdee745 100644 --- a/source/_integrations/mediaroom.markdown +++ b/source/_integrations/mediaroom.markdown @@ -69,7 +69,7 @@ The `play_media` function can be used in scripts to change channels: # change_channel: sequence: - service: media_player.play_media + action: media_player.play_media target: entity_id: media_player.mediaroom_stb data: @@ -88,7 +88,7 @@ The `play_media` function can also be used to trigger actions on the set-up-box # press_button: sequence: - service: media_player.play_media + action: media_player.play_media target: entity_id: media_player.mediaroom_stb data: diff --git a/source/_integrations/meteoalarm.markdown b/source/_integrations/meteoalarm.markdown index 817d518aa39..ca806f6cfd4 100644 --- a/source/_integrations/meteoalarm.markdown +++ b/source/_integrations/meteoalarm.markdown @@ -96,7 +96,7 @@ automation: entity_id: binary_sensor.meteoalarm from: 'off' action: - - service: notify.notify + - action: notify.notify data: title: "{{state_attr('binary_sensor.meteoalarm', 'headline')}}" message: "{{state_attr('binary_sensor.meteoalarm', 'description')}} is effective on {{state_attr('binary_sensor.meteoalarm', 'effective')}}" diff --git a/source/_integrations/microsoft_face.markdown b/source/_integrations/microsoft_face.markdown index 47a51b2fbe7..4cd04cf7263 100644 --- a/source/_integrations/microsoft_face.markdown +++ b/source/_integrations/microsoft_face.markdown @@ -66,7 +66,7 @@ via the Frontend, a script, or the REST API. - *microsoft_face.delete_group* ```yaml -service: microsoft_face.create_group +action: microsoft_face.create_group data: name: "Family" ``` @@ -75,7 +75,7 @@ data: - *microsoft_face.delete_person* ```yaml -service: microsoft_face.create_person +action: microsoft_face.create_person data: group: family name: "Hans Maier" @@ -88,7 +88,7 @@ send a local image to your Azure resource. - *microsoft_face.face_person* ```yaml -service: microsoft_face.face_person +action: microsoft_face.face_person data: group: family name: "Hans Maier" @@ -110,7 +110,7 @@ we need train this group to teach the AI how to handle the new data. - *microsoft_face.train_group* ```yaml -service: microsoft_face.train_group +action: microsoft_face.train_group data: group: family ``` diff --git a/source/_integrations/minio.markdown b/source/_integrations/minio.markdown index 6c6d687463c..a4000de9942 100644 --- a/source/_integrations/minio.markdown +++ b/source/_integrations/minio.markdown @@ -95,13 +95,13 @@ automation: event_type: created action: - delay: "00:00:01" - - service: minio.put + - action: minio.put data: file_path: "{{ trigger.event.data.path }}" bucket: "camera-image-object-detection" key: "input/{{ now().year }}/{{ (now().month | string).zfill(2) }}/{{ (now().day | string).zfill(2) }}/{{ trigger.event.data.file }}" - delay: "00:00:01" - - service: shell_command.remove_file + - action: shell_command.remove_file data: file: "{{ trigger.event.data.path }}" @@ -112,7 +112,7 @@ automation: condition: [] action: - - service: minio.get + - action: minio.get data: bucket: "{{trigger.event.data.bucket}}" key: "{{trigger.event.data.key}}" diff --git a/source/_integrations/modbus.markdown b/source/_integrations/modbus.markdown index ea1d3672d94..0926cba9c02 100644 --- a/source/_integrations/modbus.markdown +++ b/source/_integrations/modbus.markdown @@ -1626,7 +1626,7 @@ Description: To write a float32 datatype register use network format like `10.0` == `0x41200000` (network order float hexadecimal). ```yaml -service: modbus.write_register +action: modbus.write_register data: address: slave: diff --git a/source/_integrations/modem_callerid.markdown b/source/_integrations/modem_callerid.markdown index a49a8b97ae3..9f847bf5582 100644 --- a/source/_integrations/modem_callerid.markdown +++ b/source/_integrations/modem_callerid.markdown @@ -45,7 +45,7 @@ automation: entity_id: sensor.phone_modem to: "callerid" action: - service: notify.notify + action: notify.notify data: message: "Call from {{ state_attr('sensor.phone_modem', 'cid_name') }} at {{ state_attr('sensor.phone_modem', 'cid_number') }} " - alias: Notify CallerID webui @@ -54,7 +54,7 @@ automation: entity_id: sensor.phone_modem to: "callerid" action: - service: persistent_notification.create + action: persistent_notification.create data: title: "Call from" message: "{{ state_attr('sensor.phone_modem', 'cid_time').strftime("%I:%M %p") }} {{ state_attr('sensor.phone_modem', 'cid_name') }} {{ state_attr('sensor.phone_modem', 'cid_number') }} " @@ -64,7 +64,7 @@ automation: entity_id: sensor.phone_modem to: "callerid" action: - service: tts.google_say + action: tts.google_say data: message: "Call from {{ state_attr('sensor.phone_modem', 'cid_name') }}" ``` diff --git a/source/_integrations/motion_blinds.markdown b/source/_integrations/motion_blinds.markdown index f8f4e9c79de..3bc41561610 100644 --- a/source/_integrations/motion_blinds.markdown +++ b/source/_integrations/motion_blinds.markdown @@ -204,7 +204,7 @@ trigger: - platform: time_pattern minutes: "/1" action: - - service: homeassistant.update_entity + - action: homeassistant.update_entity target: entity_id: cover.motion_shade ``` diff --git a/source/_integrations/motionblinds_ble.markdown b/source/_integrations/motionblinds_ble.markdown index c97f698e7ab..007cebf4d85 100644 --- a/source/_integrations/motionblinds_ble.markdown +++ b/source/_integrations/motionblinds_ble.markdown @@ -66,7 +66,7 @@ trigger: - platform: time_pattern hours: "/24" action: - - service: homeassistant.update_entity + - action: homeassistant.update_entity target: entity_id: cover.motion_shade ``` diff --git a/source/_integrations/motioneye.markdown b/source/_integrations/motioneye.markdown index 23f57f78cde..000431dd4ff 100644 --- a/source/_integrations/motioneye.markdown +++ b/source/_integrations/motioneye.markdown @@ -273,7 +273,7 @@ Parameters: #### Example: ```yaml -service: motioneye.set_text_overlay +action: motioneye.set_text_overlay data: left_text: timestamp right_text: custom-text @@ -312,7 +312,7 @@ A dashboard card with icons that will call the `action` action to send action co icon: "mdi:arrow-left" tap_action: action: call-service - service: motioneye.action + action: motioneye.action data: action: left entity_id: camera.living_room @@ -320,7 +320,7 @@ A dashboard card with icons that will call the `action` action to send action co icon: "mdi:arrow-right" tap_action: action: call-service - service: motioneye.action + action: motioneye.action data: action: right entity_id: camera.living_room @@ -328,7 +328,7 @@ A dashboard card with icons that will call the `action` action to send action co icon: "mdi:arrow-up" tap_action: action: call-service - service: motioneye.action + action: motioneye.action data: action: up entity_id: camera.living_room @@ -336,7 +336,7 @@ A dashboard card with icons that will call the `action` action to send action co icon: "mdi:arrow-down" tap_action: action: call-service - service: motioneye.action + action: motioneye.action data: action: down entity_id: camera.living_room @@ -356,7 +356,7 @@ must be switched on for this automation to work (controllable via `switch. entity_id: alarm_control_panel.home_alarm to: "armed_away" action: - - service: motioneye.set_text_overlay + - action: motioneye.set_text_overlay target: entity_id: camera.living_room data: @@ -369,7 +369,7 @@ must be switched on for this automation to work (controllable via `switch. entity_id: alarm_control_panel.home_alarm to: "disarmed" action: - - service: motioneye.set_text_overlay + - action: motioneye.set_text_overlay target: entity_id: camera.living_room data: @@ -392,7 +392,7 @@ An automation to cast stored movie clips to a TV as they arrive. # Only cast video. file_type: "8" action: - - service: media_player.play_media + - action: media_player.play_media target: entity_id: media_player.kitchen_tv data: diff --git a/source/_integrations/mpd.markdown b/source/_integrations/mpd.markdown index 0cd924d6586..7930fd38409 100644 --- a/source/_integrations/mpd.markdown +++ b/source/_integrations/mpd.markdown @@ -25,14 +25,14 @@ Example script to load a saved playlist called "DeckMusic" and set the volume: ```yaml relaxdeck: sequence: - - service: media_player.play_media + - action: media_player.play_media target: entity_id: media_player.main data: media_content_type: playlist media_content_id: DeckMusic - - service: media_player.volume_set + - action: media_player.volume_set target: entity_id: media_player.main data: diff --git a/source/_integrations/mqtt.markdown b/source/_integrations/mqtt.markdown index 73c28b1a55b..a1ff21b8f45 100644 --- a/source/_integrations/mqtt.markdown +++ b/source/_integrations/mqtt.markdown @@ -1080,7 +1080,7 @@ automation: entity_id: device_tracker.me to: "home" action: - service: script.notify_mqtt + action: script.notify_mqtt data: target: "me" message: "I'm home" @@ -1088,7 +1088,7 @@ automation: script: notify_mqtt: sequence: - - service: mqtt.publish + - action: mqtt.publish data: payload: "{{ message }}" topic: home/"{{ target }}" @@ -1163,7 +1163,7 @@ If you set "name" in the payload the entity name will start with the device name {% raw %} ```yaml -service: mqtt.publish +action: mqtt.publish data: topic: homeassistant/sensor/Acurite-986-1R-51778/config payload: >- diff --git a/source/_integrations/nest.markdown b/source/_integrations/nest.markdown index 5e6b30b766d..a7dab259747 100644 --- a/source/_integrations/nest.markdown +++ b/source/_integrations/nest.markdown @@ -381,7 +381,7 @@ Example for cameras that support Clip Previews used with iOS which can render vi {% raw %} ```yaml -service: notify.mobile_app_iphone +action: notify.mobile_app_iphone data: message: Doorbell Pressed title: Someone pressed the doorbell @@ -404,7 +404,7 @@ Example for cameras that support Clip Previews, but transcoded to an animated gi {% raw %} ```yaml -service: notify.mobile_app_android +action: notify.mobile_app_android data: message: Doorbell Pressed title: Someone pressed the doorbell @@ -424,7 +424,7 @@ Example for cameras that support Snapshot (jpg) on either Android or iOS. {% raw %} ```yaml -service: notify.mobile_app +action: notify.mobile_app data: message: Doorbell Pressed title: Someone pressed the doorbell diff --git a/source/_integrations/netatmo.markdown b/source/_integrations/netatmo.markdown index 72d7d93e482..c4a0b94203f 100644 --- a/source/_integrations/netatmo.markdown +++ b/source/_integrations/netatmo.markdown @@ -211,7 +211,7 @@ Example: action: - data: {} entity_id: counter.event_counter - service: counter.increment + action: counter.increment ``` Example: @@ -233,7 +233,7 @@ Example: {{ trigger.event.data["data"]["message"] }} at {{ trigger.event.data["data"]["home_name"] }} title: Netatmo event - service: persistent_notification.create + action: persistent_notification.create ``` {% endraw %} @@ -257,7 +257,7 @@ Example: {{ trigger.event.data["data"]["message"] }} at {{ trigger.event.data["data"]["home_name"] }} title: Netatmo event - service: persistent_notification.create + action: persistent_notification.create ``` {% endraw %} @@ -288,7 +288,7 @@ Example: message: > {{ trigger.event.data["data"]["message"] }} title: Netatmo event - service: persistent_notification.create + action: persistent_notification.create ``` {% endraw %} diff --git a/source/_integrations/netgear_lte.markdown b/source/_integrations/netgear_lte.markdown index 62748f330e6..1742878da29 100644 --- a/source/_integrations/netgear_lte.markdown +++ b/source/_integrations/netgear_lte.markdown @@ -102,10 +102,10 @@ automation: - platform: event event_type: netgear_lte_sms action: - - service: conversation.process + - action: conversation.process data: text: "{{ trigger.event.data.message }}" - - service: netgear_lte.delete_sms + - action: netgear_lte.delete_sms data: host: "{{ trigger.event.data.host }}" sms_id: "{{ trigger.event.data.sms_id }}" diff --git a/source/_integrations/nfandroidtv.markdown b/source/_integrations/nfandroidtv.markdown index 12f32786fd9..dbb50826aee 100644 --- a/source/_integrations/nfandroidtv.markdown +++ b/source/_integrations/nfandroidtv.markdown @@ -116,7 +116,7 @@ Example of an automation with an action, full configuration: {% raw %} ```yaml -service: notify.living_room_tv +action: notify.living_room_tv data: title: "Thanks for the water!" message: "Nigel is {{ states('sensor.nigel_moisture') }}% moisture" diff --git a/source/_integrations/nightscout.markdown b/source/_integrations/nightscout.markdown index 676473b9b9d..f4b32b5aec7 100644 --- a/source/_integrations/nightscout.markdown +++ b/source/_integrations/nightscout.markdown @@ -43,7 +43,7 @@ The state is the last reading from Nightscout, and you can see other information after: "22:00:00" before: "06:00:00" action: - - service: light.turn_on + - action: light.turn_on target: entity_id: light.kitchen ``` diff --git a/source/_integrations/nissan_leaf.markdown b/source/_integrations/nissan_leaf.markdown index c6c47a53d96..d9238a1aff1 100644 --- a/source/_integrations/nissan_leaf.markdown +++ b/source/_integrations/nissan_leaf.markdown @@ -99,7 +99,7 @@ nissan_leaf: You can use the `button.press` action to send a request to the Nissan servers to start a charge. The car must be plugged in! ```yaml -- service: button.press +- action: button.press target: entity_id: button.start_NICKNAME_charging # replace ``` @@ -120,7 +120,7 @@ You can also use the `nissan_leaf.update` action to request an on-demand update. entity_id: device_tracker.drivername # replace state: "not_home" action: - - service: nissan_leaf.update + - action: nissan_leaf.update data: vin: "1HGBH41JXMN109186" # replace ``` diff --git a/source/_integrations/notify.markdown b/source/_integrations/notify.markdown index 90f485bc64b..f436504551e 100644 --- a/source/_integrations/notify.markdown +++ b/source/_integrations/notify.markdown @@ -68,7 +68,7 @@ If you switch to view the YAML data under **Developer Tools**, it will appear as {% raw %} ```yaml -service: notify.send_message +action: notify.send_message data: entity_id: notify.my_direct_message_notifier message: "You have an update!" @@ -83,7 +83,7 @@ The notify integration supports specifying [templates](/docs/configuration/templ ```yaml action: - service: notify.send_message + action: notify.send_message data: entity_id: notify.my_direct_message_notifier message: "You have {{ states('todo.shopping_list') }} items on your shopping list." @@ -100,7 +100,7 @@ If you switch to view the YAML data under **Developer Tools**, it will appear as {% raw %} ```yaml -service: notify.persistent_notification +action: notify.persistent_notification data: message: "Can you hear me now?" ``` @@ -113,7 +113,7 @@ The notify integration supports specifying [templates](/docs/configuration/templ ```yaml action: - service: notify.persistent_notification + action: notify.persistent_notification data: message: "You have {{ states('todo.shopping_list') }} items on your shopping list." ``` @@ -124,7 +124,7 @@ action: ```yaml action: - service: notify.persistent_notification + action: notify.persistent_notification data: message: "The sun is {% if is_state('sun.sun', 'above_horizon') %}up{% else %}down{% endif %}!" ``` diff --git a/source/_integrations/notify_events.markdown b/source/_integrations/notify_events.markdown index aac7092078d..478f017528b 100644 --- a/source/_integrations/notify_events.markdown +++ b/source/_integrations/notify_events.markdown @@ -85,7 +85,7 @@ Now you can use the `notify.events` action inside your Home Assistant to: ### Example action ```yaml -- service: notify.events +- action: notify.events data: message: "Backyard motion detected!" data: diff --git a/source/_integrations/nws.markdown b/source/_integrations/nws.markdown index c554ad89f2d..ac9784c5685 100644 --- a/source/_integrations/nws.markdown +++ b/source/_integrations/nws.markdown @@ -37,7 +37,7 @@ One weather entity is created for each entry in the configuration. Hourly and da | `type` | no | The type of forecast, must be either `twice_daily` or `hourly`. | `twice_daily` | ```yaml -service: nws.get_forecasts_extra +action: nws.get_forecasts_extra target: entity_id: - weather.khou diff --git a/source/_integrations/nzbget.markdown b/source/_integrations/nzbget.markdown index d091500fb5a..fd24cbcea7d 100644 --- a/source/_integrations/nzbget.markdown +++ b/source/_integrations/nzbget.markdown @@ -57,7 +57,7 @@ Example automation to send a Telegram message on a completed download: - event_data: category: tv action: - service: notify.telegram_notifier + action: notify.telegram_notifier data: title: "Download completed!" message: "{{trigger.event.data.name}}" diff --git a/source/_integrations/onkyo.markdown b/source/_integrations/onkyo.markdown index f6ec390ce39..9a1c01548ea 100644 --- a/source/_integrations/onkyo.markdown +++ b/source/_integrations/onkyo.markdown @@ -133,10 +133,10 @@ script: radio1: alias: "Radio 1" sequence: - - service: media_player.turn_on + - action: media_player.turn_on target: entity_id: media_player.onkyo - - service: media_player.play_media + - action: media_player.play_media target: entity_id: media_player.onkyo data: @@ -153,7 +153,7 @@ script: hdmi_sub: alias: "Hdmi out projector" sequence: - - service: media_player.onkyo_select_hdmi_output + - action: media_player.onkyo_select_hdmi_output data: entity_id: media_player.onkyo hdmi_output: out-sub diff --git a/source/_integrations/openai_conversation.markdown b/source/_integrations/openai_conversation.markdown index 1bbca6de234..95b5ff82af4 100644 --- a/source/_integrations/openai_conversation.markdown +++ b/source/_integrations/openai_conversation.markdown @@ -95,7 +95,7 @@ with the requested image. {% raw %} ```yaml -service: openai_conversation.generate_image +action: openai_conversation.generate_image data: config_entry: abce6b8696a15e107b4bd843de722249 prompt: "Cute picture of a dog chasing a herd of cats" @@ -134,7 +134,7 @@ automation: entity_id: weather.home action: - alias: "Ask OpenAI to generate an image" - service: openai_conversation.generate_image + action: openai_conversation.generate_image response_variable: generated_image data: config_entry: abce6b8696a15e107b4bd843de722249 diff --git a/source/_integrations/openhome.markdown b/source/_integrations/openhome.markdown index 84389415790..fee7af0c224 100644 --- a/source/_integrations/openhome.markdown +++ b/source/_integrations/openhome.markdown @@ -25,7 +25,7 @@ The Linn / OpenHome integration allows you to connect an [Openhome Compliant Ren ```yaml action: - - service: media_player.play_media + - action: media_player.play_media target: entity_id: media_player.linn_bedroom data: @@ -36,7 +36,7 @@ action: ### Example web stream playback action ```yaml - - service: media_player.play_media + - action: media_player.play_media target: entity_id: media_player.linn_bedroom data: diff --git a/source/_integrations/opensky.markdown b/source/_integrations/opensky.markdown index ecc9199afba..d5d52773fff 100644 --- a/source/_integrations/opensky.markdown +++ b/source/_integrations/opensky.markdown @@ -63,7 +63,7 @@ automation: platform: event event_type: opensky_entry action: - service: notify.mobile_app_ + action: notify.mobile_app_ data: message: "Flight entry of {{ trigger.event.data.callsign }}" ``` @@ -80,7 +80,7 @@ automation: platform: event event_type: opensky_entry action: - service: notify.mobile_app_ + action: notify.mobile_app_ data: message: "Flight entry of {{ trigger.event.data.callsign }}" data: diff --git a/source/_integrations/openuv.markdown b/source/_integrations/openuv.markdown index 06067b3989e..34e8dc8ac21 100644 --- a/source/_integrations/openuv.markdown +++ b/source/_integrations/openuv.markdown @@ -110,7 +110,7 @@ automation: value_template: "{{ state.attributes.elevation }}" above: 10 action: - service: homeassistant.update_entity + action: homeassistant.update_entity target: entity_id: sensor.LATITUDE_LONGITUDE_current_uv_index ``` @@ -125,7 +125,7 @@ automation: platform: time at: "12:00:00" action: - service: homeassistant.update_entity + action: homeassistant.update_entity target: entity_id: binary_sensor.LATITUDE_LONGITUDE_protection_window ``` @@ -165,7 +165,7 @@ automation: ) >= timedelta(hours = 0, minutes = 40) }} action: - service: homeassistant.update_entity + action: homeassistant.update_entity target: entity_id: # Update both UV and protection window data: diff --git a/source/_integrations/osramlightify.markdown b/source/_integrations/osramlightify.markdown index 7ab3dfed980..cc07e1ad148 100644 --- a/source/_integrations/osramlightify.markdown +++ b/source/_integrations/osramlightify.markdown @@ -81,7 +81,7 @@ dropdown on UI. You can apply a scene by clicking an item from the dropdown or b `light.turn_on` service: ```yaml - - service: light.turn_on + - action: light.turn_on target: entity_id: light.bedroom data: diff --git a/source/_integrations/overkiz.markdown b/source/_integrations/overkiz.markdown index bedb03d208e..1d487066468 100644 --- a/source/_integrations/overkiz.markdown +++ b/source/_integrations/overkiz.markdown @@ -89,15 +89,15 @@ cover: friendly_name: "Stateful RTS Test Shutter" # your name optimistic: true # default when no state is available open_cover: - - service: cover.open_cover + - action: cover.open_cover target: entity_id: cover.rts_test_shutter # change to your device id close_cover: - - service: cover.close_cover + - action: cover.close_cover target: entity_id: cover.rts_test_shutter # change to your device id stop_cover: - - service: cover.stop_cover + - action: cover.stop_cover target: entity_id: cover.rts_test_shutter # change to your device id ``` diff --git a/source/_integrations/panasonic_viera.markdown b/source/_integrations/panasonic_viera.markdown index f35ae495745..087e5ee2f63 100644 --- a/source/_integrations/panasonic_viera.markdown +++ b/source/_integrations/panasonic_viera.markdown @@ -77,7 +77,7 @@ panasonic_viera: host: YOUR_TV_IP name: Living Room TV turn_on_action: - - service: wake_on_lan.send_magic_packet + - action: wake_on_lan.send_magic_packet data: mac: "AA:BB:CC:DD:99:1A" ``` @@ -92,10 +92,10 @@ script: front_door_camera: alias: "Show who's at the door" sequence: - - service: media_player.turn_on + - action: media_player.turn_on target: entity_id: media_player.living_room_tv - - service: media_player.play_media + - action: media_player.play_media target: entity_id: media_player.living_room_tv data: @@ -103,7 +103,7 @@ script: media_content_id: YOUR_URL - delay: seconds: 5 - - service: media_player.media_stop + - action: media_player.media_stop target: entity_id: media_player.living_room_tv ``` diff --git a/source/_integrations/persistent_notification.markdown b/source/_integrations/persistent_notification.markdown index 4fa186ea227..e34273ffe3c 100644 --- a/source/_integrations/persistent_notification.markdown +++ b/source/_integrations/persistent_notification.markdown @@ -57,7 +57,7 @@ Here is how an [action](/docs/automation/action) of your [automation setup](/get ```yaml action: - service: persistent_notification.create + action: persistent_notification.create data: message: "Your message goes here" title: "Custom subject" @@ -69,7 +69,7 @@ If you want to show some runtime information, you have to use [templates](/docs/ ```yaml action: - service: persistent_notification.create + action: persistent_notification.create data: title: > Thermostat is {{ state_attr('climate.thermostat', 'hvac_action') }} @@ -88,7 +88,7 @@ This action allows you to remove a notifications by script or automation. ```yaml action: - service: persistent_notification.dismiss + action: persistent_notification.dismiss data: notification_id: "1234" ``` @@ -97,7 +97,7 @@ The `persistent_notification.dismiss_all` action allows you to remove all notifi ```yaml action: - service: persistent_notification.dismiss_all + action: persistent_notification.dismiss_all ``` ### Markdown support diff --git a/source/_integrations/pi_hole.markdown b/source/_integrations/pi_hole.markdown index 5c9d5323c61..1c1df4dfbc3 100644 --- a/source/_integrations/pi_hole.markdown +++ b/source/_integrations/pi_hole.markdown @@ -56,7 +56,7 @@ Example action: ```yaml # Example action to disable Pi-Hole for 30 minutes -service: pi_hole.disable +action: pi_hole.disable data: duration: '00:30' target: diff --git a/source/_integrations/picnic.markdown b/source/_integrations/picnic.markdown index f0958a1fe73..d2d924482b1 100644 --- a/source/_integrations/picnic.markdown +++ b/source/_integrations/picnic.markdown @@ -66,7 +66,7 @@ The action will fail when no product can be found, or when no `product_id` or `p ```yaml # Example automation action to add a product to the cart by name. -- service: picnic.add_product +- action: picnic.add_product data: config_entry_id: 6b4be47a1fa7c3764f14cf756dc9899d product_name: "Picnic cola zero" diff --git a/source/_integrations/plex.markdown b/source/_integrations/plex.markdown index 4571e2c6feb..8359925364b 100644 --- a/source/_integrations/plex.markdown +++ b/source/_integrations/plex.markdown @@ -90,7 +90,7 @@ trigger: id: episode action: - - service: notify.mobile_app_phone + - action: notify.mobile_app_phone data: title: "New {{ trigger.id }} added" message: "{{ trigger.to_state.attributes.last_added_item }}" @@ -111,7 +111,7 @@ Example script: ```yaml play_plex_on_tv: sequence: - - service: media_player.select_source + - action: media_player.select_source target: entity_id: media_player.smart_tv data: @@ -122,13 +122,13 @@ play_plex_on_tv: to: "on" timeout: seconds: 10 - - service: button.press + - action: button.press target: entity_id: button.scan_clients_plex - wait_template: "{{ not is_state('media_player.plex_smart_tv', 'unavailable') }}" timeout: "00:00:10" continue_on_timeout: false - - service: media_player.play_media + - action: media_player.play_media target: entity_id: media_player.plex_smart_tv data: diff --git a/source/_integrations/plugwise.markdown b/source/_integrations/plugwise.markdown index a6668359ca0..56eff11e16a 100644 --- a/source/_integrations/plugwise.markdown +++ b/source/_integrations/plugwise.markdown @@ -80,28 +80,28 @@ Forced update of data from your Smile can be triggered by calling the generic `h script: force_adam_update: sequence: - - service: homeassistant.update_entity + - action: homeassistant.update_entity target: entity_id: climate.anna ``` #### Reboot the Plugwise gateway -Service: `button.press` +action: `button.press` ```yaml # Example script change the thermostat schedule script: reboot_gateway: sequence: - - service: button.press + - action: button.press target: entity_id: button.adam_reboot ``` #### Set HVAC mode -Service: `climate.set_hvac_mode` +action: `climate.set_hvac_mode` Available options include `off` (Adam only) `auto`, `cool`, `heat`, and `heat_cool` (Anna with Elga only). @@ -122,7 +122,7 @@ Example: script: lisa_reactivate_last_schedule: sequence: - - service: climate.set_hvac_mode + - action: climate.set_hvac_mode target: entity_id: climate.lisa_bios data: @@ -131,7 +131,7 @@ script: #### Turn on / turn off -Service: `climate.turn_off`, `climate.turn_on` (Adam only) +action: `climate.turn_off`, `climate.turn_on` (Adam only) These actions will switch the Adam regulation mode (= HVAC system mode) to off or on, affecting the operation of all connected thermostats. `climate.turn_on` will activate the previously selected heating or cooling mode. @@ -143,21 +143,21 @@ Example: script: turn_heating_on: sequence: - - service: climate.turn_off + - action: climate.turn_off target: entity_id: climate.lisa_bios ``` #### Change climate schedule -Service: `select.select_option` +action: `select.select_option` ```yaml # Example script change the thermostat schedule script: lisa_change_schedule: sequence: - - service: select.select_option + - action: select.select_option target: entity_id: select.lisa_bios_thermostat_schedule data: @@ -166,14 +166,14 @@ script: #### Change boiler setpoint -Service: `number.set_value` +action: `number.set_value` ```yaml # Example script change the boiler setpoint script: change_max_boiler_tempeture_setpoint: sequence: - - service: number.set_value + - action: number.set_value target: entity_id: number.opentherm_max_boiler_temperature_setpoint data: @@ -182,7 +182,7 @@ script: #### Set temperature -Service: `climate.set_temperature` +action: `climate.set_temperature` Example: @@ -191,7 +191,7 @@ Example: script: anna_set_predefined_temperature: sequence: - - service: climate.set_temperature + - action: climate.set_temperature target: entity_id: climate.anna data: @@ -200,7 +200,7 @@ script: #### Set preset mode -Service: `climate.set_preset_mode` +action: `climate.set_preset_mode` Available options include: `home`, `vacation` (Anna only), `no_frost`, `asleep` & `away`. @@ -211,7 +211,7 @@ Example: script: anna_activate_preset_asleep: sequence: - - service: climate.set_preset_mode + - action: climate.set_preset_mode data: preset_mode: asleep ``` diff --git a/source/_integrations/point.markdown b/source/_integrations/point.markdown index 87f610ac753..15aff89863a 100644 --- a/source/_integrations/point.markdown +++ b/source/_integrations/point.markdown @@ -112,7 +112,7 @@ automation: entity_id: binary_sensor.point_button_press # Change this accordingly to: "on" action: - - service: persistent_notification.create + - action: persistent_notification.create data: title: Point button press message: Point button was pressed. @@ -136,7 +136,7 @@ automation: condition: template value_template: "{{ trigger.event.data.event.type == 'short_button_press' }}" action: - - service: persistent_notification.create + - action: persistent_notification.create data: title: Point button press (webhook) message: "Button press on Point {{ trigger.event.data.event.device_id }}" diff --git a/source/_integrations/profiler.markdown b/source/_integrations/profiler.markdown index 254b203f733..8ebdf81d1df 100644 --- a/source/_integrations/profiler.markdown +++ b/source/_integrations/profiler.markdown @@ -127,12 +127,12 @@ When `start_log_objects` highlights the growth of a collection of objects in mem This action is useful for investigating the state of objects in memory. For example, if your system has templates that are rendering too frequently, the below example actions shows how to find which templates are the source of the problem: ```yaml -service: profiler.dump_log_objects +action: profiler.dump_log_objects data: type: RenderInfo ``` ```yaml -service: profiler.dump_log_objects +action: profiler.dump_log_objects data: type: Template ``` diff --git a/source/_integrations/pushbullet.markdown b/source/_integrations/pushbullet.markdown index 3c2ed5c739c..a70dc87eb0a 100644 --- a/source/_integrations/pushbullet.markdown +++ b/source/_integrations/pushbullet.markdown @@ -86,7 +86,7 @@ To use notifications, please see the [getting started with automation page](/get ```yaml action: - service: notify.NOTIFIER_NAME + action: notify.NOTIFIER_NAME data: title: Send URL message: This is an url @@ -100,7 +100,7 @@ action: ```yaml action: - service: notify.NOTIFIER_NAME + action: notify.NOTIFIER_NAME data: title: Send file message: This is a file @@ -114,7 +114,7 @@ action: ```yaml action: - service: notify.NOTIFIER_NAME + action: notify.NOTIFIER_NAME data: title: Send file message: This is a file URL @@ -128,7 +128,7 @@ action: ```yaml action: - service: notify.NOTIFIER_NAME + action: notify.NOTIFIER_NAME data: title: "Send to one device" message: "This only goes to one specific device" diff --git a/source/_integrations/pushover.markdown b/source/_integrations/pushover.markdown index 7d5351f6b32..cba763cf55f 100644 --- a/source/_integrations/pushover.markdown +++ b/source/_integrations/pushover.markdown @@ -25,7 +25,7 @@ In order to get an API key, you need to [register an application](https://pushov Example Automation: ```yaml -- service: notify.entity_id +- action: notify.entity_id data: message: "This is the message" title: "Title of message" @@ -43,7 +43,7 @@ Image attachments can be added using the `attachment` parameter, which can eithe To use a specific Pushover device, set it using `target`. If one of the entered devices doesn't exist or is disabled in your Pushover account it will send a message to all you devices. To send to all devices, just skip the target attribute. ```yaml -- service: notify.entity_id +- action: notify.entity_id data: message: "This is the message" title: "Title of message" @@ -58,7 +58,7 @@ To use a specific Pushover device, set it using `target`. If one of the entered To use the highest priority, which repeats the notification every x seconds (`retry`) for the duration of y seconds (`expire`), you MUST specify these parameters. The minimal time for the `retry` parameter is 30 seconds. The `expire` parameter has a maximum of 10800 seconds (3 hours). If you target more than one device, make sure to enable the advanced option "Notification dismissal sync" in the app to be able to dismiss the alert on all devices simultaneously. ```yaml -- service: notify.entity_id +- action: notify.entity_id data: message: "This is the message" title: "Title of message" @@ -85,7 +85,7 @@ alexa: intents: LocateIntent: action: - service: notify.notify + action: notify.notify data: message: "The location of {{ User }} has been queried via Alexa." title: "Home Assistant" diff --git a/source/_integrations/pushsafer.markdown b/source/_integrations/pushsafer.markdown index a956e2df512..4e487d4ca4d 100644 --- a/source/_integrations/pushsafer.markdown +++ b/source/_integrations/pushsafer.markdown @@ -47,7 +47,7 @@ Message to two devices with formatted text. ```yaml action: - service: notify.notify + action: notify.notify data: title: "Test to 2 devices" message: "Attention [b]bold[/b] text[br][url=https://www.pushsafer.com]Link to Pushsafer[/url]" @@ -65,7 +65,7 @@ Message to one device with formatted text and image from an external URL. ```yaml action: - service: notify.notify + action: notify.notify data: title: "Test to 1 device with image from an url" message: "Attention [i]italic[/i] Text[br][url=https://www.home-assistant.io/]Testlink[/url]" @@ -85,7 +85,7 @@ Message to two devices and one device group with formatted text and local image. ```yaml action: - service: notify.notify + action: notify.notify data: title: "Test to 3 devices with local image" message: "Attention [i]italic[/i] Text[br][url=https://www.home-assistant.io/]Testlink[/url]" diff --git a/source/_integrations/python_script.markdown b/source/_integrations/python_script.markdown index e3a7ed68aa3..f32cf33d7d5 100644 --- a/source/_integrations/python_script.markdown +++ b/source/_integrations/python_script.markdown @@ -58,7 +58,7 @@ logger.info("Hello {} at {}".format(name, time.time())) - Call your new {% my developer_call_service service="python_script.hello_world" %} action (with parameters) from the {% my developer_services %}, using the YAML mode. ```yaml -service: python_script.hello_world +action: python_script.hello_world data: name: "Input-Text" ``` @@ -120,7 +120,7 @@ if entity_id is not None: The above `python_script` can be called using the following YAML as an input. ```yaml -- service: python_script.turn_on_light +- action: python_script.turn_on_light target: entity_id: light.bedroom data: @@ -149,9 +149,9 @@ The above `python_script` can be called using the following YAML and return a re {% raw %} ```yaml -- service: python_script.hello_world +- action: python_script.hello_world response_variable: python_script_output -- service: notify.mobile_app_iphone +- action: notify.mobile_app_iphone data: message: "{{ python_script_output['hello'] }}" ``` diff --git a/source/_integrations/qbittorrent.markdown b/source/_integrations/qbittorrent.markdown index f31f6ab8f0a..e64ae89bfad 100644 --- a/source/_integrations/qbittorrent.markdown +++ b/source/_integrations/qbittorrent.markdown @@ -56,7 +56,7 @@ with a dictionary of torrents based on the provided filter. | `torrent_filter` | no | The type of torrents you want in the response | all, active, inactive, paused, downloading, seeding | ```yaml -service: qbittorrent.get_torrents +action: qbittorrent.get_torrents data: filter: "all" response_variable: torrents @@ -74,7 +74,7 @@ with a dictionary of torrents based on the provided filter. | `torrent_filter` | no | The type of torrents you want in the response | all, active, inactive, paused, downloading, seeding | ```yaml -service: qbittorrent.get_all_torrents +action: qbittorrent.get_all_torrents data: filter: "all" response_variable: all_torrents diff --git a/source/_integrations/qrcode.markdown b/source/_integrations/qrcode.markdown index 1b0ba7b6428..06bf10229a5 100644 --- a/source/_integrations/qrcode.markdown +++ b/source/_integrations/qrcode.markdown @@ -57,7 +57,7 @@ automation: entity_id: image_processing.qr_front_door to: ARM_QR_CODE_VALUE action: - - service: alarm_control_panel.alarm_arm_away + - action: alarm_control_panel.alarm_arm_away target: entity_id: alarm_control_panel.home_alarm data: diff --git a/source/_integrations/rachio.markdown b/source/_integrations/rachio.markdown index 7e47cf49c96..b3803539fd2 100644 --- a/source/_integrations/rachio.markdown +++ b/source/_integrations/rachio.markdown @@ -112,7 +112,7 @@ It is not currently possible to have zones from multiple controllers in the same script: run_grass_zones: sequence: - - service: rachio.start_multiple_zone_schedule + - action: rachio.start_multiple_zone_schedule target: entity_id: - switch.front_yard_west @@ -127,7 +127,7 @@ script: script: run_grass_zones: sequence: - - service: rachio.start_multiple_zone_schedule + - action: rachio.start_multiple_zone_schedule target: entity_id: - switch.front_yard_west diff --git a/source/_integrations/radio_browser.markdown b/source/_integrations/radio_browser.markdown index 4a16aab96f4..a0f33de0ae7 100644 --- a/source/_integrations/radio_browser.markdown +++ b/source/_integrations/radio_browser.markdown @@ -30,7 +30,7 @@ an automation that starts playing your favorite radio station on your Cast devic If you want to use a YAML for the automation, you would look like this: ```yaml -service: media_player.play_media +action: media_player.play_media target: entity_id: media_player.YOUR_MEDIA_PLAYER data: diff --git a/source/_integrations/rainbird.markdown b/source/_integrations/rainbird.markdown index de6a3b4fdc6..5c27d954d28 100644 --- a/source/_integrations/rainbird.markdown +++ b/source/_integrations/rainbird.markdown @@ -80,7 +80,7 @@ automation: - platform: time at: "5:30:00" action: - - service: rainbird.start_irrigation + - action: rainbird.start_irrigation data: entity_id: switch.rain_bird_sprinkler_1 duration: 5 diff --git a/source/_integrations/recorder.markdown b/source/_integrations/recorder.markdown index 0b7fe99df66..18d0a5cebe0 100644 --- a/source/_integrations/recorder.markdown +++ b/source/_integrations/recorder.markdown @@ -231,7 +231,7 @@ trigger: - platform: time at: "04:15:00" action: - - service: recorder.purge_entities + - action: recorder.purge_entities data: keep_days: 5 entity_id: sensor.power_sensor_0 diff --git a/source/_integrations/remember_the_milk.markdown b/source/_integrations/remember_the_milk.markdown index 2c232ed2c00..cceed187284 100644 --- a/source/_integrations/remember_the_milk.markdown +++ b/source/_integrations/remember_the_milk.markdown @@ -97,7 +97,7 @@ Here's an example for an automation that creates a new task whenever `sensor.mys entity_id: sensor.mysensor to: on action: - - service: remember_the_milk.myaccount_create_task + - action: remember_the_milk.myaccount_create_task data: name: "Please switch off {{trigger.entity_id}}" id: "{{trigger.entity_id}}" @@ -107,7 +107,7 @@ Here's an example for an automation that creates a new task whenever `sensor.mys entity_id: sensor.mysensor to: off action: - - service: remember_the_milk.myaccount_complete_task + - action: remember_the_milk.myaccount_complete_task data: id: "{{trigger.entity_id}}" ``` diff --git a/source/_integrations/rest_command.markdown b/source/_integrations/rest_command.markdown index f3167df602c..d2ef842f9bd 100644 --- a/source/_integrations/rest_command.markdown +++ b/source/_integrations/rest_command.markdown @@ -108,7 +108,7 @@ automation: trigger: - ... action: - - service: rest_command.traefik_get_rawdata + - action: rest_command.traefik_get_rawdata response_variable: traefik_response - if: "{{ traefik_response['status'] == 200 }}" then: @@ -124,12 +124,12 @@ automation: got_errors: "{{ router_errors|length > 0 }}" - if: "{{ got_errors }}" then: - - service: notify.mobile_app_iphone + - action: notify.mobile_app_iphone data: title: "Traefik errors" message: "{{ router_errors }}" else: - - service: notify.mobile_app_iphone + - action: notify.mobile_app_iphone data: title: "Could not reach Traefik" message: "HTTP code: {{ traefik_response['returncode'] }}" @@ -189,7 +189,7 @@ automation: zone: zone.work event: enter action: - - service: rest_command.my_request + - action: rest_command.my_request data: status: "At Work" emoji: ":calendar:" diff --git a/source/_integrations/rfxtrx.markdown b/source/_integrations/rfxtrx.markdown index f69773c858b..08115f65dfc 100644 --- a/source/_integrations/rfxtrx.markdown +++ b/source/_integrations/rfxtrx.markdown @@ -330,7 +330,7 @@ automation: values: Sound: 9 action: - service: scene.turn_on + action: scene.turn_on target: entity_id: scene.welcomescene ``` @@ -346,7 +346,7 @@ Simulate a button being pressed: ```yaml ... action: - service: rfxtrx.send + action: rfxtrx.send data: event: 0b1111e003af16aa10000060 ``` @@ -357,7 +357,7 @@ Alternatively: - Select: `RFXCOM RFXtrx: Send` from the **Action** drop-down menu. ```yaml -service: rfxtrx.send +action: rfxtrx.send data: event: "0b1111e003af16aa10000060" ``` diff --git a/source/_integrations/ring.markdown b/source/_integrations/ring.markdown index ab8109775ac..beede8e2c26 100644 --- a/source/_integrations/ring.markdown +++ b/source/_integrations/ring.markdown @@ -84,7 +84,7 @@ automation: entity_id: binary_sensor.front_doorbell_ding to: "on" action: - - service: downloader.download_file + - action: downloader.download_file data: url: "{{ state_attr('camera.front_door', 'video_url') }}" subdir: "{{state_attr('camera.front_door', 'friendly_name')}}" diff --git a/source/_integrations/roborock.markdown b/source/_integrations/roborock.markdown index 1472b0f7d91..eac9c9fa8e5 100644 --- a/source/_integrations/roborock.markdown +++ b/source/_integrations/roborock.markdown @@ -193,7 +193,7 @@ We plan to make the process simpler in the future, but for now, it is a multi-st - **Request**: Your request should look like: ```yaml - service: roborock.get_maps + action: roborock.get_maps target: entity_id: vacuum.s7_roborock data: {} @@ -216,7 +216,7 @@ We plan to make the process simpler in the future, but for now, it is a multi-st Example: ```yaml -service: vacuum.send_command +action: vacuum.send_command data: command: app_segment_clean params: diff --git a/source/_integrations/rocketchat.markdown b/source/_integrations/rocketchat.markdown index 1d2c7cf6dc3..169e8502dbf 100644 --- a/source/_integrations/rocketchat.markdown +++ b/source/_integrations/rocketchat.markdown @@ -43,7 +43,7 @@ notify: ```yaml rocketchat_notification: sequence: - - service: notify.NOTIFIER_NAME + - action: notify.NOTIFIER_NAME data: message: "Message to Rocket.Chat from Home Assistant!" data: diff --git a/source/_integrations/roku.markdown b/source/_integrations/roku.markdown index c5fdf9feca0..8e14ff2a99d 100644 --- a/source/_integrations/roku.markdown +++ b/source/_integrations/roku.markdown @@ -79,7 +79,7 @@ At the moment, the following buttons are supported: A typical action for pressing several buttons looks like this. ```yaml -service: remote.send_command +action: remote.send_command target: entity_id: remote.roku data: @@ -106,7 +106,7 @@ The `media_player.select_source` action may be used to launch specific applicati ```yaml action: -- service: media_player.select_source +- action: media_player.select_source target: entity_id: media_player.roku data: @@ -117,7 +117,7 @@ Alternatively, the application id can be used for `source`. See [Obtaining Appli ```yaml action: - - service: media_player.select_source + - action: media_player.select_source target: entity_id: media_player.roku data: @@ -144,7 +144,7 @@ The `media_player.play_media` action may be used to tune to specific channels on ```yaml action: - - service: media_player.play_media + - action: media_player.play_media target: entity_id: media_player.roku data: @@ -168,7 +168,7 @@ The `media_player.play_media` action may be used to deep-link to content within ```yaml action: - - service: media_player.play_media + - action: media_player.play_media target: entity_id: media_player.roku data: diff --git a/source/_integrations/roon.markdown b/source/_integrations/roon.markdown index f3d2131b692..e01713f85e7 100644 --- a/source/_integrations/roon.markdown +++ b/source/_integrations/roon.markdown @@ -90,7 +90,7 @@ action: attribute: event_type state: volume_up sequence: - - service: remote.send_command + - action: remote.send_command data: num_repeats: 1 delay_secs: 0.4 @@ -105,7 +105,7 @@ action: attribute: event_type state: volume_down sequence: - - service: remote.send_command + - action: remote.send_command data: num_repeats: 1 delay_secs: 0.4 diff --git a/source/_integrations/samsungtv.markdown b/source/_integrations/samsungtv.markdown index 1bbef85a59c..9d3f2590afb 100644 --- a/source/_integrations/samsungtv.markdown +++ b/source/_integrations/samsungtv.markdown @@ -42,7 +42,7 @@ automation: - platform: samsungtv.turn_on entity_id: media_player.samsung_smart_tv action: - - service: wake_on_lan.send_magic_packet + - action: wake_on_lan.send_magic_packet data: mac: aa:bb:cc:dd:ee:ff ``` @@ -426,7 +426,7 @@ The code list has been extracted from: https://github.com/kdschlosser/samsungctl **Example to send sequence of commands:** ```yaml -service: remote.send_command +action: remote.send_command target: device_id: 72953f9b4c9863e28ddd52c87dcebe05 data: diff --git a/source/_integrations/satel_integra.markdown b/source/_integrations/satel_integra.markdown index d4f1ee7cc22..22405a95207 100644 --- a/source/_integrations/satel_integra.markdown +++ b/source/_integrations/satel_integra.markdown @@ -177,7 +177,7 @@ For example: entity_id: "binary_sensor.bedroom" to: "on" action: - service: input_boolean.turn_on + action: input_boolean.turn_on target: entity_id: input_boolean.movement_detected ``` diff --git a/source/_integrations/scene.markdown b/source/_integrations/scene.markdown index 917a069ce33..3784ecdc936 100644 --- a/source/_integrations/scene.markdown +++ b/source/_integrations/scene.markdown @@ -97,7 +97,7 @@ automation: from: "not_home" to: "home" action: - service: scene.turn_on + action: scene.turn_on target: entity_id: scene.romantic ``` @@ -115,7 +115,7 @@ automation: from: "not_home" to: "home" action: - service: scene.apply + action: scene.apply data: entities: light.tv_back_light: @@ -144,7 +144,7 @@ automation: from: "not_home" to: "home" action: - service: scene.turn_on + action: scene.turn_on target: entity_id: scene.romantic data: @@ -179,7 +179,7 @@ automation: platform: homeassistant event: start action: - service: scene.create + action: scene.create data: scene_id: my_scene entities: @@ -208,7 +208,7 @@ automation: entity_id: sun.sun to: below_horizon action: - - service: scene.delete + - action: scene.delete data: entity_id: scene.my_scene ``` @@ -225,16 +225,16 @@ The following example turns off some entities as soon as a window opens. The sta to: "on" condition: [] action: - - service: scene.create + - action: scene.create data: scene_id: before snapshot_entities: - climate.ecobee - light.ceiling_lights - - service: light.turn_off + - action: light.turn_off target: entity_id: light.ceiling_lights - - service: climate.set_hvac_mode + - action: climate.set_hvac_mode target: entity_id: climate.ecobee data: @@ -247,7 +247,7 @@ The following example turns off some entities as soon as a window opens. The sta to: "off" condition: [] action: - - service: scene.turn_on + - action: scene.turn_on target: entity_id: scene.before ``` diff --git a/source/_integrations/schedule.markdown b/source/_integrations/schedule.markdown index 1a9194ed7a2..9521ac54304 100644 --- a/source/_integrations/schedule.markdown +++ b/source/_integrations/schedule.markdown @@ -113,7 +113,7 @@ trigger: - schedule.thermostat_schedule to: "on" action: - - service: climate.turn_on + - action: climate.turn_on target: entity_id: climate.thermostat ``` diff --git a/source/_integrations/script.markdown b/source/_integrations/script.markdown index dc9f74f0815..a144d685bd4 100644 --- a/source/_integrations/script.markdown +++ b/source/_integrations/script.markdown @@ -29,7 +29,7 @@ script: message_temperature: sequence: # This is Home Assistant Script Syntax - - service: notify.notify + - action: notify.notify data: message: "Current temperature is {{ states('sensor.temperature') }}" ``` @@ -163,7 +163,7 @@ script: - condition: state entity_id: switch.pushover_notifications state: "on" - - service: notify.pushover + - action: notify.pushover data: title: "{{ title }}" message: "{{ message }}" @@ -182,7 +182,7 @@ automation: from: "off" to: "on" action: - service: script.notify_pushover + action: script.notify_pushover data: title: "State change" message: "The light is on!" @@ -201,7 +201,7 @@ automation: from: "off" to: "on" action: - service: script.turn_on + action: script.turn_on target: entity_id: script.notify_pushover data: @@ -243,7 +243,7 @@ This technique can also be used for the calling script to wait for the called sc script: script_1: sequence: - - service: script.turn_on + - action: script.turn_on target: entity_id: script.script_2 # Perform some other steps here while second script runs... @@ -290,7 +290,7 @@ script:  entity_id: device_tracker.paulus domain: light - alias: "Bedroom lights on" - service: light.turn_on + action: light.turn_on target: entity_id: group.bedroom data: @@ -299,7 +299,7 @@ script:  # supports seconds, milliseconds, minutes, hours minutes: "{{ minutes }}" - alias: "Living room lights on" - service: light.turn_on + action: light.turn_on target: entity_id: "{{ turn_on_entity }}" ``` diff --git a/source/_integrations/select.markdown b/source/_integrations/select.markdown index d65640f3b7e..209d070a4a4 100644 --- a/source/_integrations/select.markdown +++ b/source/_integrations/select.markdown @@ -36,7 +36,7 @@ This action does not have additional options. An example in YAML: ```yaml -service: select.select_first +action: select.select_first target: entity_id: select.my_entity ``` @@ -54,7 +54,7 @@ This action does not have additional options. An example in YAML: ```yaml -service: select.select_last +action: select.select_last target: entity_id: select.my_entity ``` @@ -76,14 +76,14 @@ action data. Examples in YAML: ```yaml -service: select.select_next +action: select.select_next target: entity_id: select.my_entity ``` ```yaml # Disable cycling back to the first option -service: select.select_next +action: select.select_next target: entity_id: select.my_entity data: @@ -104,7 +104,7 @@ the list of options for the targeted entity. An example in YAML: ```yaml -service: select.select_option +action: select.select_option target: entity_id: select.my_entity data: @@ -128,14 +128,14 @@ action data. Examples in YAML: ```yaml -service: select.select_previous +action: select.select_previous target: entity_id: select.my_entity ``` ```yaml # Disable cycling back to the last option -service: select.select_previous +action: select.select_previous target: entity_id: select.my_entity data: diff --git a/source/_integrations/sensibo.markdown b/source/_integrations/sensibo.markdown index 66ce6489eaf..9a32257153e 100644 --- a/source/_integrations/sensibo.markdown +++ b/source/_integrations/sensibo.markdown @@ -218,13 +218,13 @@ switch: friendly_name: "AC" value_template: "{{ is_state('climate.ac', 'cool') or is_state('climate.ac', 'heat') or is_state('climate.ac', 'dry') or is_state('climate.ac', 'fan_only') }}" turn_on: - service: climate.set_hvac_mode + action: climate.set_hvac_mode target: entity_id: climate.ac data: hvac_mode: "cool" turn_off: - service: climate.set_hvac_mode + action: climate.set_hvac_mode target: entity_id: climate.ac data: diff --git a/source/_integrations/seventeentrack.markdown b/source/_integrations/seventeentrack.markdown index 8ed82d5d3ae..c8308a9ee8e 100644 --- a/source/_integrations/seventeentrack.markdown +++ b/source/_integrations/seventeentrack.markdown @@ -87,7 +87,7 @@ The `seventeentrack.get_packages` action allows you to query the 17track API for ```yaml # Example automation action to retrieve packages with specific states from 17Track -- service: seventeentrack.get_packages +- action: seventeentrack.get_packages data: config_entry_id: 2b4be47a1fa7c3764f14cf756dc98991 package_state: ["Delivered", "In transit"] diff --git a/source/_integrations/sharkiq.markdown b/source/_integrations/sharkiq.markdown index b8eeb4cdc5b..3f191c54c38 100644 --- a/source/_integrations/sharkiq.markdown +++ b/source/_integrations/sharkiq.markdown @@ -36,7 +36,7 @@ In addition to the [`vacuum`](/integrations/vacuum/) actions, this integration s This allows you to select specific rooms that you want cleaned, instead of doing a whole-home clean. ```yaml -service: sharkiq.clean_room +action: sharkiq.clean_room data: rooms: - "Entry" diff --git a/source/_integrations/shell_command.markdown b/source/_integrations/shell_command.markdown index 2944aad72db..270cce01653 100644 --- a/source/_integrations/shell_command.markdown +++ b/source/_integrations/shell_command.markdown @@ -86,7 +86,7 @@ automation: platform: state entity_id: input_number.ac_temperature action: - service: shell_command.set_ac_to_slider + action: shell_command.set_ac_to_slider input_number: ac_temperature: @@ -113,18 +113,18 @@ automation: trigger: - ... action: - - service: shell_command.get_file_contents + - action: shell_command.get_file_contents data: filename: "todo.txt" response_variable: todo_response - if: "{{ todo_response['returncode'] == 0 }}" then: - - service: notify.mobile_app_iphone + - action: notify.mobile_app_iphone data: title: "ToDo" message: "{{ todo_response['stdout'] }}" else: - - service: notify.mobile_app_iphone + - action: notify.mobile_app_iphone data: title: "ToDo file error" message: "{{ todo_response['stderr'] }}" diff --git a/source/_integrations/shelly.markdown b/source/_integrations/shelly.markdown index 89408053cd6..5286adc46ba 100644 --- a/source/_integrations/shelly.markdown +++ b/source/_integrations/shelly.markdown @@ -199,7 +199,7 @@ You can also create automations using YAML, for example: channel: 1 click_type: single action: - service: light.toggle + action: light.toggle target: entity_id: light.living_room @@ -212,7 +212,7 @@ You can also create automations using YAML, for example: channel: 2 click_type: long action: - service: light.toggle + action: light.toggle target: entity_id: light.lamp_living_room ``` diff --git a/source/_integrations/shopping_list.markdown b/source/_integrations/shopping_list.markdown index 64e03878be1..fcaec3d8239 100644 --- a/source/_integrations/shopping_list.markdown +++ b/source/_integrations/shopping_list.markdown @@ -98,7 +98,7 @@ trigger: event_data: action: "add" action: - - service: notify.notify + - action: notify.notify data: message: "{{ trigger.event.data.item.name }} has been added to the shopping list" data: diff --git a/source/_integrations/sighthound.markdown b/source/_integrations/sighthound.markdown index a3a33ab76e8..e51ced31dea 100644 --- a/source/_integrations/sighthound.markdown +++ b/source/_integrations/sighthound.markdown @@ -93,7 +93,7 @@ An example using two automations: entity_id: binary_sensor.my_motion_sensor domain: binary_sensor action: - - service: image_processing.scan + - action: image_processing.scan target: entity_id: image_processing.sighthound_my_cam mode: single @@ -105,7 +105,7 @@ An example using two automations: - platform: event event_type: sighthound.vehicle_detected action: - - service: notify.mobile_app_my_iphone + - action: notify.mobile_app_my_iphone data: message: "Somebody has just arrived by car." mode: single diff --git a/source/_integrations/signal_messenger.markdown b/source/_integrations/signal_messenger.markdown index 04e7fc66d58..9a5e3ca0acb 100644 --- a/source/_integrations/signal_messenger.markdown +++ b/source/_integrations/signal_messenger.markdown @@ -81,7 +81,7 @@ A few examples on how to use this integration to send notifications from automat ```yaml ... action: - service: notify.NOTIFIER_NAME + action: notify.NOTIFIER_NAME data: message: "That's an example that sends a simple text message to the recipients specified in the configuration.yaml. If text mode is 'styled', you can use *italic*, **bold** or ~strikethrough~ ." ## Optional @@ -100,7 +100,7 @@ This example assumes you have an image stored in the default `www`-folder in Hom ```yaml ... action: - service: notify.NOTIFIER_NAME + action: notify.NOTIFIER_NAME data: message: "Alarm in the living room!" data: @@ -119,7 +119,7 @@ action: ```yaml ... action: - service: notify.NOTIFIER_NAME + action: notify.NOTIFIER_NAME data: message: "Person detected on Front Camera!" data: @@ -170,7 +170,7 @@ trigger: attribute: source to: "" action: - - service: notify.signal + - action: notify.signal data: message: "Message received!" ``` diff --git a/source/_integrations/simplepush.markdown b/source/_integrations/simplepush.markdown index 4bc267a8cf0..2451e13cd95 100644 --- a/source/_integrations/simplepush.markdown +++ b/source/_integrations/simplepush.markdown @@ -43,7 +43,7 @@ To use notifications, please see the [getting started with automation page](/get Send a notification with a title and event. ```yml -- service: notify.simplepush +- action: notify.simplepush data: title: "This is the title" message: "This is the message" @@ -55,7 +55,7 @@ Send a notification with four attachments defined by their URL. Attachments can be images, GIFs or video files. ```yml -- service: notify.simplepush +- action: notify.simplepush data: message: "This is the message" data: diff --git a/source/_integrations/slack.markdown b/source/_integrations/slack.markdown index f4e3f9e7cb6..730fd6960dc 100644 --- a/source/_integrations/slack.markdown +++ b/source/_integrations/slack.markdown @@ -103,7 +103,7 @@ You can call this script as an action. ```yaml alias: "Notify: Slack Notification Template" sequence: - - service: notify.YOUR_SLACK_TEAM + - action: notify.YOUR_SLACK_TEAM data: message: Fallback Text target: "#test-channel" diff --git a/source/_integrations/sms.markdown b/source/_integrations/sms.markdown index ea1020b8107..426c8ca4f7f 100644 --- a/source/_integrations/sms.markdown +++ b/source/_integrations/sms.markdown @@ -34,7 +34,7 @@ To use notifications, please see the [getting started with automation page](/get ```yaml action: - service: notify.sms + action: notify.sms data: message: "This is a message for you!" target: "+5068081-8181" @@ -46,7 +46,7 @@ Some devices (receiving or sending) do not support Unicode (the default encoding ```yaml action: - service: notify.sms + action: notify.sms data: message: "This is a message for you in ANSI" target: "+5068081-8181" @@ -81,7 +81,7 @@ notify_sms_user1: description: "The message content" example: "The light is on!" sequence: - - service: notify.sms + - action: notify.sms data: message: "{{ message }}" target: "{{ states('sensor.user1_phone_number') }}" @@ -101,7 +101,7 @@ notify_sms_user1: - platform: event event_type: sms.incoming_sms action: - - service: script.notify_sms_user1 + - action: script.notify_sms_user1 data: message: | From: {{trigger.event.data.phone}} diff --git a/source/_integrations/smtp.markdown b/source/_integrations/smtp.markdown index 6372fe5e462..5c5e5014c1f 100644 --- a/source/_integrations/smtp.markdown +++ b/source/_integrations/smtp.markdown @@ -96,7 +96,7 @@ A notify integration will be created using the name without spaces. In the above at: "08:00:00" condition: [] action: - - service: notify.NOTIFIER_NAME + - action: notify.NOTIFIER_NAME data: title: "Good Morning" message: "Rise and shine" @@ -113,10 +113,10 @@ Another example attaching images stored locally in a script: burglar: alias: "Burglar Alarm" sequence: - - service: shell_command.snapshot + - action: shell_command.snapshot - delay: seconds: 1 - - service: notify.NOTIFIER_NAME + - action: notify.NOTIFIER_NAME data: title: "Intruder alert" message: "Intruder alert at apartment!!" @@ -140,10 +140,10 @@ When adding images, make sure the folders containing the attachments are added t burglar: alias: "Burglar Alarm" sequence: - - service: shell_command.snapshot + - action: shell_command.snapshot - delay: seconds: 1 - - service: notify.NOTIFIER_NAME + - action: notify.NOTIFIER_NAME data: message: "Intruder alert at apartment!!" data: diff --git a/source/_integrations/snips.markdown b/source/_integrations/snips.markdown index f62e2bb1c8d..38ebf9bb250 100644 --- a/source/_integrations/snips.markdown +++ b/source/_integrations/snips.markdown @@ -151,7 +151,7 @@ snips: intent_script: ActivateLightColor: action: - - service: light.turn_on + - action: light.turn_on target: entity_id: 'light.{{ objectLocation | replace(" ","_") }}' data: @@ -178,7 +178,7 @@ SetTimer: type: plain text: "Set a timer" action: - service: script.set_timer + action: script.set_timer data: name: "{{ timer_name }}" duration: "{{ timer_duration }}" @@ -223,7 +223,7 @@ intent_script: type: plain text: "OK, turning on the light" action: - service: light.turn_on + action: light.turn_on ``` ##### Open a Garage Door @@ -235,7 +235,7 @@ intent_script: type: plain text: "OK, opening the garage door" action: - - service: cover.open_cover + - action: cover.open_cover target: entity_id: garage_door ``` @@ -255,7 +255,7 @@ automation: for: minutes: 10 sequence: - service: snips.say_action + action: snips.say_action data: text: "Garage door has been open 10 minutes, would you like me to close it?" intent_filter: @@ -268,7 +268,7 @@ intent_script: type: plain text: "OK, closing the garage door" action: - - service: script.garage_door_close + - action: script.garage_door_close ``` ##### Weather diff --git a/source/_integrations/snooz.markdown b/source/_integrations/snooz.markdown index fb79504b599..2308d522131 100644 --- a/source/_integrations/snooz.markdown +++ b/source/_integrations/snooz.markdown @@ -71,7 +71,7 @@ automation: - platform: time at: "04:20:00" action: - - service: snooz.transition_on + - action: snooz.transition_on target: entity_id: fan.snooz_abcd data: @@ -101,7 +101,7 @@ automation: - platform: time at: "16:20:00" action: - - service: snooz.transition_off + - action: snooz.transition_off target: entity_id: fan.snooz_abcd data: diff --git a/source/_integrations/sonos.markdown b/source/_integrations/sonos.markdown index 1ce31422b09..a597e89108b 100644 --- a/source/_integrations/sonos.markdown +++ b/source/_integrations/sonos.markdown @@ -72,7 +72,7 @@ When calling the `media_player.play_media` action, the `media_content_type` must Example action using the item id: ```yaml -service: media_player.play_media +action: media_player.play_media target: entity_id: media_player.sonos_speaker1 data: @@ -83,7 +83,7 @@ data: Example using the Sonos playlist name: ```yaml -service: media_player.play_media +action: media_player.play_media target: entity_id: media_player.sonos_speaker1 data: @@ -132,7 +132,7 @@ An optional `enqueue` argument can be added to the action. If `replace` or not p Below is an example action that plays an audio file from a web server on the local network (like the Home Assistant built-in webserver) using the `announce` feature and its associated (optional) `volume` parameter: ```yaml -service: media_player.play_media +action: media_player.play_media target: entity_id: media_player.sonos data: @@ -145,7 +145,7 @@ data: The standard `tts._say` actions do not accept the `volume` parameter directly. To set the `volume` for a TTS announcement, you can use a TTS Media Source URL with the standard `media_player.play_media` action: ```yaml -service: media_player.play_media +action: media_player.play_media target: entity_id: media_player.sonos data: @@ -160,7 +160,7 @@ data: Sonos can also play music or playlists from Spotify. Both Spotify URIs and URLs can be used directly. An example action using a playlist URI: ```yaml -service: media_player.play_media +action: media_player.play_media target: entity_id: media_player.sonos data: @@ -172,7 +172,7 @@ data: An example action using a Spotify URL: ```yaml -service: media_player.play_media +action: media_player.play_media target: entity_id: media_player.sonos data: @@ -183,7 +183,7 @@ data: Run a [Plex Media Server](/integrations/plex#sonos-playback) in your home? The Sonos integration can work with that as well. This example plays music directly from your Plex server: ```yaml -service: media_player.play_media +action: media_player.play_media target: entity_id: media_player.sonos data: @@ -199,7 +199,7 @@ If you have configured a Sonos music library; you can play music from it. Play all albums by the Beatles. ```yaml -service: media_player.play_media +action: media_player.play_media target: entity_id: media_player.sonos data: @@ -210,7 +210,7 @@ data: Play a specific album: ```yaml -service: media_player.play_media +action: media_player.play_media target: entity_id: media_player.sonos data: @@ -222,7 +222,7 @@ data: Or add a specific album by a specific artist to the queue. This is useful in case you have multiple albums with the same name. ```yaml -service: media_player.play_media +action: media_player.play_media target: entity_id: media_player.sonos data: @@ -234,7 +234,7 @@ data: Play all albums by a composer. ```yaml -service: media_player.play_media +action: media_player.play_media target: entity_id: media_player.porch data: @@ -246,7 +246,7 @@ data: Play all albums by a genre. ```yaml -service: media_player.play_media +action: media_player.play_media target: entity_id: media_player.porch data: @@ -258,7 +258,7 @@ data: Play an imported playlist by using its title. ```yaml -service: media_player.play_media +action: media_player.play_media target: entity_id: media_player.porch data: @@ -379,7 +379,7 @@ condition: value_template: > {{ trigger.from_state.attributes.queue_position < trigger.to_state.attributes.queue_position }} action: - - service: sonos.remove_from_queue + - action: sonos.remove_from_queue target: entity_id: > {{ trigger.entity_id }} diff --git a/source/_integrations/soundtouch.markdown b/source/_integrations/soundtouch.markdown index 6cfb4fcadf5..9cbfd60ca49 100644 --- a/source/_integrations/soundtouch.markdown +++ b/source/_integrations/soundtouch.markdown @@ -25,7 +25,7 @@ You can switch between one of your 6 pre-configured presets using ```media_playe ```yaml # Play media preset -- service: media_player.play_media +- action: media_player.play_media target: entity_id: media_player.soundtouch_living_room data: @@ -37,7 +37,7 @@ You can also play HTTP (not HTTPS) URLs: ```yaml # Play media URL -- service: media_player.play_media +- action: media_player.play_media target: entity_id: media_player.soundtouch_living_room data: diff --git a/source/_integrations/spc.markdown b/source/_integrations/spc.markdown index b05bbe92fd1..12aa74aaef6 100644 --- a/source/_integrations/spc.markdown +++ b/source/_integrations/spc.markdown @@ -63,7 +63,7 @@ automation: - platform: state entity_id: alarm_control_panel.alarm_1 action: - - service: notify.notify + - action: notify.notify data: message: > Alarm changed from {{ trigger.from_state.state }} diff --git a/source/_integrations/speedtestdotnet.markdown b/source/_integrations/speedtestdotnet.markdown index 1a3294f6213..94f3b5768a6 100644 --- a/source/_integrations/speedtestdotnet.markdown +++ b/source/_integrations/speedtestdotnet.markdown @@ -54,14 +54,14 @@ automation: - platform: template value_template: "{{ states('sensor.speedtest_download')|float >= 10 }}" action: - - service: shell_command.green + - action: shell_command.green - alias: "Internet Speed Glow Connect Poor" trigger: - platform: template value_template: "{{ states('sensor.speedtest_download')|float < 10 }}" action: - - service: shell_command.red + - action: shell_command.red ``` {% endraw %} diff --git a/source/_integrations/spotify.markdown b/source/_integrations/spotify.markdown index 8a25596683a..fe3f53722e7 100644 --- a/source/_integrations/spotify.markdown +++ b/source/_integrations/spotify.markdown @@ -120,7 +120,7 @@ To play media Spotify first needs a device selected for audio output known as th ```yaml # Example code to select an AV receiver as the output device -service: media_player.select_source +action: media_player.select_source target: entity_id: media_player.spotify data: @@ -139,7 +139,7 @@ You can send playlists to Spotify using the `"media_content_type": "playlist"`, script: play_jazz_guitar: sequence: - - service: media_player.play_media + - action: media_player.play_media target: entity_id: media_player.spotify data: diff --git a/source/_integrations/squeezebox.markdown b/source/_integrations/squeezebox.markdown index ad080d0cf2a..112e3bc7542 100644 --- a/source/_integrations/squeezebox.markdown +++ b/source/_integrations/squeezebox.markdown @@ -35,10 +35,10 @@ The Logitech Transporter which have two digital inputs can be activated using a # Turn on Transporter and activate toslink interface transporter_toslink: sequence: - - service: homeassistant.turn_on + - action: homeassistant.turn_on target: entity_id: media_player.transporter - - service: media_player.play_media + - action: media_player.play_media target: entity_id: media_player.transporter data: diff --git a/source/_integrations/switch.template.markdown b/source/_integrations/switch.template.markdown index 6f6ed17a8f4..307ca316240 100644 --- a/source/_integrations/switch.template.markdown +++ b/source/_integrations/switch.template.markdown @@ -51,11 +51,11 @@ switch: skylight: value_template: "{{ is_state('sensor.skylight', 'on') }}" turn_on: - service: switch.turn_on + action: switch.turn_on target: entity_id: switch.skylight_open turn_off: - service: switch.turn_off + action: switch.turn_off target: entity_id: switch.skylight_close ``` @@ -129,11 +129,11 @@ switch: copy: value_template: "{{ is_state('switch.source', 'on') }}" turn_on: - service: switch.turn_on + action: switch.turn_on target: entity_id: switch.target turn_off: - service: switch.turn_off + action: switch.turn_off target: entity_id: switch.target ``` @@ -154,11 +154,11 @@ switch: friendly_name: "Blind" value_template: "{{ is_state_attr('switch.blind_toggle', 'sensor_state', 'on') }}" turn_on: - service: switch.toggle + action: switch.toggle target: entity_id: switch.blind_toggle turn_off: - service: switch.toggle + action: switch.toggle target: entity_id: switch.blind_toggle ``` @@ -178,19 +178,19 @@ switch: copy: value_template: "{{ is_state('switch.source', 'on') }}" turn_on: - - service: switch.turn_on + - action: switch.turn_on target: entity_id: switch.target - - service: light.turn_on + - action: light.turn_on target: entity_id: light.target data: brightness_pct: 40 turn_off: - - service: switch.turn_off + - action: switch.turn_off target: entity_id: switch.target - - service: light.turn_off + - action: light.turn_off target: entity_id: light.target ``` @@ -212,11 +212,11 @@ switch: friendly_name: "Skylight" value_template: "{{ is_state('sensor.skylight', 'on') }}" turn_on: - service: switch.turn_on + action: switch.turn_on target: entity_id: switch.skylight_open turn_off: - service: switch.turn_on + action: switch.turn_on target: entity_id: switch.skylight_close ``` @@ -236,11 +236,11 @@ switch: garage: value_template: "{{ is_state('cover.garage_door', 'open') }}" turn_on: - service: cover.open_cover + action: cover.open_cover target: entity_id: cover.garage_door turn_off: - service: cover.close_cover + action: cover.close_cover target: entity_id: cover.garage_door icon_template: >- @@ -266,11 +266,11 @@ switch: garage: value_template: "{{ is_state('cover.garage_door', 'open') }}" turn_on: - service: cover.open_cover + action: cover.open_cover target: entity_id: cover.garage_door turn_off: - service: cover.close_cover + action: cover.close_cover target: entity_id: cover.garage_door entity_picture_template: >- diff --git a/source/_integrations/switchbot.markdown b/source/_integrations/switchbot.markdown index 4ac2743686e..19fe9fdcbc5 100644 --- a/source/_integrations/switchbot.markdown +++ b/source/_integrations/switchbot.markdown @@ -139,13 +139,13 @@ cover: device_class: blind friendly_name: Example Blinds (Simple Down) open_cover: - service: cover.set_cover_tilt_position + action: cover.set_cover_tilt_position data: tilt_position: 50 target: entity_id: cover.example_blinds close_cover: - service: cover.set_cover_tilt_position + action: cover.set_cover_tilt_position data: tilt_position: 0 target: @@ -153,7 +153,7 @@ cover: position_template: > {{ int(states.cover.example_blinds.attributes.current_tilt_position)*2 }} set_cover_position: - service: cover.set_cover_tilt_position + action: cover.set_cover_tilt_position data: tilt_position: "{{position/2}}" target: diff --git a/source/_integrations/system_bridge.markdown b/source/_integrations/system_bridge.markdown index 974b1fdfade..810eefeb664 100644 --- a/source/_integrations/system_bridge.markdown +++ b/source/_integrations/system_bridge.markdown @@ -108,7 +108,7 @@ The integration provides an update component, which will notify you when a new v You can send notifications to the device using the `notify` platform. ```yaml -service: notify.system_bridge_hostname +action: notify.system_bridge_hostname data: data: image: "https://brands.home-assistant.io/system_bridge/logo@2x.png" @@ -170,7 +170,7 @@ Returns a process by its pid. {% my developer_call_service service="system_bridge.get_process_by_id" title="Show action in your Home Assistant instance." %} ```yaml -service: system_bridge.get_process_by_id +action: system_bridge.get_process_by_id data: bridge: "deviceid" id: 17752 @@ -197,7 +197,7 @@ Returns a count and a list of processes matching the name provided. {% my developer_call_service service="system_bridge.get_processes_by_name" title="Show action in your Home Assistant instance." %} ```yaml -service: system_bridge.get_processes_by_name +action: system_bridge.get_processes_by_name data: bridge: "deviceid" name: discord @@ -226,7 +226,7 @@ Open a URL or file on the server using the default application. {% my developer_call_service service="system_bridge.open_path" title="Show action in your Home Assistant instance." %} ```yaml -service: system_bridge.open_path +action: system_bridge.open_path data: bridge: "deviceid" path: "C:\\image.jpg" @@ -249,7 +249,7 @@ Open a URL or file on the server using the default application. {% my developer_call_service service="system_bridge.open_url" title="Show action in your Home Assistant instance." %} ```yaml -service: system_bridge.open_url +action: system_bridge.open_url data: bridge: "deviceid" url: "https://home-assistant.io" @@ -272,7 +272,7 @@ Send a keypress to the server. {% my developer_call_service service="system_bridge.send_keypress" title="Show action in your Home Assistant instance." %} ```yaml -service: system_bridge.send_keypress +action: system_bridge.send_keypress data: bridge: "deviceid" key: "a" @@ -295,7 +295,7 @@ Sends text for the server to type. {% my developer_call_service service="system_bridge.send_text" title="Show action in your Home Assistant instance." %} ```yaml -service: system_bridge.send_text +action: system_bridge.send_text data: bridge: "deviceid" text: "Hello" @@ -327,7 +327,7 @@ Supported commands are: {% my developer_call_service service="system_bridge.power_command" title="Show action in your Home Assistant instance." %} ```yaml -service: system_bridge.power_command +action: system_bridge.power_command data: bridge: "device" command: "sleep" diff --git a/source/_integrations/system_log.markdown b/source/_integrations/system_log.markdown index 29dc0ab2ad4..7c171b7a55b 100644 --- a/source/_integrations/system_log.markdown +++ b/source/_integrations/system_log.markdown @@ -96,7 +96,7 @@ automation: event_data: level: WARNING action: - service: counter.increment + action: counter.increment target: entity_id: counter.warning_counter ``` @@ -117,7 +117,7 @@ automation: condition: template value_template: '{{ "action" in trigger.event.data.message[0] }}' action: - service: persistent_notification.create + action: persistent_notification.create data: title: Something bad happened message: "{{ trigger.event.data.message[0] }}" @@ -138,7 +138,7 @@ automation: from: "off" to: "on" action: - service: system_log.write + action: system_log.write data: message: "Door opened!" level: info diff --git a/source/_integrations/tado.markdown b/source/_integrations/tado.markdown index bf5ec209245..f4f89e1a832 100644 --- a/source/_integrations/tado.markdown +++ b/source/_integrations/tado.markdown @@ -97,13 +97,13 @@ Examples: script: boost_heating: sequence: - - service: tado.set_climate_timer + - action: tado.set_climate_timer target: entity_id: climate.heating data: time_period: "01:30:00" temperature: 25 - - service: tado.set_water_heater_timer + - action: tado.set_water_heater_timer target: entity_id: water_heater.hot_water data: @@ -131,7 +131,7 @@ automation: # Work out what the new offset should be (tado temp less the room temp but add the current offset value) and turn that to a negative value for setting as the new offset action: - - service: tado.set_climate_temperature_offset + - action: tado.set_climate_temperature_offset target: entity_id: climate.tado data: @@ -167,7 +167,7 @@ automation: # Retrieve your `config_entry` id by setting this automation up in UI mode. # Notice that you may have to convert the reading to integer. action: - - service: tado.add_meter_reading + - action: tado.add_meter_reading data: config_entry: ef2e84b3dfc0aee85ed44ac8e8038ccf reading: "{{ states('sensor.gas_consumption')|int }}" diff --git a/source/_integrations/tag.markdown b/source/_integrations/tag.markdown index 579b20eef67..18cf41220af 100644 --- a/source/_integrations/tag.markdown +++ b/source/_integrations/tag.markdown @@ -87,7 +87,7 @@ automation: media_player_entity_id: "{{ media_players[trigger.event.data.device_id] }}" media_content_id: "{{ tags[trigger.event.data.tag_id].media_content_id }}" media_content_type: "{{ tags[trigger.event.data.tag_id].media_content_type }}" - - service: media_player.play_media + - action: media_player.play_media target: entity_id: "{{ media_player_entity_id }}" data: diff --git a/source/_integrations/telegram.markdown b/source/_integrations/telegram.markdown index a1aa109c4e2..3b2285b24ce 100644 --- a/source/_integrations/telegram.markdown +++ b/source/_integrations/telegram.markdown @@ -64,7 +64,7 @@ To create your first [Telegram bot](https://core.telegram.org/bots#how-do-i-crea - Replace the `service` and the `message` with your data. ```yaml - service: notify.sarah + action: notify.sarah data: message: "Yay! A message from Home Assistant." ``` @@ -177,7 +177,7 @@ To use notifications, please see the [getting started with automation page](/get ```yaml ... action: - service: notify.NOTIFIER_NAME + action: notify.NOTIFIER_NAME data: title: "*Send a message*" message: "That's an example that _sends_ a *formatted* message with a custom inline keyboard." @@ -211,7 +211,7 @@ inline_keyboard: ```yaml ... action: - service: notify.NOTIFIER_NAME + action: notify.NOTIFIER_NAME data: title: Send an images message: "That's an example that sends an image." @@ -287,7 +287,7 @@ homeassistant: ```yaml ... action: - service: notify.NOTIFIER_NAME + action: notify.NOTIFIER_NAME data: title: Send a video message: "That's an example that sends a video." @@ -348,7 +348,7 @@ inline_keyboard: ```yaml ... action: - service: notify.NOTIFIER_NAME + action: notify.NOTIFIER_NAME data: title: Send a document message: "That's an example that sends a document and a custom keyboard." @@ -408,7 +408,7 @@ inline_keyboard: ... action: - service: notify.NOTIFIER_NAME + action: notify.NOTIFIER_NAME data: title: Send location message: Location updated. @@ -442,7 +442,7 @@ inline_keyboard: ```yaml ... action: - service: notify.NOTIFIER_NAME + action: notify.NOTIFIER_NAME data: title: "*Send a message*" message: |- diff --git a/source/_integrations/telegram_bot.markdown b/source/_integrations/telegram_bot.markdown index 39a3c55949c..a697554baba 100644 --- a/source/_integrations/telegram_bot.markdown +++ b/source/_integrations/telegram_bot.markdown @@ -352,7 +352,7 @@ trigger: event_data: command: "/ping" action: - - service: notify.notify + - action: notify.notify data: message: "pong" ``` @@ -366,7 +366,7 @@ trigger: event_data: command: "/start" action: - - service: notify.telegram + - action: notify.telegram data: message: "commands" data: @@ -384,12 +384,12 @@ trigger: event_data: command: "/siren" action: - - service: homeassistant.turn_on + - action: homeassistant.turn_on target: entity_id: switch.vision_zm1601eu5_battery_operated_siren_switch_9_0 - delay: seconds: 10 - - service: homeassistant.turn_off + - action: homeassistant.turn_off target: entity_id: switch.vision_zm1601eu5_battery_operated_siren_switch_9_0 ``` @@ -406,7 +406,7 @@ An example to show the use of event_data in action: event_data: command: "/speak" action: - - service: notify.kitchen_echo + - action: notify.kitchen_echo data: message: > Message from {{ trigger.event.data["from_first"] }}. {% for state in trigger.event.data["args"] %} {{ state }} {% endfor %} @@ -432,7 +432,7 @@ Text repeater: platform: event event_type: telegram_text action: - - service: telegram_bot.send_message + - action: telegram_bot.send_message data: title: "*Dumb automation*" target: "{{ trigger.event.data.user_id }}" @@ -457,12 +457,12 @@ Message editor: event_data: command: "/edit_msg" action: - - service: telegram_bot.answer_callback_query + - action: telegram_bot.answer_callback_query data: callback_query_id: "{{ trigger.event.data.id }}" message: "Editing the message!" show_alert: true - - service: telegram_bot.edit_message + - action: telegram_bot.edit_message data: message_id: "{{ trigger.event.data.message.message_id }}" chat_id: "{{ trigger.event.data.chat_id }}" @@ -490,11 +490,11 @@ Keyboard editor: event_data: command: "/remove_button" action: - - service: telegram_bot.answer_callback_query + - action: telegram_bot.answer_callback_query data: callback_query_id: "{{ trigger.event.data.id }}" message: "Callback received for editing the inline keyboard!" - - service: telegram_bot.edit_replymarkup + - action: telegram_bot.edit_replymarkup data: message_id: "last" chat_id: "{{ trigger.event.data.chat_id }}" @@ -516,7 +516,7 @@ Only acknowledges the 'NO' answer: event_data: command: "/do_nothing" action: - - service: telegram_bot.answer_callback_query + - action: telegram_bot.answer_callback_query data: callback_query_id: "{{ trigger.event.data.id }}" message: "OK, you said no!" @@ -536,7 +536,7 @@ Telegram callbacks also support arguments and commands the same way as normal me event_data: command: "/repeat" action: - - service: telegram_bot.answer_callback_query + - action: telegram_bot.answer_callback_query data: show_alert: true callback_query_id: "{{ trigger.event.data.id }}" @@ -559,11 +559,11 @@ Receiving `chat_id` and `message_id` identifiers of sent messages by the `telegr event_data: message_tag: "msg_start" action: - - service: input_number.set_value + - action: input_number.set_value data_template: entity_id: input_number.chat_id value: "{{ trigger.event.data.chat_id }}" - - service: input_number.set_value + - action: input_number.set_value data_template: entity_id: input_number.message_id value: "{{ trigger.event.data.message_id }}" @@ -575,7 +575,7 @@ Receiving `chat_id` and `message_id` identifiers of sent messages by the `telegr ```yaml action: -- service: notify.telegrambot +- action: notify.telegrambot data: title: Example Message message: 'Message with *BOLD*, _ITALIC_ and `MONOSPACE` Text' @@ -585,7 +585,7 @@ action: ```yaml action: -- service: notify.telegrambot +- action: notify.telegrambot data: title: Example Message message: "Message with tag" @@ -597,7 +597,7 @@ action: ```yaml action: -- service: notify.telegram +- action: notify.telegram data: message: >- HA site diff --git a/source/_integrations/template.markdown b/source/_integrations/template.markdown index be48fee45da..7ebd0120e94 100644 --- a/source/_integrations/template.markdown +++ b/source/_integrations/template.markdown @@ -757,7 +757,7 @@ template: state: "{{ state_attr('camera.porch_camera_sd', 'day_night_mode') }}" options: "{{ ['off', 'on', 'auto'] }}" select_option: - - service: tapo_control.set_day_night_mode + - action: tapo_control.set_day_night_mode data: day_night_mode: "{{ option }}" target: @@ -797,7 +797,7 @@ template: - platform: time_pattern hours: /1 action: - - service: weather.get_forecasts + - action: weather.get_forecasts data: type: hourly target: diff --git a/source/_integrations/tensorflow.markdown b/source/_integrations/tensorflow.markdown index c3d3c7861f4..b8e0ab42b20 100644 --- a/source/_integrations/tensorflow.markdown +++ b/source/_integrations/tensorflow.markdown @@ -214,7 +214,7 @@ image_processing: entity_id: - binary_sensor.driveway action: - - service: image_processing.scan + - action: image_processing.scan target: entity_id: camera.driveway ``` diff --git a/source/_integrations/thermoworks_smoke.markdown b/source/_integrations/thermoworks_smoke.markdown index 1661f1ec629..7557cddcc3e 100644 --- a/source/_integrations/thermoworks_smoke.markdown +++ b/source/_integrations/thermoworks_smoke.markdown @@ -116,7 +116,7 @@ automation: False {% endif %} action: - - service: notify.all + - action: notify.all data: message: > {{- state_attr('sensor.my_smoke_probe_1','friendly_name') }} is above diff --git a/source/_integrations/tibber.markdown b/source/_integrations/tibber.markdown index 3cf70034794..e3e92f50601 100644 --- a/source/_integrations/tibber.markdown +++ b/source/_integrations/tibber.markdown @@ -43,7 +43,7 @@ To use notifications, please see the [getting started with automation page](/get ```yaml action: - service: notify.send_message + action: notify.send_message data: entity_id: notify.tibber title: Your title @@ -151,7 +151,7 @@ The electricity price can be used to make automations. The sensor has a `max_pri condition: template value_template: '{{ float(states('sensor.electricity_price_hamretunet_10')) > 0.9 * float(state_attr('sensor.electricity_price_hamretunet_10', 'max_price')) }}' action: - - service: notify.pushbullet + - action: notify.pushbullet data: title: "Electricity price" target: "device/daniel_telefon_cat" diff --git a/source/_integrations/timer.markdown b/source/_integrations/timer.markdown index fdde30fb13b..bc179282d24 100644 --- a/source/_integrations/timer.markdown +++ b/source/_integrations/timer.markdown @@ -158,7 +158,7 @@ timer: entity_id: switch.pumprun to: "on" action: - - service: timer.start + - action: timer.start target: entity_id: timer.test @@ -171,7 +171,7 @@ timer: event_data: entity_id: timer.test action: - - service: notify.nma + - action: notify.nma data: message: "Timer stop" ``` @@ -185,25 +185,25 @@ script: start_timer: alias: "Start timer" sequence: - - service: timer.start + - action: timer.start target: entity_id: timer.test pause_timer: alias: "Pause timer" sequence: - - service: timer.pause + - action: timer.pause target: entity_id: timer.test cancel_timer: alias: "Cancel timer" sequence: - - service: timer.cancel + - action: timer.cancel target: entity_id: timer.test finish_timer: alias: "Finish timer" sequence: - - service: timer.finish + - action: timer.finish target: entity_id: timer.test ``` diff --git a/source/_integrations/todo.markdown b/source/_integrations/todo.markdown index 402ba758179..a740f34b5ad 100644 --- a/source/_integrations/todo.markdown +++ b/source/_integrations/todo.markdown @@ -58,7 +58,7 @@ Get to-do items from a to-do list. A to-do list `target` is selected with a [tar This is a full example that returns all to-do items that have not been completed: ```yaml -service: todo.get_items +action: todo.get_items target: entity_id: todo.personal_tasks data: @@ -82,7 +82,7 @@ Only one of `due_date` or `due_datetime` may be specified. This is a full example in YAML: ```yaml -service: todo.add_item +action: todo.add_item target: entity_id: todo.personal_tasks data: @@ -107,7 +107,7 @@ Update a to-do item. A to-do list `target` is selected with a [Target Selector]( At least one of `rename` or `status` is required. Only one of `due_date` or `due_datetime` may be specified. This is a full example that updates the status and the name of a to-do item. ```yaml -service: todo.update_item +action: todo.update_item target: entity_id: todo.personal_tasks data: @@ -127,7 +127,7 @@ Removing a to-do item. A to-do list `target` is selected with a [Target Selector This is a full example that deletes a to-do Item with the specified name. ```yaml -service: todo.remove_item +action: todo.remove_item target: entity_id: todo.personal_tasks data: @@ -141,7 +141,7 @@ Removes all completed to-do items. A to-do list `target` is selected with a [Tar This is a full example that deletes all completed to-do items. ```yaml -service: todo.remove_completed_items +action: todo.remove_completed_items target: entity_id: todo.personal_tasks ``` diff --git a/source/_integrations/totalconnect.markdown b/source/_integrations/totalconnect.markdown index 4f80c0c882e..3c022f584dd 100644 --- a/source/_integrations/totalconnect.markdown +++ b/source/_integrations/totalconnect.markdown @@ -45,7 +45,7 @@ automation: condition: sun before: sunset action: - service: scene.turn_on + action: scene.turn_on target: entity_id: scene.OnDisarmedDaytime - alias: "Alarm: Armed Away" @@ -54,7 +54,7 @@ automation: entity_id: alarm_control_panel.total_connect to: "armed_away" action: - service: scene.turn_on + action: scene.turn_on target: entity_id: scene.OnArmedAway - alias: "Alarm: Arm Home Instant at Sunset" @@ -63,7 +63,7 @@ automation: event: sunset offset: '0' action: - service: totalconnect.arm_home_instant + action: totalconnect.arm_home_instant target: entity_id: alarm_control_panel.total_connect ``` diff --git a/source/_integrations/tplink.markdown b/source/_integrations/tplink.markdown index b0acb969c4c..0c7deaed884 100644 --- a/source/_integrations/tplink.markdown +++ b/source/_integrations/tplink.markdown @@ -102,7 +102,7 @@ Light strips allow setting a random effect. ```yaml #Example action -service: tplink.random_effect +action: tplink.random_effect target: entity_id: - light.strip @@ -147,7 +147,7 @@ Light strips allow setting a sequence effect. ```yaml #Example action -service: tplink.sequence_effect +action: tplink.sequence_effect target: entity_id: - light.strip diff --git a/source/_integrations/traccar_server.markdown b/source/_integrations/traccar_server.markdown index 3cd49328783..0f51f4e9cf5 100644 --- a/source/_integrations/traccar_server.markdown +++ b/source/_integrations/traccar_server.markdown @@ -301,7 +301,7 @@ Partial example: trigger: ... action: - - service: notify.notify + - action: notify.notify data: message: "The current speed of the Millennium falcon is {{ trigger.to_state.state }}!" ``` diff --git a/source/_integrations/transmission.markdown b/source/_integrations/transmission.markdown index 3ef10140a37..2c00f5b1756 100644 --- a/source/_integrations/transmission.markdown +++ b/source/_integrations/transmission.markdown @@ -66,11 +66,11 @@ Example of an automation that notifies on successful download and removes the to - platform: event event_type: transmission_downloaded_torrent action: - - service: notify.telegram_notifier + - action: notify.telegram_notifier data: title: "Torrent completed!" message: "{{trigger.event.data.name}}" - - service: transmission.remove_torrent + - action: transmission.remove_torrent data: entry_id: eeb52bc78e11d813a1e6bc68c8ff93c8 id: "{{trigger.event.data.id}}" diff --git a/source/_integrations/tts.markdown b/source/_integrations/tts.markdown index 0267d53b77f..1117db351d3 100644 --- a/source/_integrations/tts.markdown +++ b/source/_integrations/tts.markdown @@ -40,7 +40,7 @@ Modern platforms will create entities under the `tts` domain, where each entity the `tts.speak` action supports `language` and on some platforms also `options` for settings, e.g., _voice, motion, speed, etc_. The text that should be spoken is set with `message`, and the media player that should output the sound is selected with `media_player_entity_id`. ```yaml -service: tts.speak +action: tts.speak target: entity_id: tts.example data: @@ -56,7 +56,7 @@ Say to all `media_player` entities: ```yaml # Replace google_translate_say with _say when you use a different platform. -service: tts.google_translate_say +action: tts.google_translate_say data: entity_id: all message: "May the force be with you." @@ -65,7 +65,7 @@ data: Say to the `media_player.floor` entity: ```yaml -service: tts.google_translate_say +action: tts.google_translate_say data: entity_id: media_player.floor message: "May the force be with you." @@ -74,7 +74,7 @@ data: Say to the `media_player.floor` entity in French: ```yaml -service: tts.google_translate_say +action: tts.google_translate_say data: entity_id: media_player.floor message: "Que la force soit avec toi." @@ -86,7 +86,7 @@ With a template: {% raw %} ```yaml -service: tts.google_translate_say +action: tts.google_translate_say data: message: "Temperature is {{states('sensor.temperature')}}." cache: false diff --git a/source/_integrations/twilio.markdown b/source/_integrations/twilio.markdown index 0b5b497abe4..c3d2aab155c 100644 --- a/source/_integrations/twilio.markdown +++ b/source/_integrations/twilio.markdown @@ -65,7 +65,7 @@ automation: CallStatus: ringing Direction: inbound action: - service: cover.open_cover + action: cover.open_cover target: entity_id: cover.garage_door ``` @@ -86,7 +86,7 @@ action: {{ trigger.event.data.From }} message: | {{ trigger.event.data.Body }} - - service: notify.persistent_notification + - action: notify.persistent_notification data: message: | incoming twilio message from {{sender}}: {{ message }} diff --git a/source/_integrations/twilio_call.markdown b/source/_integrations/twilio_call.markdown index 3f5fe26096c..2d81081dc47 100644 --- a/source/_integrations/twilio_call.markdown +++ b/source/_integrations/twilio_call.markdown @@ -52,7 +52,7 @@ automation: platform: sun event: sunset action: - service: notify.twilio_call + action: notify.twilio_call data: message: "The sun has set" target: diff --git a/source/_integrations/twilio_sms.markdown b/source/_integrations/twilio_sms.markdown index 3160b47a6f7..f433bb369d2 100644 --- a/source/_integrations/twilio_sms.markdown +++ b/source/_integrations/twilio_sms.markdown @@ -55,7 +55,7 @@ automation: platform: sun event: sunset action: - service: notify.twilio_sms + action: notify.twilio_sms data: message: "The sun has set" target: diff --git a/source/_integrations/universal.markdown b/source/_integrations/universal.markdown index d6b85486a78..b4a9887ab27 100644 --- a/source/_integrations/universal.markdown +++ b/source/_integrations/universal.markdown @@ -32,31 +32,31 @@ media_player: - media_player.CHILD_2_ID commands: turn_on: - service: SERVICE + action: SERVICE data: SERVICE_DATA turn_off: - service: SERVICE + action: SERVICE data: SERVICE_DATA volume_up: - service: SERVICE + action: SERVICE data: SERVICE_DATA volume_down: - service: SERVICE + action: SERVICE data: SERVICE_DATA volume_mute: - service: SERVICE + action: SERVICE data: SERVICE_DATA media_play: - service: SERVICE + action: SERVICE data: SERVICE_DATA media_pause: - service: SERVICE + action: SERVICE data: SERVICE_DATA media_previous_track: - service: SERVICE + action: SERVICE data: SERVICE_DATA media_next_track: - service: SERVICE + action: SERVICE data: SERVICE_DATA attributes: is_volume_muted: ENTITY_ID|ATTRIBUTE @@ -138,33 +138,33 @@ media_player: - media_player.living_room_kodi commands: turn_on: - service: switch.turn_on + action: switch.turn_on target: entity_id: switch.living_room_tv turn_off: - service: switch.turn_off + action: switch.turn_off target: entity_id: switch.living_room_tv volume_up: - service: switch.turn_on + action: switch.turn_on target: entity_id: switch.living_room_volume_up volume_down: - service: switch.turn_on + action: switch.turn_on target: entity_id: switch.living_room_volume_down volume_mute: - service: switch.turn_on + action: switch.turn_on target: entity_id: switch.living_room_mute select_source: - service: media_player.select_source + action: media_player.select_source target: entity_id: media_player.receiver data: source: "{{ source }}" volume_set: - service: media_player.volume_set + action: media_player.volume_set target: entity_id: media_player.receiver data: @@ -214,11 +214,11 @@ media_player: - media_player.kodi commands: turn_on: - service: media_player.turn_on + action: media_player.turn_on target: entity_id: media_player.kodi turn_off: - service: media_player.turn_off + action: media_player.turn_off target: entity_id: media_player.kodi attributes: @@ -229,10 +229,10 @@ media_player: name: Kodi host: 192.168.1.10 turn_on_action: - - service: input_boolean.turn_on + - action: input_boolean.turn_on target: entity_id: input_boolean.kodi_tv_state - - service: media_player.kodi_call_method + - action: media_player.kodi_call_method target: entity_id: media_player.kodi data: @@ -241,13 +241,13 @@ media_player: params: command: activate turn_off_action: - - service: input_boolean.turn_off + - action: input_boolean.turn_off target: entity_id: input_boolean.kodi_tv_state - - service: media_player.media_stop + - action: media_player.media_stop target: entity_id: media_player.kodi - - service: media_player.kodi_call_method + - action: media_player.kodi_call_method target: entity_id: media_player.kodi data: @@ -264,7 +264,7 @@ automation: from: "off" to: playing action: - - service: media_player.turn_on + - action: media_player.turn_on target: entity_id: media_player.kodi_tv - alias: Turn off the TV when Kodi is in idle > 15 min @@ -275,7 +275,7 @@ automation: for: minutes: 15 action: - - service: media_player.turn_off + - action: media_player.turn_off target: entity_id: media_player.kodi_tv ``` @@ -298,29 +298,29 @@ media_player: source: remote.harmony_hub|current_activity commands: turn_on: - service: remote.turn_on + action: remote.turn_on target: entity_id: remote.harmony_hub turn_off: - service: remote.turn_off + action: remote.turn_off target: entity_id: remote.harmony_hub volume_up: - service: remote.send_command + action: remote.send_command target: entity_id: remote.harmony_hub data: device: Receiver command: VolumeUp volume_down: - service: remote.send_command + action: remote.send_command target: entity_id: remote.harmony_hub data: device: Receiver command: VolumeDown select_source: - service: remote.turn_on + action: remote.turn_on target: entity_id: remote.harmony_hub data: @@ -357,23 +357,23 @@ media_player: browse_media_entity: media_player.denon_avr_x2700h_heos commands: turn_off: - service: media_player.turn_off + action: media_player.turn_off data: entity_id: media_player.denon_avr_x2700h turn_on: - service: media_player.turn_on + action: media_player.turn_on data: entity_id: media_player.denon_avr_x2700h volume_up: - service: media_player.volume_up + action: media_player.volume_up data: entity_id: media_player.denon_avr_x2700h volume_down: - service: media_player.volume_down + action: media_player.volume_down data: entity_id: media_player.denon_avr_x2700h select_sound_mode: - service: media_player.select_sound_mode + action: media_player.select_sound_mode target: entity_id: media_player.denon_avr_x2700h data: diff --git a/source/_integrations/upb.markdown b/source/_integrations/upb.markdown index 9f5d7028b8a..9acd6a7903c 100644 --- a/source/_integrations/upb.markdown +++ b/source/_integrations/upb.markdown @@ -185,7 +185,7 @@ Start a scene blinking. command: activated address: "42_9" action: - service: persistent_notification.create + action: persistent_notification.create data: title: "Scene Activated" message: > @@ -200,7 +200,7 @@ all_lights_on: alias: "All Lights On" description: "Activate two UPB scenes named interior_lights and exterior_lights" sequence: - - service: scene.turn_on + - action: scene.turn_on target: entity_id: - scene.interior_lights @@ -210,7 +210,7 @@ all_lights_off: alias: "All Lights Off" description: "Deactivate two UPB scenes named interior_lights and exterior_lights" sequence: - - service: upb.scene_deactivate + - action: upb.scene_deactivate target: entity_id: - scene.interior_lights @@ -220,7 +220,7 @@ kitchen_fade_on: alias: "Kitchen Fade to On" description: "Turn on kitchen light to 75% over a period of 10 seconds" sequence: - - service: upb.light_fade_start + - action: upb.light_fade_start target: entity_id: light.kitchen data: diff --git a/source/_integrations/update.markdown b/source/_integrations/update.markdown index 977602351c5..e3ed325d308 100644 --- a/source/_integrations/update.markdown +++ b/source/_integrations/update.markdown @@ -93,7 +93,7 @@ backup: Example action: ```yaml -service: update.install +action: update.install target: entity_id: - update.my_light_bulb @@ -108,7 +108,7 @@ After skipping an offered update, the {% term entity %} will return to the `off` which means there is no update available. ```yaml -service: update.skip +action: update.skip target: entity_id: - update.my_light_bulb @@ -132,7 +132,7 @@ removed and thus the entity will return to the `on` state and the update notification will return. ```yaml -service: update.clear_skipped +action: update.clear_skipped target: entity_id: - update.my_light_bulb @@ -159,7 +159,7 @@ automation: to: "on" action: alias: "Send notification to my phone about the update" - service: notify.iphone + action: notify.iphone data: title: "New update available" message: "New update available for my_light_bulb!" diff --git a/source/_integrations/utility_meter.markdown b/source/_integrations/utility_meter.markdown index 98922f0e2e1..01dadd8cc36 100644 --- a/source/_integrations/utility_meter.markdown +++ b/source/_integrations/utility_meter.markdown @@ -222,12 +222,12 @@ automation: variables: tariff: "offpeak" action: - - service: select.select_option + - action: select.select_option target: entity_id: select.daily_energy data: option: "{{ tariff }}" - - service: select.select_option + - action: select.select_option target: entity_id: select.monthly_energy data: diff --git a/source/_integrations/vacuum.mqtt.markdown b/source/_integrations/vacuum.mqtt.markdown index 35858a77df6..6bf2044f6bf 100644 --- a/source/_integrations/vacuum.mqtt.markdown +++ b/source/_integrations/vacuum.mqtt.markdown @@ -276,7 +276,7 @@ Action trigger example: - platform: state entity_id: sensor.sensor action: - service: vacuum.send_command + action: vacuum.send_command target: entity_id: vacuum.vacuum_entity data: diff --git a/source/_integrations/vacuum.template.markdown b/source/_integrations/vacuum.template.markdown index 31b23d28f28..4fedbb92c83 100644 --- a/source/_integrations/vacuum.template.markdown +++ b/source/_integrations/vacuum.template.markdown @@ -34,7 +34,7 @@ vacuum: vacuums: living_room_vacuum: start: - service: script.vacuum_start + action: script.vacuum_start ``` {% endraw %} @@ -129,21 +129,21 @@ vacuum: vacuums: living_room_vacuum: start: - - service: remote.send_command + - action: remote.send_command target: entity_id: remote.harmony_hub data: command: Clean device: 52840686 return_to_base: - - service: remote.send_command + - action: remote.send_command target: entity_id: remote.harmony_hub data: command: Home device: 52840686 clean_spot: - - service: remote.send_command + - action: remote.send_command target: entity_id: remote.harmony_hub data: @@ -166,19 +166,19 @@ vacuum: battery_level_template: "{{ states('sensor.vacuum_battery_level')|int }}" fan_speed_template: "{{ states('sensor.vacuum_fan_speed') }}" start: - service: script.vacuum_start + action: script.vacuum_start pause: - service: script.vacuum_pause + action: script.vacuum_pause stop: - service: script.vacuum_stop + action: script.vacuum_stop return_to_base: - service: script.vacuum_return_to_base + action: script.vacuum_return_to_base clean_spot: - service: script.vacuum_clean_spot + action: script.vacuum_clean_spot locate: - service: script.vacuum_locate_vacuum + action: script.vacuum_locate_vacuum set_fan_speed: - service: script.vacuum_set_fan_speed + action: script.vacuum_set_fan_speed data: speed: "{{ fan_speed }}" fan_speeds: diff --git a/source/_integrations/valve.markdown b/source/_integrations/valve.markdown index a4c02af8f0a..58982e829e4 100644 --- a/source/_integrations/valve.markdown +++ b/source/_integrations/valve.markdown @@ -49,7 +49,7 @@ automation: platform: time at: "07:15:00" action: - - service: valve.close + - action: valve.close target: entity_id: valve.demo ``` @@ -71,7 +71,7 @@ automation: platform: time at: "07:15:00" action: - - service: valve.set_position + - action: valve.set_position target: entity_id: valve.demo data: diff --git a/source/_integrations/velbus.markdown b/source/_integrations/velbus.markdown index f44f9d73f0f..f41e6c923f6 100644 --- a/source/_integrations/velbus.markdown +++ b/source/_integrations/velbus.markdown @@ -86,7 +86,7 @@ script: address: 65 memo_text: "It's trash day" interface: "tls://192.168.1.9:27015" - service: velbus.set_memo_text + action: velbus.set_memo_text ``` ### Action `velbus.clear_cache` @@ -131,7 +131,7 @@ The actual linking can be realized by two automation rules. One rule to control condition: [] action: - entity_id: light.living - service: light.toggle + action: light.toggle # Keep status LED push_button_10 in sync to status light living - id: 'Update LED of push_button_10' @@ -164,5 +164,5 @@ The actual linking can be realized by two automation rules. One rule to control entity_id: light.living state: "on" - entity_id: light.led_push_button_10 - service: light.toggle + action: light.toggle ``` diff --git a/source/_integrations/velux.markdown b/source/_integrations/velux.markdown index b5cdc1373ad..7d23943bda4 100644 --- a/source/_integrations/velux.markdown +++ b/source/_integrations/velux.markdown @@ -54,7 +54,7 @@ automation: - platform: homeassistant event: shutdown action: - - service: velux.reboot_gateway + - action: velux.reboot_gateway ``` ## Velux Active (KIX 300) diff --git a/source/_integrations/verisure.markdown b/source/_integrations/verisure.markdown index 999243609bd..a186b42f9de 100644 --- a/source/_integrations/verisure.markdown +++ b/source/_integrations/verisure.markdown @@ -57,7 +57,7 @@ automation: - platform: state entity_id: alarm_control_panel.alarm_1 action: - - service: notify.notify + - action: notify.notify data: message: > Alarm changed from {{ trigger.from_state.state }} diff --git a/source/_integrations/vivotek.markdown b/source/_integrations/vivotek.markdown index fe1b558498e..115f8c1e2bb 100644 --- a/source/_integrations/vivotek.markdown +++ b/source/_integrations/vivotek.markdown @@ -122,7 +122,7 @@ For example, the following action in an automation would send an `hls` live stre ```yaml action: - service: camera.play_stream + action: camera.play_stream target: entity_id: camera.yourcamera data: @@ -162,7 +162,7 @@ For example, the following action is an automation that would take a snapshot fr ```yaml action: - service: camera.snapshot + action: camera.snapshot target: entity_id: camera.front_door_camera data: diff --git a/source/_integrations/wake_on_lan.markdown b/source/_integrations/wake_on_lan.markdown index 2479bcf0ecb..bcace1ffcf9 100644 --- a/source/_integrations/wake_on_lan.markdown +++ b/source/_integrations/wake_on_lan.markdown @@ -153,7 +153,7 @@ switch: name: "TARGET" ... turn_off: - service: shell_command.turn_off_TARGET + action: shell_command.turn_off_TARGET shell_command: turn_off_TARGET: "ssh hass@TARGET sudo pm-suspend" @@ -184,7 +184,7 @@ A switch defined with the `wake_on_lan` platform will render in the UI with both - Continuing our example, the action YAML looks like this: ```yaml - service: wake_on_lan.send_magic_packet + action: wake_on_lan.send_magic_packet data: broadcast_port: 9 mac: 00:11:22:33:44:55 diff --git a/source/_integrations/water_heater.markdown b/source/_integrations/water_heater.markdown index e0fa0cc490a..7bd77899ed9 100644 --- a/source/_integrations/water_heater.markdown +++ b/source/_integrations/water_heater.markdown @@ -48,7 +48,7 @@ automation: platform: time at: "07:15:00" action: - - service: water_heater.set_temperature + - action: water_heater.set_temperature target: entity_id: water_heater.demo data: @@ -73,7 +73,7 @@ automation: platform: time at: "07:15:00" action: - - service: water_heater.set_operation_mode + - action: water_heater.set_operation_mode target: entity_id: water_heater.demo data: @@ -97,7 +97,7 @@ automation: platform: time at: "07:15:00" action: - - service: water_heater.set_away_mode + - action: water_heater.set_away_mode target: entity_id: water_heater.demo data: diff --git a/source/_integrations/watson_tts.markdown b/source/_integrations/watson_tts.markdown index bcf5ba0019a..8cb595dd3e6 100644 --- a/source/_integrations/watson_tts.markdown +++ b/source/_integrations/watson_tts.markdown @@ -70,7 +70,7 @@ output_format: Say to all `media_player` device entities: ```yaml -- service: tts.watson_tts_say +- action: tts.watson_tts_say data: message: "Hello from Watson" ``` @@ -78,7 +78,7 @@ Say to all `media_player` device entities: or ```yaml -- service: tts.watson_tts_say +- action: tts.watson_tts_say data: message: > @@ -89,7 +89,7 @@ or Say to the `media_player.living_room` device entity: ```yaml -- service: tts.watson_tts_say +- action: tts.watson_tts_say target: entity_id: media_player.living_room data: @@ -102,7 +102,7 @@ Say to the `media_player.living_room` device entity: Say with break: ```yaml -- service: tts.watson_tts_say +- action: tts.watson_tts_say data: message: > @@ -115,7 +115,7 @@ Say with break: Optionally, specify a voice for the message: ```yaml -- service: tts.watson_tts_say +- action: tts.watson_tts_say data: message: "Hello from Watson" options: diff --git a/source/_integrations/waze_travel_time.markdown b/source/_integrations/waze_travel_time.markdown index 9961d70d43a..513a7390d8d 100644 --- a/source/_integrations/waze_travel_time.markdown +++ b/source/_integrations/waze_travel_time.markdown @@ -45,7 +45,7 @@ with route alternatives and travel times between two locations. | `avoid_subscription_roads` | yes | Whether to avoid subscription roads | True | ```yaml -service: waze_travel_time.get_travel_times +action: waze_travel_time.get_travel_times data: origin: "51.330436, 3.802043" destination: "51.445677, 3.749929" diff --git a/source/_integrations/weather.markdown b/source/_integrations/weather.markdown index 86b1fe5e58d..d475017d4f0 100644 --- a/source/_integrations/weather.markdown +++ b/source/_integrations/weather.markdown @@ -78,7 +78,7 @@ with a mapping of weather services and their associated forecasts. | `type` | no | The type of forecast, must be one of `daily`, `twice_daily`, or `hourly`. The default is `daily`. | daily ```yaml -service: weather.get_forecasts +action: weather.get_forecasts target: entity_id: - weather.tomorrow_io_home_nowcast @@ -125,7 +125,7 @@ template: - platform: time_pattern hours: /1 action: - - service: weather.get_forecasts + - action: weather.get_forecasts data: type: hourly target: diff --git a/source/_integrations/webostv.markdown b/source/_integrations/webostv.markdown index 95365bbd38c..a0183080940 100644 --- a/source/_integrations/webostv.markdown +++ b/source/_integrations/webostv.markdown @@ -55,7 +55,7 @@ automation: - platform: webostv.turn_on entity_id: media_player.lg_webos_smart_tv action: - - service: wake_on_lan.send_magic_packet + - action: wake_on_lan.send_magic_packet data: mac: aa:bb:cc:dd:ee:ff ``` @@ -76,7 +76,7 @@ The `play_media` action can be used in a script to switch to the specified TV ch ```yaml # Example action entry in script to switch to channel number 1 -service: media_player.play_media +action: media_player.play_media target: entity_id: media_player.lg_webos_smart_tv data: @@ -84,7 +84,7 @@ data: media_content_type: "channel" # Example action entry in script to switch to channel including 'TF1' in its name -service: media_player.play_media +action: media_player.play_media target: entity_id: media_player.lg_webos_smart_tv data: @@ -136,7 +136,7 @@ Available actions: `button`, `command` script: home_button: sequence: - - service: webostv.button + - action: webostv.button target: entity_id: media_player.lg_webos_smart_tv data: @@ -144,7 +144,7 @@ script: open_google_command: sequence: - - service: webostv.command + - action: webostv.command target: entity_id: media_player.lg_webos_smart_tv data: @@ -167,7 +167,7 @@ automation: entity_id: binary_sensor.front_door_motion to: "on" action: - service: notify.livingroom_tv + action: notify.livingroom_tv data: message: "Movement detected: Front Door" data: diff --git a/source/_integrations/wemo.markdown b/source/_integrations/wemo.markdown index ab342fcdd27..daa960d97a9 100644 --- a/source/_integrations/wemo.markdown +++ b/source/_integrations/wemo.markdown @@ -154,7 +154,7 @@ The following is an example implementation of an automation: type: LongPress name: Living Room action: - - service: media_player.toggle + - action: media_player.toggle target: entity_id: media_player.amplifier ``` diff --git a/source/_integrations/wled.markdown b/source/_integrations/wled.markdown index 76c6c4f7b98..5f263474381 100644 --- a/source/_integrations/wled.markdown +++ b/source/_integrations/wled.markdown @@ -134,7 +134,7 @@ You can automate changing the effect using an action like this: {% raw %} ```yaml -service: light.turn_on +action: light.turn_on target: entity_id: light.wled data: @@ -152,7 +152,7 @@ and can be done by selecting a random one from the available palette select {% raw %} ```yaml -service: select.select_option +action: select.select_option target: entity_id: select.wled_palette data: @@ -168,10 +168,10 @@ configuration. Here is an example action to set a WLED light to a preset called My Preset: ```yaml -- service: light.turn_on +- action: light.turn_on target: entity_id: light.wled -- service: select.select_option +- action: select.select_option target: entity_id: select.wled_preset data: @@ -195,22 +195,22 @@ Here is an example of all of these put together into an automation: entity_id: sensor.weather_condition to: "rainy" action: - - service: light.turn_on + - action: light.turn_on target: entity_id: light.wled data: effect: "Rain" - - service: select.select_option + - action: select.select_option target: entity_id: select.wled_color_palette data: option: "Breeze" - - service: number.set_value + - action: number.set_value target: entity_id: number.wled_intensity data: value: 200 - - service: number.set_value + - action: number.set_value target: entity_id: number.wled_speed data: diff --git a/source/_integrations/workday.markdown b/source/_integrations/workday.markdown index f79db9b09d8..595b5239543 100644 --- a/source/_integrations/workday.markdown +++ b/source/_integrations/workday.markdown @@ -61,7 +61,7 @@ providing feedback if the date is a workday or not. {% raw %} ```yaml -service: workday.check_date +action: workday.check_date target: entity_id: binary_sensor.workday data: @@ -91,7 +91,7 @@ automation: entity_id: binary_sensor.workday_sensor state: "on" action: - service: switch.turn_on + action: switch.turn_on target: entity_id: switch.heater ``` diff --git a/source/_integrations/xbox.markdown b/source/_integrations/xbox.markdown index 6654bdfdb76..98e1df4c109 100644 --- a/source/_integrations/xbox.markdown +++ b/source/_integrations/xbox.markdown @@ -113,7 +113,7 @@ image: >- elements: - type: service-button title: "" - service: remote.send_command + action: remote.send_command service_data: entity_id: remote.xboxone_remote command: Up @@ -125,7 +125,7 @@ elements: overflow: hidden - type: service-button title: "" - service: remote.send_command + action: remote.send_command service_data: entity_id: remote.xboxone_remote command: Down @@ -137,7 +137,7 @@ elements: overflow: hidden - type: service-button title: "" - service: remote.send_command + action: remote.send_command service_data: entity_id: remote.xboxone_remote command: Left @@ -149,7 +149,7 @@ elements: overflow: hidden - type: service-button title: "" - service: remote.send_command + action: remote.send_command service_data: entity_id: remote.xboxone_remote command: Right @@ -161,7 +161,7 @@ elements: overflow: hidden - type: service-button title: "" - service: remote.send_command + action: remote.send_command service_data: entity_id: remote.xboxone_remote command: "A" @@ -174,7 +174,7 @@ elements: overflow: hidden - type: service-button title: "" - service: remote.send_command + action: remote.send_command service_data: entity_id: remote.xboxone_remote command: "X" @@ -187,7 +187,7 @@ elements: overflow: hidden - type: service-button title: "" - service: remote.send_command + action: remote.send_command service_data: entity_id: remote.xboxone_remote command: "B" @@ -200,7 +200,7 @@ elements: overflow: hidden - type: service-button title: "" - service: remote.send_command + action: remote.send_command service_data: entity_id: remote.xboxone_remote command: "Y" @@ -213,7 +213,7 @@ elements: overflow: hidden - type: service-button title: "" - service: remote.toggle + action: remote.toggle service_data: entity_id: remote.xboxone_remote style: @@ -225,7 +225,7 @@ elements: overflow: hidden - type: service-button title: "" - service: media_player.play_media + action: media_player.play_media service_data: entity_id: media_player.xboxone media_content_type: "" diff --git a/source/_integrations/xiaomi_aqara.markdown b/source/_integrations/xiaomi_aqara.markdown index b8211a00d8f..bee0a1f5774 100644 --- a/source/_integrations/xiaomi_aqara.markdown +++ b/source/_integrations/xiaomi_aqara.markdown @@ -170,7 +170,7 @@ This example plays the sound of a dog barking when the button is held down and s entity_id: binary_sensor.switch_158d000xxxxxc2 click_type: long_click_press action: - service: xiaomi_aqara.play_ringtone + action: xiaomi_aqara.play_ringtone data: gw_mac: xxxxxxxxxxxx ringtone_id: 8 @@ -184,7 +184,7 @@ This example plays the sound of a dog barking when the button is held down and s entity_id: binary_sensor.switch_158d000xxxxxc2 click_type: single action: - service: xiaomi_aqara.stop_ringtone + action: xiaomi_aqara.stop_ringtone data: gw_mac: xxxxxxxxxxxx ``` @@ -202,7 +202,7 @@ This example toggles the living room lamp on a double click of the button. entity_id: binary_sensor.switch_158d000xxxxxc2 click_type: double action: - service: light.toggle + action: light.toggle target: entity_id: light.living_room_lamp ``` diff --git a/source/_integrations/xiaomi_miio.markdown b/source/_integrations/xiaomi_miio.markdown index 0e9084bcba8..1c231239121 100644 --- a/source/_integrations/xiaomi_miio.markdown +++ b/source/_integrations/xiaomi_miio.markdown @@ -1344,7 +1344,7 @@ remote: type: entity-button tap_action: action: call-service - service: remote.send_command + action: remote.send_command data: command: activate_towel_heater entity_id: remote.xiaomi_miio_ir @@ -1363,7 +1363,7 @@ name: Activate Towel Heater script: towel_heater: sequence: - - service: remote.send_command + - action: remote.send_command target: entity_id: "remote.bathroom_remote" data: @@ -1371,7 +1371,7 @@ script: - "activate_towel_heater" please_cover_your_ears: sequence: - - service: remote.send_command + - action: remote.send_command target: entity_id: "remote.bathroom_remote" data: @@ -1504,7 +1504,7 @@ automation: platform: homeassistant condition: [] action: - - service: xiaomi_miio.vacuum_clean_zone + - action: xiaomi_miio.vacuum_clean_zone target: entity_id: vacuum.xiaomi_vacuum data: @@ -1525,7 +1525,7 @@ automation: platform: homeassistant condition: [] action: - - service: xiaomi_miio.vacuum_clean_zone + - action: xiaomi_miio.vacuum_clean_zone target: entity_id: vacuum.xiaomi_vacuum data: @@ -1547,7 +1547,7 @@ automation: platform: homeassistant condition: [] action: - - service: xiaomi_miio.vacuum_clean_zone + - action: xiaomi_miio.vacuum_clean_zone target: entity_id: vacuum.xiaomi_vacuum data: @@ -1584,7 +1584,7 @@ automation: platform: homeassistant condition: [] action: - - service: xiaomi_miio.vacuum_clean_segment + - action: xiaomi_miio.vacuum_clean_segment target: entity_id: vacuum.xiaomi_vacuum data: @@ -1601,7 +1601,7 @@ automation: platform: homeassistant condition: [] action: - - service: xiaomi_miio.vacuum_clean_segment + - action: xiaomi_miio.vacuum_clean_segment target: entity_id: vacuum.xiaomi_vacuum data: @@ -1617,7 +1617,7 @@ automation: - event: start platform: homeassistant action: - - service: xiaomi_miio.vacuum_clean_segment + - action: xiaomi_miio.vacuum_clean_segment target: entity_id: vacuum.xiaomi_vacuum data: @@ -1743,7 +1743,7 @@ Example script using [`vacuum.send_command`](/integrations/vacuum/) to clean a s vacuum_kitchen: alias: "Clean the kitchen" sequence: - - service: vacuum.send_command + - action: vacuum.send_command target: entity_id: vacuum.xiaomi_vacuum_cleaner data: @@ -1765,7 +1765,7 @@ or replaced you can then reset those values on the vacuum. Here is an example sc reset_main_brush_left: alias: "Reset hours for main brush replacement" sequence: - - service: vacuum.send_Command + - action: vacuum.send_Command target: entity_id: vacuum.xiaomi_vacuum_cleaner data: @@ -1800,7 +1800,7 @@ Using the map editor you are able to acquire the coordinates required for zoned vacuum_kitchen: alias: "vacuum kitchen" sequence: - - service: vacuum.send_command + - action: vacuum.send_command target: entity_id: "vacuum.xiaomi_vacuum_cleaner" data: diff --git a/source/_integrations/xmpp.markdown b/source/_integrations/xmpp.markdown index 555f5dde5db..a894bbbdd9b 100644 --- a/source/_integrations/xmpp.markdown +++ b/source/_integrations/xmpp.markdown @@ -96,7 +96,7 @@ Number 1 shows a classical, text-only message. The Title is optional, although i 1_send_jabber_message: alias: "Text only Jabber message" sequence: - - service: notify.jabber # from notify.NOTIFIER_NAME + - action: notify.jabber # from notify.NOTIFIER_NAME data: title: "Optional Title" message: "My funny or witty message" @@ -120,7 +120,7 @@ Number 2 sends only an image, retrieved from the URL. The TLS connection to get 2_send_jabber_message_with_image_url: alias: "Send Image via Jabber from website" sequence: - - service: notify.jabber + - action: notify.jabber data: title: "" message: "" @@ -136,7 +136,7 @@ Number 3 sends an image from a local path. 3_send_jabber_message_with_local_image_path: alias: "Send Image via Jabber from local file" sequence: - - service: notify.jabber + - action: notify.jabber data: title: "" message: "" @@ -154,7 +154,7 @@ Number 4 sends a text-file, retrieved from GitHub, renamed to `Hass_Cheatsheet.t 4_send_jabber_message_with_file: alias: "Send text file via Jabber" sequence: - - service: notify.jabber + - action: notify.jabber data: title: "" message: "" @@ -175,7 +175,7 @@ Number 5 sends an image retrieved from a URL, and an additional text message wit 5_send_jabber_message_with_image_and_text: alias: "Send Image and Text via Jabber" sequence: - - service: notify.jabber + - action: notify.jabber data: title: "The Time is now" message: "{{ now() }}, templating works as well..." @@ -194,7 +194,7 @@ Number 6 sends an image from a templated URL. 6_send_jabber_message_with_image_from_url_template: alias: "Send Image from template URL via Jabber" sequence: - - service: notify.jabber + - action: notify.jabber data: title: "" message: "" diff --git a/source/_integrations/yamaha.markdown b/source/_integrations/yamaha.markdown index f7761731c1f..7f257108725 100644 --- a/source/_integrations/yamaha.markdown +++ b/source/_integrations/yamaha.markdown @@ -110,15 +110,15 @@ script: rp_porch: alias: "Radio Paradise Porch" sequence: - - service: media_player.turn_on + - action: media_player.turn_on target: entity_id: media_player.living_room_stereo_zone_2 - - service: media_player.volume_set + - action: media_player.volume_set target: entity_id: media_player.living_room_stereo_zone_2 data: volume_level: 0.48 - - service: media_player.play_media + - action: media_player.play_media target: entity_id: media_player.living_room_stereo_zone_2 data: diff --git a/source/_integrations/yamaha_musiccast.markdown b/source/_integrations/yamaha_musiccast.markdown index 3a983289930..3693924fe24 100644 --- a/source/_integrations/yamaha_musiccast.markdown +++ b/source/_integrations/yamaha_musiccast.markdown @@ -43,7 +43,7 @@ It is also possible to recall NetUSB presets using the play media action. To do This is an example action that plays an audio file from a web server on the local network (like the Home Assistant built-in webserver): ```yaml -service: media_player.play_media +action: media_player.play_media target: entity_id: media_player.sonos data: @@ -54,7 +54,7 @@ data: This example call shows how to call netusb preset 1: ```yaml -service: media_player.play_media +action: media_player.play_media target: entity_id: media_player.buro data: diff --git a/source/_integrations/zoneminder.markdown b/source/_integrations/zoneminder.markdown index ce1e6ce2359..ee5d39a38e9 100644 --- a/source/_integrations/zoneminder.markdown +++ b/source/_integrations/zoneminder.markdown @@ -106,7 +106,7 @@ For example, if your ZoneMinder instance was configured with a run state called ```yaml action: - service: zoneminder.set_run_state + action: zoneminder.set_run_state data: id: ZM_HOST name: Home diff --git a/source/_integrations/zwave_js.markdown b/source/_integrations/zwave_js.markdown index ffd31290e90..543173f1fb9 100644 --- a/source/_integrations/zwave_js.markdown +++ b/source/_integrations/zwave_js.markdown @@ -211,7 +211,7 @@ Let's use parameter 31 for [this device](https://devices.zwave-js.io/?jumpTo=0x0 Example 1: ```yaml -service: zwave_js.set_config_parameter +action: zwave_js.set_config_parameter target: entity_id: switch.fan data: @@ -223,7 +223,7 @@ data: Example 2: ```yaml -service: zwave_js.set_config_parameter +action: zwave_js.set_config_parameter target: entity_id: switch.fan data: @@ -235,7 +235,7 @@ data: Example 3: ```yaml -service: zwave_js.set_config_parameter +action: zwave_js.set_config_parameter target: entity_id: switch.fan data: @@ -267,7 +267,7 @@ When using the dictionary format to map the partial parameter to values, the cac Example 1: ```yaml -service: zwave_js.bulk_set_partial_config_parameters +action: zwave_js.bulk_set_partial_config_parameters target: entity_id: switch.fan data: @@ -278,7 +278,7 @@ data: Example 2: ```yaml -service: zwave_js.bulk_set_partial_config_parameters +action: zwave_js.bulk_set_partial_config_parameters target: entity_id: switch.fan data: @@ -292,7 +292,7 @@ data: Example 3: ```yaml -service: zwave_js.bulk_set_partial_config_parameters +action: zwave_js.bulk_set_partial_config_parameters target: entity_id: switch.fan data: @@ -306,7 +306,7 @@ data: Example 4: ```yaml -service: zwave_js.bulk_set_partial_config_parameters +action: zwave_js.bulk_set_partial_config_parameters target: entity_id: switch.fan data: @@ -320,7 +320,7 @@ data: Example 5: ```yaml -service: zwave_js.bulk_set_partial_config_parameters +action: zwave_js.bulk_set_partial_config_parameters target: entity_id: switch.fan data: @@ -610,7 +610,7 @@ trigger: event_data: entity_id: switch.in_wall_dual_relay_switch action: - - service: zwave_js.refresh_value + - action: zwave_js.refresh_value data: entity_id: - switch.in_wall_dual_relay_switch_2 diff --git a/source/blueprints/integrations/conversation_notify_agent_agenda.yaml b/source/blueprints/integrations/conversation_notify_agent_agenda.yaml index 0aab5d650c3..cd7fb5ae4b8 100644 --- a/source/blueprints/integrations/conversation_notify_agent_agenda.yaml +++ b/source/blueprints/integrations/conversation_notify_agent_agenda.yaml @@ -96,7 +96,7 @@ action: calendar_duration: !input calendar_duration prompt: !input prompt - alias: Fetch Weather Forecast - service: weather.get_forecasts + action: weather.get_forecasts data: type: hourly target: @@ -107,14 +107,14 @@ action: forecast_entity: "{{ daily_forecast[weather_entity] }}" forecast: "{{ forecast_entity.forecast[0] }}" - alias: Fetch Calendar Agenda - service: calendar.get_events + action: calendar.get_events data: duration: !input calendar_duration target: entity_id: !input calendar_entity response_variable: events_response - alias: "Conversation Agent Notification Text" - service: conversation.process + action: conversation.process data: text: |- Time: {{ now().strftime("%A %B %d %H:%M %p") }} @@ -144,7 +144,7 @@ action: agent_id: !input conversation_agent response_variable: agent - alias: "Send notification" - service: !input notify_service + action: !input notify_service data: target: !input notify_target title: "{{ now().strftime('%A') }} Agenda"