Migrate integration services (N-P) to support translations (#96376)

This commit is contained in:
Franck Nijhof 2023-07-12 00:33:37 +02:00 committed by GitHub
parent 0329378f2f
commit 90d839724c
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
48 changed files with 828 additions and 372 deletions

View File

@ -1,14 +1,10 @@
custom_cleaning:
name: Zone Cleaning service
description: Zone Cleaning service call specific to Neato Botvacs.
target:
entity:
integration: neato
domain: vacuum
fields:
mode:
name: Set cleaning mode
description: "Set the cleaning mode: 1 for eco and 2 for turbo. Defaults to turbo if not set."
default: 2
selector:
number:
@ -16,8 +12,6 @@ custom_cleaning:
max: 2
mode: box
navigation:
name: Set navigation mode
description: "Set the navigation mode: 1 for normal, 2 for extra care, 3 for deep. Defaults to normal if not set."
default: 1
selector:
number:
@ -25,8 +19,6 @@ custom_cleaning:
max: 3
mode: box
category:
name: Use cleaning map
description: "Whether to use a persistent map or not for cleaning (i.e. No go lines): 2 for no map, 4 for map. Default to using map if not set (and fallback to no map if no map is found)."
default: 4
selector:
number:
@ -35,8 +27,6 @@ custom_cleaning:
step: 2
mode: box
zone:
name: Name of the zone to clean (Only Botvac D7)
description: Only supported on the Botvac D7. Name of the zone to clean. Defaults to no zone i.e. complete house cleanup.
example: "Kitchen"
selector:
text:

View File

@ -18,5 +18,29 @@
"create_entry": {
"default": "[%key:common::config_flow::create_entry::authenticated%]"
}
},
"services": {
"custom_cleaning": {
"name": "Zone cleaning service",
"description": "Zone cleaning service call specific to Neato Botvacs.",
"fields": {
"mode": {
"name": "Set cleaning mode",
"description": "Set the cleaning mode: 1 for eco and 2 for turbo. Defaults to turbo if not set."
},
"navigation": {
"name": "Set navigation mode",
"description": "Set the navigation mode: 1 for normal, 2 for extra care, 3 for deep. Defaults to normal if not set."
},
"category": {
"name": "Use cleaning map",
"description": "Whether to use a persistent map or not for cleaning (i.e. No go lines): 2 for no map, 4 for map. Default to using map if not set (and fallback to no map if no map is found)."
},
"zone": {
"name": "Name of the zone to clean (Only Botvac D7)",
"description": "Only supported on the Botvac D7. Name of the zone to clean. Defaults to no zone i.e. complete house cleanup."
}
}
}
}
}

View File

@ -1,31 +1,21 @@
# Describes the format for available ness alarm services
aux:
name: Aux
description: Trigger an aux output.
fields:
output_id:
name: Output ID
description: The aux output you wish to change.
required: true
selector:
number:
min: 1
max: 4
state:
name: State
description: The On/Off State. If P14xE 8E is enabled then a value of true will pulse output x for the time specified in P14(x+4)E.
default: true
selector:
boolean:
panic:
name: Panic
description: Trigger a panic
fields:
code:
name: Code
description: The user code to use to trigger the panic.
required: true
example: 1234
selector:

View File

@ -0,0 +1,28 @@
{
"services": {
"aux": {
"name": "Aux",
"description": "Trigger an aux output.",
"fields": {
"output_id": {
"name": "Output ID",
"description": "The aux output you wish to change."
},
"state": {
"name": "State",
"description": "The On/Off State. If P14xE 8E is enabled then a value of true will pulse output x for the time specified in P14(x+4)E."
}
}
},
"panic": {
"name": "Panic",
"description": "Triggers a panic.",
"fields": {
"code": {
"name": "Code",
"description": "The user code to use to trigger the panic."
}
}
}
}
}

View File

@ -1,12 +1,8 @@
# Describes the format for available Nest services
set_away_mode:
name: Set away mode
description: Set the away mode for a Nest structure.
fields:
away_mode:
name: Away mode
description: New mode to set.
required: true
selector:
select:
@ -14,55 +10,37 @@ set_away_mode:
- "away"
- "home"
structure:
name: Structure
description: Name(s) of structure(s) to change. Defaults to all structures if not specified.
example: "Apartment"
selector:
object:
set_eta:
name: Set estimated time of arrival
description: Set or update the estimated time of arrival window for a Nest structure.
fields:
eta:
name: ETA
description: Estimated time of arrival from now.
required: true
selector:
time:
eta_window:
name: ETA window
description: Estimated time of arrival window.
default: "00:01"
selector:
time:
trip_id:
name: Trip ID
description: Unique ID for the trip. Default is auto-generated using a timestamp.
example: "Leave Work"
selector:
text:
structure:
name: Structure
description: Name(s) of structure(s) to change. Defaults to all structures if not specified.
example: "Apartment"
selector:
object:
cancel_eta:
name: Cancel ETA
description: Cancel an existing estimated time of arrival window for a Nest structure.
fields:
trip_id:
name: Trip ID
description: Unique ID for the trip.
required: true
example: "Leave Work"
selector:
text:
structure:
name: Structure
description: Name(s) of structure(s) to change. Defaults to all structures if not specified.
example: "Apartment"
selector:
object:

View File

@ -68,5 +68,57 @@
"title": "Legacy Works With Nest has been removed",
"description": "Legacy Works With Nest has been removed from Home Assistant, and the API shuts down as of September 2023.\n\nYou must take action to use the SDM API. Remove all `nest` configuration from `configuration.yaml` and restart Home Assistant, then see the Nest [integration instructions]({documentation_url}) for set up instructions and supported devices."
}
},
"services": {
"set_away_mode": {
"name": "Set away mode",
"description": "Sets the away mode for a Nest structure.",
"fields": {
"away_mode": {
"name": "Away mode",
"description": "New mode to set."
},
"structure": {
"name": "Structure",
"description": "Name(s) of structure(s) to change. Defaults to all structures if not specified."
}
}
},
"set_eta": {
"name": "Set estimated time of arrival",
"description": "Sets or update the estimated time of arrival window for a Nest structure.",
"fields": {
"eta": {
"name": "ETA",
"description": "Estimated time of arrival from now."
},
"eta_window": {
"name": "ETA window",
"description": "Estimated time of arrival window."
},
"trip_id": {
"name": "Trip ID",
"description": "Unique ID for the trip. Default is auto-generated using a timestamp."
},
"structure": {
"name": "Structure",
"description": "Name(s) of structure(s) to change. Defaults to all structures if not specified."
}
}
},
"cancel_eta": {
"name": "Cancel ETA",
"description": "Cancels an existing estimated time of arrival window for a Nest structure.",
"fields": {
"trip_id": {
"name": "Trip ID",
"description": "Unique ID for the trip."
},
"structure": {
"name": "Structure",
"description": "Name(s) of structure(s) to change. Defaults to all structures if not specified."
}
}
}
}
}

View File

@ -1,15 +1,11 @@
# Describes the format for available Netatmo services
set_camera_light:
name: Set camera light mode
description: Sets the light mode for a Netatmo Outdoor camera light.
target:
entity:
integration: netatmo
domain: light
fields:
camera_light_mode:
name: Camera light mode
description: Outdoor camera light mode.
required: true
selector:
select:
@ -19,60 +15,39 @@ set_camera_light:
- "auto"
set_schedule:
name: Set heating schedule
description:
Set the heating schedule for Netatmo climate device. The schedule name must
match a schedule configured at Netatmo.
target:
entity:
integration: netatmo
domain: climate
fields:
schedule_name:
description: Schedule name
example: Standard
required: true
selector:
text:
set_persons_home:
name: Set persons at home
description:
Set a list of persons as at home. Person's name must match a name known by
the Netatmo Indoor (Welcome) Camera.
target:
entity:
integration: netatmo
domain: camera
fields:
persons:
description: List of names
example: "[Alice, Bob]"
required: true
selector:
object:
set_person_away:
name: Set person away
description:
Set a person as away. If no person is set the home will be marked as empty.
Person's name must match a name known by the Netatmo Indoor (Welcome)
Camera.
target:
entity:
integration: netatmo
domain: camera
fields:
person:
description: Person's name.
example: Bob
selector:
text:
register_webhook:
name: Register webhook
description: Register the webhook to the Netatmo backend.
unregister_webhook:
name: Unregister webhook
description: Unregister the webhook from the Netatmo backend.

View File

@ -66,5 +66,55 @@
"cancel_set_point": "{entity_name} has resumed its schedule",
"therm_mode": "{entity_name} switched to \"{subtype}\""
}
},
"services": {
"set_camera_light": {
"name": "Set camera light mode",
"description": "Sets the light mode for a Netatmo Outdoor camera light.",
"fields": {
"camera_light_mode": {
"name": "Camera light mode",
"description": "Outdoor camera light mode."
}
}
},
"set_schedule": {
"name": "Set heating schedule",
"description": "Sets the heating schedule for Netatmo climate device. The schedule name must match a schedule configured at Netatmo.",
"fields": {
"schedule_name": {
"name": "Schedule",
"description": "Schedule name."
}
}
},
"set_persons_home": {
"name": "Set persons at home",
"description": "Sets a list of persons as at home. Person's name must match a name known by the Netatmo Indoor (Welcome) Camera.",
"fields": {
"persons": {
"name": "Persons",
"description": "List of names."
}
}
},
"set_person_away": {
"name": "Set person away",
"description": "Sets a person as away. If no person is set the home will be marked as empty. Person's name must match a name known by the Netatmo Indoor (Welcome) Camera.",
"fields": {
"person": {
"name": "Person",
"description": "Person's name."
}
}
},
"register_webhook": {
"name": "Register webhook",
"description": "Registers the webhook to the Netatmo backend."
},
"unregister_webhook": {
"name": "Unregister webhook",
"description": "Unregisters the webhook from the Netatmo backend."
}
}
}

View File

@ -1,34 +1,22 @@
delete_sms:
name: Delete SMS
description: Delete messages from the modem inbox.
fields:
host:
name: Host
description: The modem that should have a message deleted.
example: 192.168.5.1
selector:
text:
sms_id:
name: SMS ID
description: Integer or list of integers with inbox IDs of messages to delete.
required: true
example: 7
selector:
object:
set_option:
name: Set option
description: Set options on the modem.
fields:
host:
name: Host
description: The modem to set options on.
example: 192.168.5.1
selector:
text:
failover:
name: Failover
description: Failover mode.
selector:
select:
options:
@ -36,8 +24,6 @@ set_option:
- "mobile"
- "wire"
autoconnect:
name: Auto-connect
description: Auto-connect mode.
selector:
select:
options:
@ -46,22 +32,15 @@ set_option:
- "never"
connect_lte:
name: Connect LTE
description: Ask the modem to establish the LTE connection.
fields:
host:
name: Host
description: The modem that should connect.
example: 192.168.5.1
selector:
text:
disconnect_lte:
name: Disconnect LTE
description: Ask the modem to close the LTE connection.
fields:
host:
description: The modem that should disconnect.
example: 192.168.5.1
selector:
text:

View File

@ -0,0 +1,57 @@
{
"services": {
"delete_sms": {
"name": "Delete SMS",
"description": "Deletes messages from the modem inbox.",
"fields": {
"host": {
"name": "Host",
"description": "The modem that should have a message deleted."
},
"sms_id": {
"name": "SMS ID",
"description": "Integer or list of integers with inbox IDs of messages to delete."
}
}
},
"set_option": {
"name": "Set option",
"description": "Sets options on the modem.",
"fields": {
"host": {
"name": "Host",
"description": "The modem to set options on."
},
"failover": {
"name": "Failover",
"description": "Failover mode."
},
"autoconnect": {
"name": "Auto-connect",
"description": "Auto-connect mode."
}
}
},
"connect_lte": {
"name": "Connect LTE",
"description": "Asks the modem to establish the LTE connection.",
"fields": {
"host": {
"name": "Host",
"description": "The modem that should connect."
}
}
},
"disconnect_lte": {
"name": "Disconnect LTE",
"description": "Asks the modem to close the LTE connection.",
"fields": {
"host": {
"name": "Host",
"description": "The modem that should disconnect."
}
}
}
},
"selector": {}
}

View File

@ -1,14 +1,10 @@
set_aircleaner_mode:
name: Set air cleaner mode
description: "The air cleaner mode."
target:
entity:
integration: nexia
domain: climate
fields:
aircleaner_mode:
name: Air cleaner mode
description: "The air cleaner mode to set."
required: true
selector:
select:
@ -18,16 +14,12 @@ set_aircleaner_mode:
- "quick"
set_humidify_setpoint:
name: Set humidify set point
description: "The humidification set point."
target:
entity:
integration: nexia
domain: climate
fields:
humidity:
name: Humidify
description: "The humidification setpoint."
required: true
selector:
number:
@ -36,16 +28,12 @@ set_humidify_setpoint:
unit_of_measurement: "%"
set_hvac_run_mode:
name: Set hvac run mode
description: "The hvac run mode."
target:
entity:
integration: nexia
domain: climate
fields:
run_mode:
name: Run mode
description: "Run the schedule or hold. If not specified, the current run mode will be used."
required: false
selector:
select:
@ -53,8 +41,6 @@ set_hvac_run_mode:
- "permanent_hold"
- "run_schedule"
hvac_mode:
name: Hvac mode
description: "The hvac mode to use for the schedule or hold. If not specified, the current hvac mode will be used."
required: false
selector:
select:

View File

@ -17,5 +17,41 @@
"abort": {
"already_configured": "[%key:common::config_flow::abort::already_configured_device%]"
}
},
"services": {
"set_aircleaner_mode": {
"name": "Set air cleaner mode",
"description": "The air cleaner mode.",
"fields": {
"aircleaner_mode": {
"name": "Air cleaner mode",
"description": "The air cleaner mode to set."
}
}
},
"set_humidify_setpoint": {
"name": "Set humidify set point",
"description": "The humidification set point.",
"fields": {
"humidity": {
"name": "Humidify",
"description": "The humidification setpoint."
}
}
},
"set_hvac_run_mode": {
"name": "Set hvac run mode",
"description": "The HVAC run mode.",
"fields": {
"run_mode": {
"name": "Run mode",
"description": "Run the schedule or hold. If not specified, the current run mode will be used."
},
"hvac_mode": {
"name": "HVAC mode",
"description": "The HVAC mode to use for the schedule or hold. If not specified, the current HVAC mode will be used."
}
}
}
}
}

View File

@ -1,29 +1,16 @@
# Describes the format for available services for nissan_leaf
start_charge:
name: Start charge
description: >
Start the vehicle charging. It must be plugged in first!
fields:
vin:
name: VIN
description: >
The vehicle identification number (VIN) of the vehicle, 17 characters
required: true
example: WBANXXXXXX1234567
selector:
text:
update:
name: Update
description: >
Fetch the last state of the vehicle of all your accounts, requesting
an update from of the state from the car if possible.
fields:
vin:
name: VIN
description: >
The vehicle identification number (VIN) of the vehicle, 17 characters
required: true
example: WBANXXXXXX1234567
selector:

View File

@ -0,0 +1,24 @@
{
"services": {
"start_charge": {
"name": "Start charge",
"description": "Starts the vehicle charging. It must be plugged in first!\n.",
"fields": {
"vin": {
"name": "VIN",
"description": "The vehicle identification number (VIN) of the vehicle, 17 characters\n."
}
}
},
"update": {
"name": "Update",
"description": "Fetches the last state of the vehicle of all your accounts, requesting an update from of the state from the car if possible.\n.",
"fields": {
"vin": {
"name": "VIN",
"description": "The vehicle identification number (VIN) of the vehicle, 17 characters\n."
}
}
}
}
}

View File

@ -1,28 +1,20 @@
lock_n_go:
name: Lock 'n' go
description: "Nuki Lock 'n' Go"
target:
entity:
integration: nuki
domain: lock
fields:
unlatch:
name: Unlatch
description: Whether to unlatch the lock.
default: false
selector:
boolean:
set_continuous_mode:
name: Set Continuous Mode
description: "Enable or disable Continuous Mode on Nuki Opener"
target:
entity:
integration: nuki
domain: lock
fields:
enable:
name: Enable
description: Whether to enable or disable the feature
default: false
selector:
boolean:

View File

@ -45,5 +45,27 @@
}
}
}
},
"services": {
"lock_n_go": {
"name": "Lock 'n' go",
"description": "Nuki Lock 'n' Go.",
"fields": {
"unlatch": {
"name": "Unlatch",
"description": "Whether to unlatch the lock."
}
}
},
"set_continuous_mode": {
"name": "Set continuous code",
"description": "Enables or disables continuous mode on Nuki Opener.",
"fields": {
"enable": {
"name": "Enable",
"description": "Whether to enable or disable the feature."
}
}
}
}
}

View File

@ -1,16 +1,12 @@
# Describes the format for available nx584 services
bypass_zone:
name: Bypass zone
description: Bypass a zone.
target:
entity:
integration: nx584
domain: alarm_control_panel
fields:
zone:
name: Zone
description: The number of the zone to be bypassed.
required: true
selector:
number:
@ -18,16 +14,12 @@ bypass_zone:
max: 255
unbypass_zone:
name: Un-bypass zone
description: Un-Bypass a zone.
target:
entity:
integration: nx584
domain: alarm_control_panel
fields:
zone:
name: Zone
description: The number of the zone to be un-bypassed.
required: true
selector:
number:

View File

@ -0,0 +1,24 @@
{
"services": {
"bypass_zone": {
"name": "Bypass zone",
"description": "Bypasses a zone.",
"fields": {
"zone": {
"name": "Zone",
"description": "The number of the zone to be bypassed."
}
}
},
"unbypass_zone": {
"name": "Un-bypass zone",
"description": "Un-Bypasses a zone.",
"fields": {
"zone": {
"name": "Zone",
"description": "The number of the zone to be un-bypassed."
}
}
}
}
}

View File

@ -1,20 +1,10 @@
# Describes the format for available nzbget services
pause:
name: Pause
description: Pause download queue.
resume:
name: Resume
description: Resume download queue.
set_speed:
name: Set speed
description: Set download speed limit
fields:
speed:
name: Speed
description: Speed limit. 0 is unlimited.
default: 1000
selector:
number:

View File

@ -31,5 +31,25 @@
}
}
}
},
"services": {
"pause": {
"name": "Pause",
"description": "Pauses download queue."
},
"resume": {
"name": "Resume",
"description": "Resumes download queue."
},
"set_speed": {
"name": "Set speed",
"description": "Sets download speed limit.",
"fields": {
"speed": {
"name": "Speed",
"description": "Speed limit. 0 is unlimited."
}
}
}
}
}

View File

@ -1,30 +1,20 @@
# Ombi services.yaml entries
submit_movie_request:
name: Sumbit movie request
description: Searches for a movie and requests the first result.
fields:
name:
name: Name
description: Search parameter
required: true
example: "beverly hills cop"
selector:
text:
submit_tv_request:
name: Submit tv request
description: Searches for a TV show and requests the first result.
fields:
name:
name: Name
description: Search parameter
required: true
example: "breaking bad"
selector:
text:
season:
name: Season
description: Which season(s) to request.
default: latest
selector:
select:
@ -34,12 +24,8 @@ submit_tv_request:
- "latest"
submit_music_request:
name: Submit music request
description: Searches for a music album and requests the first result.
fields:
name:
name: Name
description: Search parameter
required: true
example: "nevermind"
selector:

View File

@ -0,0 +1,38 @@
{
"services": {
"submit_movie_request": {
"name": "Sumbit movie request",
"description": "Searches for a movie and requests the first result.",
"fields": {
"name": {
"name": "Name",
"description": "Search parameter."
}
}
},
"submit_tv_request": {
"name": "Submit TV request",
"description": "Searches for a TV show and requests the first result.",
"fields": {
"name": {
"name": "Name",
"description": "Search parameter."
},
"season": {
"name": "Season",
"description": "Which season(s) to request."
}
}
},
"submit_music_request": {
"name": "Submit music request",
"description": "Searches for a music album and requests the first result.",
"fields": {
"name": {
"name": "Name",
"description": "Search parameter."
}
}
}
}
}

View File

@ -1,14 +1,10 @@
set_pump_speed:
name: Set pump speed
description: Set the run speed of a variable speed pump.
target:
entity:
integration: omnilogic
domain: switch
fields:
speed:
name: Speed
description: Speed for the VSP between min and max speed.
required: true
selector:
number:

View File

@ -27,5 +27,17 @@
}
}
}
},
"services": {
"set_pump_speed": {
"name": "Set pump speed",
"description": "Sets the run speed of a variable speed pump.",
"fields": {
"speed": {
"name": "Speed",
"description": "Speed for the VSP between min and max speed."
}
}
}
}
}

View File

@ -1,38 +1,28 @@
ptz:
name: PTZ
description: If your ONVIF camera supports PTZ, you will be able to pan, tilt or zoom your camera.
target:
entity:
integration: onvif
domain: camera
fields:
tilt:
name: Tilt
description: "Tilt direction."
selector:
select:
options:
- "DOWN"
- "UP"
pan:
name: Pan
description: "Pan direction."
selector:
select:
options:
- "LEFT"
- "RIGHT"
zoom:
name: Zoom
description: "Zoom."
selector:
select:
options:
- "ZOOM_IN"
- "ZOOM_OUT"
distance:
name: Distance
description: "Distance coefficient. Sets how much PTZ should be executed in one request."
default: 0.1
selector:
number:
@ -40,8 +30,6 @@ ptz:
max: 1
step: 0.01
speed:
name: Speed
description: "Speed coefficient. Sets how fast PTZ will be executed."
default: 0.5
selector:
number:
@ -49,8 +37,6 @@ ptz:
max: 1
step: 0.01
continuous_duration:
name: Continuous duration
description: "Set ContinuousMove delay in seconds before stopping the move"
default: 0.5
selector:
number:
@ -58,15 +44,11 @@ ptz:
max: 1
step: 0.01
preset:
name: Preset
description: "PTZ preset profile token. Sets the preset profile token which is executed with GotoPreset"
example: "1"
default: "0"
selector:
text:
move_mode:
name: Move Mode
description: "PTZ moving mode."
default: "RelativeMove"
selector:
select:

View File

@ -67,5 +67,45 @@
"title": "ONVIF Device Options"
}
}
},
"services": {
"ptz": {
"name": "PTZ",
"description": "If your ONVIF camera supports PTZ, you will be able to pan, tilt or zoom your camera.",
"fields": {
"tilt": {
"name": "Tilt",
"description": "Tilt direction."
},
"pan": {
"name": "Pan",
"description": "Pan direction."
},
"zoom": {
"name": "Zoom",
"description": "Zoom."
},
"distance": {
"name": "Distance",
"description": "Distance coefficient. Sets how much PTZ should be executed in one request."
},
"speed": {
"name": "Speed",
"description": "Speed coefficient. Sets how fast PTZ will be executed."
},
"continuous_duration": {
"name": "Continuous duration",
"description": "Set ContinuousMove delay in seconds before stopping the move."
},
"preset": {
"name": "Preset",
"description": "PTZ preset profile token. Sets the preset profile token which is executed with GotoPreset."
},
"move_mode": {
"name": "Move Mode",
"description": "PTZ moving mode."
}
}
}
}
}

View File

@ -1,16 +1,12 @@
# Describes the format for available openhome services
invoke_pin:
name: Invoke PIN
description: Invoke a pin on the specified device.
target:
entity:
integration: openhome
domain: media_player
fields:
pin:
name: PIN
description: Which pin to invoke
required: true
selector:
number:

View File

@ -0,0 +1,14 @@
{
"services": {
"invoke_pin": {
"name": "Invoke PIN",
"description": "Invokes a pin on the specified device.",
"fields": {
"pin": {
"name": "PIN",
"description": "Which pin to invoke."
}
}
}
}
}

View File

@ -1,84 +1,49 @@
# Describes the format for available opentherm_gw services
reset_gateway:
name: Reset gateway
description: Reset the OpenTherm Gateway.
fields:
gateway_id:
name: Gateway ID
description: The gateway_id of the OpenTherm Gateway.
required: true
example: "opentherm_gateway"
selector:
text:
set_central_heating_ovrd:
name: Set central heating override
description: >
Set the central heating override option on the gateway.
When overriding the control setpoint (via a set_control_setpoint service call with a value other than 0), the gateway automatically enables the central heating override to start heating.
This service can then be used to control the central heating override status.
To return control of the central heating to the thermostat, call the set_control_setpoint service with temperature value 0.
You will only need this if you are writing your own software thermostat.
fields:
gateway_id:
name: Gateway ID
description: The gateway_id of the OpenTherm Gateway.
required: true
example: "opentherm_gateway"
selector:
text:
ch_override:
name: Central heating override
description: >
The desired boolean value for the central heating override.
required: true
selector:
boolean:
set_clock:
name: Set clock
description: Set the clock and day of the week on the connected thermostat.
fields:
gateway_id:
name: Gateway ID
description: The gateway_id of the OpenTherm Gateway.
required: true
example: "opentherm_gateway"
selector:
text:
date:
name: Date
description: Optional date from which the day of the week will be extracted. Defaults to today.
example: "2018-10-23"
selector:
text:
time:
name: Time
description: Optional time in 24h format which will be provided to the thermostat. Defaults to the current time.
example: "19:34"
selector:
text:
set_control_setpoint:
name: Set control set point
description: >
Set the central heating control setpoint override on the gateway.
You will only need this if you are writing your own software thermostat.
fields:
gateway_id:
name: Gateway ID
description: The gateway_id of the OpenTherm Gateway.
required: true
example: "opentherm_gateway"
selector:
text:
temperature:
name: Temperature
description: >
The central heating setpoint to set on the gateway.
Values between 0 and 90 are accepted, but not all boilers support this range.
A value of 0 disables the central heating setpoint override.
required: true
selector:
number:
@ -88,49 +53,26 @@ set_control_setpoint:
unit_of_measurement: "°"
set_hot_water_ovrd:
name: Set hot water override
description: >
Set the domestic hot water enable option on the gateway.
fields:
gateway_id:
name: Gateway ID
description: The gateway_id of the OpenTherm Gateway.
required: true
example: "opentherm_gateway"
selector:
text:
dhw_override:
name: Domestic hot water override
description: >
Control the domestic hot water enable option. If the boiler has
been configured to let the room unit control when to keep a
small amount of water preheated, this command can influence
that.
Value should be 0 or 1 to enable the override in off or on
state, or "A" to disable the override.
required: true
example: "1"
selector:
text:
set_hot_water_setpoint:
name: Set hot water set point
description: >
Set the domestic hot water setpoint on the gateway.
fields:
gateway_id:
name: Gateway ID
description: The gateway_id of the OpenTherm Gateway.
required: true
example: "opentherm_gateway"
selector:
text:
temperature:
name: Temperature
description: >
The domestic hot water setpoint to set on the gateway. Not all boilers support this feature.
Values between 0 and 90 are accepted, but not all boilers support this range.
Check the values of the slave_dhw_min_setp and slave_dhw_max_setp sensors to see the supported range on your boiler.
selector:
number:
min: 0
@ -139,19 +81,13 @@ set_hot_water_setpoint:
unit_of_measurement: "°"
set_gpio_mode:
name: Set gpio mode
description: Change the function of the GPIO pins of the gateway.
fields:
gateway_id:
name: Gateway ID
description: The gateway_id of the OpenTherm Gateway.
required: true
example: "opentherm_gateway"
selector:
text:
id:
name: ID
description: The ID of the GPIO pin.
required: true
selector:
select:
@ -159,10 +95,6 @@ set_gpio_mode:
- "A"
- "B"
mode:
name: Mode
description: >
Mode to set on the GPIO pin. Values 0 through 6 are accepted for both GPIOs, 7 is only accepted for GPIO "B".
See https://www.home-assistant.io/integrations/opentherm_gw/#gpio-modes for an explanation of the values.
required: true
selector:
number:
@ -170,19 +102,13 @@ set_gpio_mode:
max: 7
set_led_mode:
name: Set LED mode
description: Change the function of the LEDs of the gateway.
fields:
gateway_id:
name: Gateway ID
description: The gateway_id of the OpenTherm Gateway.
required: true
example: "opentherm_gateway"
selector:
text:
id:
name: ID
description: The ID of the LED.
required: true
selector:
select:
@ -194,10 +120,6 @@ set_led_mode:
- "E"
- "F"
mode:
name: Mode
description: >
The function to assign to the LED.
See https://www.home-assistant.io/integrations/opentherm_gw/#led-modes for an explanation of the values.
required: true
selector:
select:
@ -216,23 +138,13 @@ set_led_mode:
- "X"
set_max_modulation:
name: Set max modulation
description: >
Override the maximum relative modulation level.
You will only need this if you are writing your own software thermostat.
fields:
gateway_id:
name: Gateway ID
description: The gateway_id of the OpenTherm Gateway.
required: true
example: "opentherm_gateway"
selector:
text:
level:
name: Level
description: >
The modulation level to provide to the gateway.
Provide a value of -1 to clear the override and forward the value from the thermostat again.
required: true
selector:
number:
@ -240,24 +152,13 @@ set_max_modulation:
max: 100
set_outside_temperature:
name: Set outside temperature
description: >
Provide an outside temperature to the thermostat.
If your thermostat is unable to display an outside temperature and does not support OTC (Outside Temperature Correction), this has no effect.
fields:
gateway_id:
name: Gateway ID
description: The gateway_id of the OpenTherm Gateway.
required: true
example: "opentherm_gateway"
selector:
text:
temperature:
name: Temperature
description: >
The temperature to provide to the thermostat.
Values between -40.0 and 64.0 will be accepted, but not all thermostats can display the full range.
Any value above 64.0 will clear a previously configured value (suggestion: 99)
required: true
selector:
number:
@ -266,19 +167,13 @@ set_outside_temperature:
unit_of_measurement: "°"
set_setback_temperature:
name: Set setback temperature
description: Configure the setback temperature to be used with the GPIO away mode function.
fields:
gateway_id:
name: Gateway ID
description: The gateway_id of the OpenTherm Gateway.
required: true
example: "opentherm_gateway"
selector:
text:
temperature:
name: Temperature
description: The setback temperature to configure on the gateway.
required: true
selector:
number:

View File

@ -27,5 +27,169 @@
}
}
}
},
"services": {
"reset_gateway": {
"name": "Reset gateway",
"description": "Resets the OpenTherm Gateway.",
"fields": {
"gateway_id": {
"name": "Gateway ID",
"description": "The gateway_id of the OpenTherm Gateway."
}
}
},
"set_central_heating_ovrd": {
"name": "Set central heating override",
"description": "Sets the central heating override option on the gateway. When overriding the control setpoint (via a set_control_setpoint service call with a value other than 0), the gateway automatically enables the central heating override to start heating. This service can then be used to control the central heating override status. To return control of the central heating to the thermostat, call the set_control_setpoint service with temperature value 0. You will only need this if you are writing your own software thermostat.\n.",
"fields": {
"gateway_id": {
"name": "Gateway ID",
"description": "The gateway_id of the OpenTherm Gateway."
},
"ch_override": {
"name": "Central heating override",
"description": "The desired boolean value for the central heating override."
}
}
},
"set_clock": {
"name": "Set clock",
"description": "Sets the clock and day of the week on the connected thermostat.",
"fields": {
"gateway_id": {
"name": "Gateway ID",
"description": "The gateway_id of the OpenTherm Gateway."
},
"date": {
"name": "Date",
"description": "Optional date from which the day of the week will be extracted. Defaults to today."
},
"time": {
"name": "Time",
"description": "Optional time in 24h format which will be provided to the thermostat. Defaults to the current time."
}
}
},
"set_control_setpoint": {
"name": "Set control set point",
"description": "Sets the central heating control setpoint override on the gateway. You will only need this if you are writing your own software thermostat.\n.",
"fields": {
"gateway_id": {
"name": "Gateway ID",
"description": "The gateway_id of the OpenTherm Gateway."
},
"temperature": {
"name": "Temperature",
"description": "The central heating setpoint to set on the gateway. Values between 0 and 90 are accepted, but not all boilers support this range. A value of 0 disables the central heating setpoint override.\n."
}
}
},
"set_hot_water_ovrd": {
"name": "Set hot water override",
"description": "Sets the domestic hot water enable option on the gateway.",
"fields": {
"gateway_id": {
"name": "Gateway ID",
"description": "The gateway_id of the OpenTherm Gateway."
},
"dhw_override": {
"name": "Domestic hot water override",
"description": "Control the domestic hot water enable option. If the boiler has been configured to let the room unit control when to keep a small amount of water preheated, this command can influence that. Value should be 0 or 1 to enable the override in off or on state, or \"A\" to disable the override.\n."
}
}
},
"set_hot_water_setpoint": {
"name": "Set hot water set point",
"description": "Sets the domestic hot water setpoint on the gateway.",
"fields": {
"gateway_id": {
"name": "Gateway ID",
"description": "The gateway_id of the OpenTherm Gateway."
},
"temperature": {
"name": "Temperature",
"description": "The domestic hot water setpoint to set on the gateway. Not all boilers support this feature. Values between 0 and 90 are accepted, but not all boilers support this range. Check the values of the slave_dhw_min_setp and slave_dhw_max_setp sensors to see the supported range on your boiler.\n."
}
}
},
"set_gpio_mode": {
"name": "Set gpio mode",
"description": "Changes the function of the GPIO pins of the gateway.",
"fields": {
"gateway_id": {
"name": "Gateway ID",
"description": "The gateway_id of the OpenTherm Gateway."
},
"id": {
"name": "ID",
"description": "The ID of the GPIO pin."
},
"mode": {
"name": "Mode",
"description": "Mode to set on the GPIO pin. Values 0 through 6 are accepted for both GPIOs, 7 is only accepted for GPIO \"B\". See https://www.home-assistant.io/integrations/opentherm_gw/#gpio-modes for an explanation of the values.\n."
}
}
},
"set_led_mode": {
"name": "Set LED mode",
"description": "Changes the function of the LEDs of the gateway.",
"fields": {
"gateway_id": {
"name": "Gateway ID",
"description": "The gateway_id of the OpenTherm Gateway."
},
"id": {
"name": "ID",
"description": "The ID of the LED."
},
"mode": {
"name": "Mode",
"description": "The function to assign to the LED. See https://www.home-assistant.io/integrations/opentherm_gw/#led-modes for an explanation of the values.\n."
}
}
},
"set_max_modulation": {
"name": "Set max modulation",
"description": "Overrides the maximum relative modulation level. You will only need this if you are writing your own software thermostat.\n.",
"fields": {
"gateway_id": {
"name": "Gateway ID",
"description": "The gateway_id of the OpenTherm Gateway."
},
"level": {
"name": "Level",
"description": "The modulation level to provide to the gateway. Provide a value of -1 to clear the override and forward the value from the thermostat again.\n."
}
}
},
"set_outside_temperature": {
"name": "Set outside temperature",
"description": "Provides an outside temperature to the thermostat. If your thermostat is unable to display an outside temperature and does not support OTC (Outside Temperature Correction), this has no effect.\n.",
"fields": {
"gateway_id": {
"name": "Gateway ID",
"description": "The gateway_id of the OpenTherm Gateway."
},
"temperature": {
"name": "Temperature",
"description": "The temperature to provide to the thermostat. Values between -40.0 and 64.0 will be accepted, but not all thermostats can display the full range. Any value above 64.0 will clear a previously configured value (suggestion: 99)\n."
}
}
},
"set_setback_temperature": {
"name": "Set setback temperature",
"description": "Configures the setback temperature to be used with the GPIO away mode function.",
"fields": {
"gateway_id": {
"name": "Gateway ID",
"description": "The gateway_id of the OpenTherm Gateway."
},
"temperature": {
"name": "Temperature",
"description": "The setback temperature to configure on the gateway."
}
}
}
}
}

View File

@ -1,14 +1,10 @@
disable:
name: Disable
description: Disable configured Pi-hole(s) for an amount of time
target:
entity:
integration: pi_hole
domain: switch
fields:
duration:
name: Duration
description: Time that the Pi-hole should be disabled for
required: true
example: "00:00:15"
selector:

View File

@ -35,23 +35,61 @@
},
"entity": {
"binary_sensor": {
"status": { "name": "Status" }
"status": {
"name": "Status"
}
},
"sensor": {
"ads_blocked_today": { "name": "Ads blocked today" },
"ads_percentage_today": { "name": "Ads percentage blocked today" },
"clients_ever_seen": { "name": "Seen clients" },
"dns_queries_today": { "name": "DNS queries today" },
"domains_being_blocked": { "name": "Domains blocked" },
"queries_cached": { "name": "DNS queries cached" },
"queries_forwarded": { "name": "DNS queries forwarded" },
"unique_clients": { "name": "DNS unique clients" },
"unique_domains": { "name": "DNS unique domains" }
"ads_blocked_today": {
"name": "Ads blocked today"
},
"ads_percentage_today": {
"name": "Ads percentage blocked today"
},
"clients_ever_seen": {
"name": "Seen clients"
},
"dns_queries_today": {
"name": "DNS queries today"
},
"domains_being_blocked": {
"name": "Domains blocked"
},
"queries_cached": {
"name": "DNS queries cached"
},
"queries_forwarded": {
"name": "DNS queries forwarded"
},
"unique_clients": {
"name": "DNS unique clients"
},
"unique_domains": {
"name": "DNS unique domains"
}
},
"update": {
"core_update_available": { "name": "Core update available" },
"ftl_update_available": { "name": "FTL update available" },
"web_update_available": { "name": "Web update available" }
"core_update_available": {
"name": "Core update available"
},
"ftl_update_available": {
"name": "FTL update available"
},
"web_update_available": {
"name": "Web update available"
}
}
},
"services": {
"disable": {
"name": "Disable",
"description": "Disables configured Pi-hole(s) for an amount of time.",
"fields": {
"duration": {
"name": "Duration",
"description": "Time that the Pi-hole should be disabled for."
}
}
}
}
}

View File

@ -1,34 +1,21 @@
add_product:
name: Add a product to the cart
description: >-
Adds a product to the cart based on a search string or product ID.
The search string and product ID are exclusive.
fields:
config_entry_id:
name: Picnic service
description: The product will be added to the selected service.
required: true
selector:
config_entry:
integration: picnic
product_id:
name: Product ID
description: The product ID of a Picnic product.
required: false
example: "10510201"
selector:
text:
product_name:
name: Product name
description: Search for a product and add the first result
required: false
example: "Yoghurt"
selector:
text:
amount:
name: Amount
description: Amount to add of the selected product
required: false
default: 1
selector:

View File

@ -71,5 +71,29 @@
"name": "End of next delivery's slot"
}
}
},
"services": {
"add_product": {
"name": "Add a product to the cart",
"description": "Adds a product to the cart based on a search string or product ID. The search string and product ID are exclusive.",
"fields": {
"config_entry_id": {
"name": "Picnic service",
"description": "The product will be added to the selected service."
},
"product_id": {
"name": "Product ID",
"description": "The product ID of a Picnic product."
},
"product_name": {
"name": "Product name",
"description": "Search for a product and add the first result."
},
"amount": {
"name": "Amount",
"description": "Amount to add of the selected product."
}
}
}
}
}

View File

@ -1,10 +1,6 @@
send:
name: Send
description: Send RF code to Pilight device
fields:
protocol:
name: Protocol
description: "Protocol that Pilight recognizes. See https://manual.pilight.org/protocols/index.html for supported protocols and additional parameters that each protocol supports"
required: true
example: "lirc"
selector:

View File

@ -0,0 +1,14 @@
{
"services": {
"send": {
"name": "Send",
"description": "Sends RF code to Pilight device.",
"fields": {
"protocol": {
"name": "Protocol",
"description": "Protocol that Pilight recognizes. See https://manual.pilight.org/protocols/index.html for supported protocols and additional parameters that each protocol supports."
}
}
}
}
}

View File

@ -1,3 +1 @@
reload:
name: Reload
description: Reload all ping entities.

View File

@ -0,0 +1,8 @@
{
"services": {
"reload": {
"name": "Reload",
"description": "Reloads ping sensors from the YAML-configuration."
}
}
}

View File

@ -1,21 +1,13 @@
refresh_library:
name: Refresh library
description: Refresh a Plex library to scan for new and updated media.
fields:
server_name:
name: Server name
description: Name of a Plex server if multiple Plex servers configured.
example: "My Plex Server"
selector:
text:
library_name:
name: Library name
description: Name of the Plex library to refresh.
required: true
example: "TV Shows"
selector:
text:
scan_for_clients:
name: Scan for clients
description: Scan for available clients from the Plex server(s), local network, and plex.tv.

View File

@ -56,5 +56,25 @@
}
}
}
},
"services": {
"refresh_library": {
"name": "Refresh library",
"description": "Refreshes a Plex library to scan for new and updated media.",
"fields": {
"server_name": {
"name": "Server name",
"description": "Name of a Plex server if multiple Plex servers configured."
},
"library_name": {
"name": "Library name",
"description": "Name of the Plex library to refresh."
}
}
},
"scan_for_clients": {
"name": "Scan for clients",
"description": "Scans for available clients from the Plex server(s), local network, and plex.tv."
}
}
}

View File

@ -1,10 +1,6 @@
start:
name: Start
description: Start the Profiler
fields:
seconds:
name: Seconds
description: The number of seconds to run the profiler.
default: 60.0
selector:
number:
@ -12,12 +8,8 @@ start:
max: 3600
unit_of_measurement: seconds
memory:
name: Memory
description: Start the Memory Profiler
fields:
seconds:
name: Seconds
description: The number of seconds to run the memory profiler.
default: 60.0
selector:
number:
@ -25,12 +17,8 @@ memory:
max: 3600
unit_of_measurement: seconds
start_log_objects:
name: Start logging objects
description: Start logging growth of objects in memory
fields:
scan_interval:
name: Scan interval
description: The number of seconds between logging objects.
default: 30.0
selector:
number:
@ -38,26 +26,16 @@ start_log_objects:
max: 3600
unit_of_measurement: seconds
stop_log_objects:
name: Stop logging objects
description: Stop logging growth of objects in memory.
dump_log_objects:
name: Dump log objects
description: Dump the repr of all matching objects to the log.
fields:
type:
name: Type
description: The type of objects to dump to the log.
required: true
example: State
selector:
text:
start_log_object_sources:
name: Start logging object sources
description: Start logging sources of new objects in memory
fields:
scan_interval:
name: Scan interval
description: The number of seconds between logging objects.
default: 30.0
selector:
number:
@ -65,8 +43,6 @@ start_log_object_sources:
max: 3600
unit_of_measurement: seconds
max_objects:
name: Maximum objects
description: The maximum number of objects to log.
default: 5
selector:
number:
@ -74,14 +50,6 @@ start_log_object_sources:
max: 30
unit_of_measurement: objects
stop_log_object_sources:
name: Stop logging object sources
description: Stop logging sources of new objects in memory.
lru_stats:
name: Log LRU stats
description: Log the stats of all lru caches.
log_thread_frames:
name: Log thread frames
description: Log the current frames for all threads.
log_event_loop_scheduled:
name: Log event loop scheduled
description: Log what is scheduled in the event loop.

View File

@ -8,5 +8,81 @@
"abort": {
"single_instance_allowed": "[%key:common::config_flow::abort::single_instance_allowed%]"
}
},
"services": {
"start": {
"name": "Start",
"description": "Starts the Profiler.",
"fields": {
"seconds": {
"name": "Seconds",
"description": "The number of seconds to run the profiler."
}
}
},
"memory": {
"name": "Memory",
"description": "Starts the Memory Profiler.",
"fields": {
"seconds": {
"name": "Seconds",
"description": "The number of seconds to run the memory profiler."
}
}
},
"start_log_objects": {
"name": "Start logging objects",
"description": "Starts logging growth of objects in memory.",
"fields": {
"scan_interval": {
"name": "Scan interval",
"description": "The number of seconds between logging objects."
}
}
},
"stop_log_objects": {
"name": "Stop logging objects",
"description": "Stops logging growth of objects in memory."
},
"dump_log_objects": {
"name": "Dump log objects",
"description": "Dumps the repr of all matching objects to the log.",
"fields": {
"type": {
"name": "Type",
"description": "The type of objects to dump to the log."
}
}
},
"start_log_object_sources": {
"name": "Start logging object sources",
"description": "Starts logging sources of new objects in memory.",
"fields": {
"scan_interval": {
"name": "Scan interval",
"description": "The number of seconds between logging objects."
},
"max_objects": {
"name": "Maximum objects",
"description": "The maximum number of objects to log."
}
}
},
"stop_log_object_sources": {
"name": "Stop logging object sources",
"description": "Stops logging sources of new objects in memory."
},
"lru_stats": {
"name": "Log LRU stats",
"description": "Logs the stats of all lru caches."
},
"log_thread_frames": {
"name": "Log thread frames",
"description": "Logs the current frames for all threads."
},
"log_event_loop_scheduled": {
"name": "Log event loop scheduled",
"description": "Logs what is scheduled in the event loop."
}
}
}

View File

@ -1,6 +1,4 @@
request_image:
name: Request Camera image
description: Request a new image from a Prosegur Camera
target:
entity:
domain: camera

View File

@ -30,5 +30,11 @@
"already_configured": "[%key:common::config_flow::abort::already_configured_device%]",
"reauth_successful": "[%key:common::config_flow::abort::reauth_successful%]"
}
},
"services": {
"request_image": {
"name": "Request camera image",
"description": "Requests a new image from a Prosegur camera."
}
}
}

View File

@ -1,18 +1,12 @@
send_command:
name: Send command
description: Emulate button press for PlayStation 4.
fields:
entity_id:
name: Entity
description: Name of entity to send command.
required: true
selector:
entity:
integration: ps4
domain: media_player
command:
name: Command
description: Button to press.
required: true
selector:
select:

View File

@ -38,5 +38,21 @@
"port_987_bind_error": "Could not bind to port 987. Refer to the [documentation](https://www.home-assistant.io/components/ps4/) for additional info.",
"port_997_bind_error": "Could not bind to port 997. Refer to the [documentation](https://www.home-assistant.io/components/ps4/) for additional info."
}
},
"services": {
"send_command": {
"name": "Send command",
"description": "Emulates button press for PlayStation 4.",
"fields": {
"entity_id": {
"name": "Entity",
"description": "Name of entity to send command."
},
"command": {
"name": "Command",
"description": "Button to press."
}
}
}
}
}

View File

@ -1,5 +1,3 @@
# Describes the format for available python_script services
reload:
name: Reload
description: Reload all available python_scripts

View File

@ -0,0 +1,8 @@
{
"services": {
"reload": {
"name": "Reload",
"description": "Reloads all available Python scripts."
}
}
}