Migrate integration services (E-F) to support translations (#96367)

This commit is contained in:
Franck Nijhof 2023-07-11 23:57:29 +02:00 committed by GitHub
parent e4af293428
commit ea3be7a789
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
40 changed files with 816 additions and 337 deletions

View file

@ -1,3 +1 @@
randomize_device_tracker_data:
name: Randomize device tracker data
description: Demonstrates using a device tracker to see where devices are located

View file

@ -75,5 +75,11 @@
}
}
}
},
"services": {
"randomize_device_tracker_data": {
"name": "Randomize device tracker data",
"description": "Demonstrates using a device tracker to see where devices are located."
}
}
}

View file

@ -1,10 +1,6 @@
write:
name: Write
description: Call ebusd write command.
fields:
call:
name: Call
description: Property name and value to set
required: true
example: '{"name": "Hc1MaxFlowTempDesired", "value": 21}'
selector:

View file

@ -0,0 +1,14 @@
{
"services": {
"write": {
"name": "Write",
"description": "Calls the ebusd write command.",
"fields": {
"call": {
"name": "Call",
"description": "Property name and value to set."
}
}
}
}
}

View file

@ -1,28 +1,17 @@
create_vacation:
name: Create vacation
description: >-
Create a vacation on the selected thermostat. Note: start/end date and time must all be specified
together for these parameters to have an effect. If start/end date and time are not specified, the
vacation will start immediately and last 14 days (unless deleted earlier).
fields:
entity_id:
name: Entity
description: ecobee thermostat on which to create the vacation.
required: true
selector:
entity:
integration: ecobee
domain: climate
vacation_name:
name: Vacation name
description: Name of the vacation to create; must be unique on the thermostat.
required: true
example: "Skiing"
selector:
text:
cool_temp:
name: Cool temperature
description: Cooling temperature during the vacation.
required: true
selector:
number:
@ -31,8 +20,6 @@ create_vacation:
step: 0.5
unit_of_measurement: "°"
heat_temp:
name: Heat temperature
description: Heating temperature during the vacation.
required: true
selector:
number:
@ -41,36 +28,22 @@ create_vacation:
step: 0.5
unit_of_measurement: "°"
start_date:
name: Start date
description: >-
Date the vacation starts in the YYYY-MM-DD format (optional, immediately if not provided along with
start_time, end_date, and end_time).
example: "2019-03-15"
selector:
text:
start_time:
name: start time
description: Time the vacation starts, in the local time of the thermostat, in the 24-hour format "HH:MM:SS"
example: "20:00:00"
selector:
time:
end_date:
name: End date
description: >-
Date the vacation ends in the YYYY-MM-DD format (optional, 14 days from now if not provided along with
start_date, start_time, and end_time).
example: "2019-03-20"
selector:
text:
end_time:
name: End time
description: Time the vacation ends, in the local time of the thermostat, in the 24-hour format "HH:MM:SS"
example: "20:00:00"
selector:
time:
fan_mode:
name: Fan mode
description: Fan mode of the thermostat during the vacation.
default: "auto"
selector:
select:
@ -78,8 +51,6 @@ create_vacation:
- "on"
- "auto"
fan_min_on_time:
name: Fan minimum on time
description: Minimum number of minutes to run the fan each hour (0 to 60) during the vacation.
default: 0
selector:
number:
@ -88,13 +59,8 @@ create_vacation:
unit_of_measurement: minutes
delete_vacation:
name: Delete vacation
description: >-
Delete a vacation on the selected thermostat.
fields:
entity_id:
name: Entity
description: ecobee thermostat on which to delete the vacation.
required: true
example: "climate.kitchen"
selector:
@ -102,45 +68,31 @@ delete_vacation:
integration: ecobee
domain: climate
vacation_name:
name: Vacation name
description: Name of the vacation to delete.
required: true
example: "Skiing"
selector:
text:
resume_program:
name: Resume program
description: Resume the programmed schedule.
fields:
entity_id:
name: Entity
description: Name(s) of entities to change.
selector:
entity:
integration: ecobee
domain: climate
resume_all:
name: Resume all
description: Resume all events and return to the scheduled program.
default: false
selector:
boolean:
set_fan_min_on_time:
name: Set fan minimum on time
description: Set the minimum fan on time.
fields:
entity_id:
name: Entity
description: Name(s) of entities to change.
selector:
entity:
integration: ecobee
domain: climate
fan_min_on_time:
name: Fan minimum on time
description: New value of fan min on time.
required: true
selector:
number:
@ -149,50 +101,36 @@ set_fan_min_on_time:
unit_of_measurement: minutes
set_dst_mode:
name: Set Daylight savings time mode
description: Enable/disable automatic daylight savings time.
target:
entity:
integration: ecobee
domain: climate
fields:
dst_enabled:
name: Daylight savings time enabled
description: Enable automatic daylight savings time.
required: true
selector:
boolean:
set_mic_mode:
name: Set mic mode
description: Enable/disable Alexa mic (only for Ecobee 4).
target:
entity:
integration: ecobee
domain: climate
fields:
mic_enabled:
name: Mic enabled
description: Enable Alexa mic.
required: true
selector:
boolean:
set_occupancy_modes:
name: Set occupancy modes
description: Enable/disable Smart Home/Away and Follow Me modes.
target:
entity:
integration: ecobee
domain: climate
fields:
auto_away:
name: Auto away
description: Enable Smart Home/Away mode.
selector:
boolean:
follow_me:
name: Follow me
description: Enable Follow Me mode.
selector:
boolean:

View file

@ -28,5 +28,129 @@
"name": "Ventilator min time away"
}
}
},
"services": {
"create_vacation": {
"name": "Create vacation",
"description": "Creates a vacation on the selected thermostat. Note: start/end date and time must all be specified together for these parameters to have an effect. If start/end date and time are not specified, the vacation will start immediately and last 14 days (unless deleted earlier).",
"fields": {
"entity_id": {
"name": "Entity",
"description": "Ecobee thermostat on which to create the vacation."
},
"vacation_name": {
"name": "Vacation name",
"description": "Name of the vacation to create; must be unique on the thermostat."
},
"cool_temp": {
"name": "Cool temperature",
"description": "Cooling temperature during the vacation."
},
"heat_temp": {
"name": "Heat temperature",
"description": "Heating temperature during the vacation."
},
"start_date": {
"name": "Start date",
"description": "Date the vacation starts in the YYYY-MM-DD format (optional, immediately if not provided along with start_time, end_date, and end_time)."
},
"start_time": {
"name": "Start time",
"description": "Time the vacation starts, in the local time of the thermostat, in the 24-hour format \"HH:MM:SS\"."
},
"end_date": {
"name": "End date",
"description": "Date the vacation ends in the YYYY-MM-DD format (optional, 14 days from now if not provided along with start_date, start_time, and end_time)."
},
"end_time": {
"name": "End time",
"description": "Time the vacation ends, in the local time of the thermostat, in the 24-hour format \"HH:MM:SS\"."
},
"fan_mode": {
"name": "Fan mode",
"description": "Fan mode of the thermostat during the vacation."
},
"fan_min_on_time": {
"name": "Fan minimum on time",
"description": "Minimum number of minutes to run the fan each hour (0 to 60) during the vacation."
}
}
},
"delete_vacation": {
"name": "Delete vacation",
"description": "Deletes a vacation on the selected thermostat.",
"fields": {
"entity_id": {
"name": "Entity",
"description": "Ecobee thermostat on which to delete the vacation."
},
"vacation_name": {
"name": "Vacation name",
"description": "Name of the vacation to delete."
}
}
},
"resume_program": {
"name": "Resume program",
"description": "Resumes the programmed schedule.",
"fields": {
"entity_id": {
"name": "Entity",
"description": "Name(s) of entities to change."
},
"resume_all": {
"name": "Resume all",
"description": "Resume all events and return to the scheduled program."
}
}
},
"set_fan_min_on_time": {
"name": "Set fan minimum on time",
"description": "Sets the minimum fan on time.",
"fields": {
"entity_id": {
"name": "Entity",
"description": "Name(s) of entities to change."
},
"fan_min_on_time": {
"name": "Fan minimum on time",
"description": "New value of fan min on time."
}
}
},
"set_dst_mode": {
"name": "Set Daylight savings time mode",
"description": "Enables/disables automatic daylight savings time.",
"fields": {
"dst_enabled": {
"name": "Daylight savings time enabled",
"description": "Enable automatic daylight savings time."
}
}
},
"set_mic_mode": {
"name": "Set mic mode",
"description": "Enables/disables Alexa mic (only for Ecobee 4).",
"fields": {
"mic_enabled": {
"name": "Mic enabled",
"description": "Enable Alexa mic."
}
}
},
"set_occupancy_modes": {
"name": "Set occupancy modes",
"description": "Enables/disables Smart Home/Away and Follow Me modes.",
"fields": {
"auto_away": {
"name": "Auto away",
"description": "Enable Smart Home/Away mode."
},
"follow_me": {
"name": "Follow me",
"description": "Enable Follow Me mode."
}
}
}
}
}

View file

@ -1,14 +1,10 @@
heat_set:
name: Heat set
description: Set heating/cooling level for eight sleep.
target:
entity:
integration: eight_sleep
domain: sensor
fields:
duration:
name: Duration
description: Duration to heat/cool at the target level in seconds.
required: true
selector:
number:
@ -16,8 +12,6 @@ heat_set:
max: 28800
unit_of_measurement: seconds
target:
name: Target
description: Target cooling/heating level from -100 to 100.
required: true
selector:
number:

View file

@ -15,5 +15,21 @@
"already_configured": "[%key:common::config_flow::abort::already_configured_device%]",
"cannot_connect": "Cannot connect to Eight Sleep cloud: {error}"
}
},
"services": {
"heat_set": {
"name": "Heat set",
"description": "Sets heating/cooling level for eight sleep.",
"fields": {
"duration": {
"name": "Duration",
"description": "Duration to heat/cool at the target level in seconds."
},
"target": {
"name": "Target",
"description": "Target cooling/heating level from -100 to 100."
}
}
}
}
}

View file

@ -1,8 +1,4 @@
identify:
name: Identify
description: >-
Identify an Elgato Light. Blinks the light, which can be useful
for, e.g., a visual notification.
target:
entity:
integration: elgato

View file

@ -45,5 +45,11 @@
"name": "Energy saving"
}
}
},
"services": {
"identify": {
"name": "Identify",
"description": "Identifies an Elgato Light. Blinks the light, which can be useful for, e.g., a visual notification."
}
}
}

View file

@ -1,197 +1,143 @@
alarm_bypass:
name: Alarm bypass
description: Bypass all zones for the area.
target:
entity:
integration: elkm1
domain: alarm_control_panel
fields:
code:
name: Code
description: An code to authorize the bypass of the alarm control panel.
required: true
example: 4242
selector:
text:
alarm_clear_bypass:
name: Alarm clear bypass
description: Remove bypass on all zones for the area.
target:
entity:
integration: elkm1
domain: alarm_control_panel
fields:
code:
name: Code
description: An code to authorize the bypass clear of the alarm control panel.
required: true
example: 4242
selector:
text:
alarm_arm_home_instant:
name: Alarm are home instant
description: Arm the ElkM1 in home instant mode.
target:
entity:
integration: elkm1
domain: alarm_control_panel
fields:
code:
name: Code
description: An code to arm the alarm control panel.
required: true
example: 1234
selector:
text:
alarm_arm_night_instant:
name: Alarm arm night instant
description: Arm the ElkM1 in night instant mode.
target:
entity:
integration: elkm1
domain: alarm_control_panel
fields:
code:
name: Code
description: An code to arm the alarm control panel.
required: true
example: 1234
selector:
text:
alarm_arm_vacation:
name: Alarm arm vacation
description: Arm the ElkM1 in vacation mode.
target:
entity:
integration: elkm1
domain: alarm_control_panel
fields:
code:
name: Code
description: An code to arm the alarm control panel.
required: true
example: 1234
selector:
text:
alarm_display_message:
name: Alarm display message
description: Display a message on all of the ElkM1 keypads for an area.
target:
entity:
integration: elkm1
domain: alarm_control_panel
fields:
clear:
name: Clear
description: 0=clear message, 1=clear message with * key, 2=Display until timeout
default: 2
selector:
number:
min: 0
max: 2
beep:
name: Beep
description: 0=no beep, 1=beep
default: 0
selector:
boolean:
timeout:
name: Timeout
description: Time to display message, 0=forever, max 65535
default: 0
selector:
number:
min: 0
max: 65535
line1:
name: Line 1
description: Up to 16 characters of text (truncated if too long).
example: The answer to life.
default: ""
selector:
text:
line2:
name: Line 2
description: Up to 16 characters of text (truncated if too long).
example: the universe, and everything.
default: ""
selector:
text:
set_time:
name: Set time
description: Set the time for the panel.
fields:
prefix:
name: Prefix
description: Prefix for the panel.
example: gatehouse
selector:
text:
speak_phrase:
name: Speak phrase
description: Speak a phrase. See list of phrases in ElkM1 ASCII Protocol documentation.
fields:
number:
name: Phrase number
description: Phrase number to speak.
required: true
example: 42
selector:
text:
prefix:
name: Prefix
description: Prefix to identify panel when multiple panels configured.
example: gatehouse
default: ""
selector:
text:
speak_word:
name: Speak word
description: Speak a word. See list of words in ElkM1 ASCII Protocol documentation.
fields:
number:
name: Word number
description: Word number to speak.
required: true
selector:
number:
min: 1
max: 473
prefix:
name: Prefix
description: Prefix to identify panel when multiple panels configured.
example: gatehouse
default: ""
selector:
text:
sensor_counter_refresh:
name: Sensor counter refresh
description: Refresh the value of a counter from the panel.
target:
entity:
integration: elkm1
domain: sensor
sensor_counter_set:
name: Sensor counter set
description: Set the value of a counter on the panel.
target:
entity:
integration: elkm1
domain: sensor
fields:
value:
name: Value
description: Value to set the counter to.
required: true
selector:
number:
@ -199,24 +145,18 @@ sensor_counter_set:
max: 65536
sensor_zone_bypass:
name: Sensor zone bypass
description: Bypass zone.
target:
entity:
integration: elkm1
domain: sensor
fields:
code:
name: Code
description: An code to authorize the bypass of the zone.
required: true
example: 4242
selector:
text:
sensor_zone_trigger:
name: Sensor zone trigger
description: Trigger zone.
target:
entity:
integration: elkm1

View file

@ -45,5 +45,149 @@
"already_configured": "An ElkM1 with this prefix is already configured",
"address_already_configured": "An ElkM1 with this address is already configured"
}
},
"services": {
"alarm_bypass": {
"name": "Alarm bypass",
"description": "Bypasses all zones for the area.",
"fields": {
"code": {
"name": "Code",
"description": "An code to authorize the bypass of the alarm control panel."
}
}
},
"alarm_clear_bypass": {
"name": "Alarm clear bypass",
"description": "Removes bypass on all zones for the area.",
"fields": {
"code": {
"name": "Code",
"description": "An code to authorize the bypass clear of the alarm control panel."
}
}
},
"alarm_arm_home_instant": {
"name": "Alarm are home instant",
"description": "Arms the ElkM1 in home instant mode.",
"fields": {
"code": {
"name": "Code",
"description": "An code to arm the alarm control panel."
}
}
},
"alarm_arm_night_instant": {
"name": "Alarm arm night instant",
"description": "Arms the ElkM1 in night instant mode.",
"fields": {
"code": {
"name": "Code",
"description": "An code to arm the alarm control panel."
}
}
},
"alarm_arm_vacation": {
"name": "Alarm arm vacation",
"description": "Arm the ElkM1 in vacation mode.",
"fields": {
"code": {
"name": "Code",
"description": "An code to arm the alarm control panel."
}
}
},
"alarm_display_message": {
"name": "Alarm display message",
"description": "Displays a message on all of the ElkM1 keypads for an area.",
"fields": {
"clear": {
"name": "Clear",
"description": "0=clear message, 1=clear message with * key, 2=Display until timeout."
},
"beep": {
"name": "Beep",
"description": "0=no beep, 1=beep."
},
"timeout": {
"name": "Timeout",
"description": "Time to display message, 0=forever, max 65535."
},
"line1": {
"name": "Line 1",
"description": "Up to 16 characters of text (truncated if too long)."
},
"line2": {
"name": "Line 2",
"description": "Up to 16 characters of text (truncated if too long)."
}
}
},
"set_time": {
"name": "Set time",
"description": "Sets the time for the panel.",
"fields": {
"prefix": {
"name": "Prefix",
"description": "Prefix for the panel."
}
}
},
"speak_phrase": {
"name": "Speak phrase",
"description": "Speaks a phrase. See list of phrases in ElkM1 ASCII Protocol documentation.",
"fields": {
"number": {
"name": "Phrase number",
"description": "Phrase number to speak."
},
"prefix": {
"name": "Prefix",
"description": "Prefix to identify panel when multiple panels configured."
}
}
},
"speak_word": {
"name": "Speak word",
"description": "Speaks a word. See list of words in ElkM1 ASCII Protocol documentation.",
"fields": {
"number": {
"name": "Word number",
"description": "Word number to speak."
},
"prefix": {
"name": "Prefix",
"description": "Prefix to identify panel when multiple panels configured."
}
}
},
"sensor_counter_refresh": {
"name": "Sensor counter refresh",
"description": "Refreshes the value of a counter from the panel."
},
"sensor_counter_set": {
"name": "Sensor counter set",
"description": "Sets the value of a counter on the panel.",
"fields": {
"value": {
"name": "Value",
"description": "Value to set the counter to."
}
}
},
"sensor_zone_bypass": {
"name": "Sensor zone bypass",
"description": "Bypasses zone.",
"fields": {
"code": {
"name": "Code",
"description": "An code to authorize the bypass of the zone."
}
}
},
"sensor_zone_trigger": {
"name": "Sensor zone trigger",
"description": "Triggers zone."
}
}
}

View file

@ -1,14 +1,10 @@
set_radar_type:
name: Set radar type
description: Set the type of radar image to retrieve.
target:
entity:
integration: environment_canada
domain: camera
fields:
radar_type:
name: Radar type
description: The type of radar image to display.
required: true
example: Snow
selector:

View file

@ -117,5 +117,17 @@
"name": "Forecast"
}
}
},
"services": {
"set_radar_type": {
"name": "Set radar type",
"description": "Sets the type of radar image to retrieve.",
"fields": {
"radar_type": {
"name": "Radar type",
"description": "The type of radar image to display."
}
}
}
}
}

View file

@ -1,43 +1,27 @@
# Describes the format for available Envisalink services.
alarm_keypress:
name: Alarm keypress
description: Send custom keypresses to the alarm.
fields:
entity_id:
name: Entity
description: Name of the alarm control panel to trigger.
required: true
selector:
entity:
integration: envisalink
domain: alarm_control_panel
keypress:
name: Keypress
description: "String to send to the alarm panel (1-6 characters)."
required: true
example: "*71"
selector:
text:
invoke_custom_function:
name: Invoke custom function
description: >
Allows users with DSC panels to trigger a PGM output (1-4).
Note that you need to specify the alarm panel's "code" parameter for this to work.
fields:
partition:
name: Partition
description: >
The alarm panel partition to trigger the PGM output on.
Typically this is just "1".
required: true
example: "1"
selector:
text:
pgm:
name: PGM
description: The PGM number to trigger on the alarm panel.
required: true
selector:
number:

View file

@ -0,0 +1,32 @@
{
"services": {
"alarm_keypress": {
"name": "Alarm keypress",
"description": "Sends custom keypresses to the alarm.",
"fields": {
"entity_id": {
"name": "Entity",
"description": "Name of the alarm control panel to trigger."
},
"keypress": {
"name": "Keypress",
"description": "String to send to the alarm panel (1-6 characters)."
}
}
},
"invoke_custom_function": {
"name": "Invoke custom function",
"description": "Allows users with DSC panels to trigger a PGM output (1-4). Note that you need to specify the alarm panel's \"code\" parameter for this to work.\n.",
"fields": {
"partition": {
"name": "Partition",
"description": "The alarm panel partition to trigger the PGM output on. Typically this is just \"1\".\n."
},
"pgm": {
"name": "PGM",
"description": "The PGM number to trigger on the alarm panel."
}
}
}
}
}

View file

@ -1,14 +1,10 @@
select_cmode:
name: Select color mode
description: Select Color mode of Epson projector
target:
entity:
integration: epson
domain: media_player
fields:
cmode:
name: Color mode
description: Name of Cmode
required: true
example: "cinema"
selector:

View file

@ -15,5 +15,17 @@
"cannot_connect": "[%key:common::config_flow::error::cannot_connect%]",
"powered_off": "Is projector turned on? You need to turn on projector for initial configuration."
}
},
"services": {
"select_cmode": {
"name": "Select color mode",
"description": "Selects color mode of Epson projector.",
"fields": {
"cmode": {
"name": "Color mode",
"description": "Name of Cmode."
}
}
}
}
}

View file

@ -2,14 +2,8 @@
# Describes the format for available services
set_system_mode:
name: Set system mode
description: >-
Set the system mode, either indefinitely, or for a specified period of time, after
which it will revert to Auto. Not all systems support all modes.
fields:
mode:
name: Mode
description: "Mode to set thermostat."
example: Away
selector:
select:
@ -21,41 +15,19 @@ set_system_mode:
- "DayOff"
- "HeatingOff"
period:
name: Period
description: >-
A period of time in days; used only with Away, DayOff, or Custom. The system
will revert to Auto at midnight (up to 99 days, today is day 1).
example: '{"days": 28}'
selector:
object:
duration:
name: Duration
description: The duration in hours; used only with AutoWithEco (up to 24 hours).
example: '{"hours": 18}'
selector:
object:
reset_system:
name: Reset system
description: >-
Set the system to Auto mode and reset all the zones to follow their schedules.
Not all Evohome systems support this feature (i.e. AutoWithReset mode).
refresh_system:
name: Refresh system
description: >-
Pull the latest data from the vendor's servers now, rather than waiting for the
next scheduled update.
set_zone_override:
name: Set zone override
description: >-
Override a zone's setpoint, either indefinitely, or for a specified period of
time, after which it will revert to following its schedule.
fields:
entity_id:
name: Entity
description: The entity_id of the Evohome zone.
required: true
example: climate.bathroom
selector:
@ -63,8 +35,6 @@ set_zone_override:
integration: evohome
domain: climate
setpoint:
name: Setpoint
description: The temperature to be used instead of the scheduled setpoint.
required: true
selector:
number:
@ -72,21 +42,13 @@ set_zone_override:
max: 35.0
step: 0.1
duration:
name: Duration
description: >-
The zone will revert to its schedule after this time. If 0 the change is until
the next scheduled setpoint.
example: '{"minutes": 135}'
selector:
object:
clear_zone_override:
name: Clear zone override
description: Set a zone to follow its schedule.
fields:
entity_id:
name: Entity
description: The entity_id of the zone.
required: true
selector:
entity:

View file

@ -0,0 +1,58 @@
{
"services": {
"set_system_mode": {
"name": "Set system mode",
"description": "Sets the system mode, either indefinitely, or for a specified period of time, after which it will revert to Auto. Not all systems support all modes.",
"fields": {
"mode": {
"name": "Mode",
"description": "Mode to set thermostat."
},
"period": {
"name": "Period",
"description": "A period of time in days; used only with Away, DayOff, or Custom. The system will revert to Auto at midnight (up to 99 days, today is day 1)."
},
"duration": {
"name": "Duration",
"description": "The duration in hours; used only with AutoWithEco (up to 24 hours)."
}
}
},
"reset_system": {
"name": "Reset system",
"description": "Sets the system to Auto mode and reset all the zones to follow their schedules. Not all Evohome systems support this feature (i.e. AutoWithReset mode)."
},
"refresh_system": {
"name": "Refresh system",
"description": "Pulls the latest data from the vendor's servers now, rather than waiting for the next scheduled update."
},
"set_zone_override": {
"name": "Set zone override",
"description": "Overrides a zone's setpoint, either indefinitely, or for a specified period of time, after which it will revert to following its schedule.",
"fields": {
"entity_id": {
"name": "Entity",
"description": "The entity_id of the Evohome zone."
},
"setpoint": {
"name": "Setpoint",
"description": "The temperature to be used instead of the scheduled setpoint."
},
"duration": {
"name": "Duration",
"description": "The zone will revert to its schedule after this time. If 0 the change is until the next scheduled setpoint."
}
}
},
"clear_zone_override": {
"name": "Clear zone override",
"description": "Sets a zone to follow its schedule.",
"fields": {
"entity_id": {
"name": "Entity",
"description": "The entity_id of the zone."
}
}
}
}
}

View file

@ -1,14 +1,10 @@
alarm_sound:
name: Set warning sound level.
description: Set movement warning sound level.
target:
entity:
integration: ezviz
domain: camera
fields:
level:
name: Sound level
description: Sound level (2 is disabled, 1 intensive, 0 soft).
required: true
example: 0
default: 0
@ -19,16 +15,12 @@ alarm_sound:
step: 1
mode: box
ptz:
name: PTZ
description: Moves the camera to the direction, with defined speed
target:
entity:
integration: ezviz
domain: camera
fields:
direction:
name: Direction
description: Direction to move camera (up, down, left, right).
required: true
example: "up"
default: "up"
@ -40,8 +32,6 @@ ptz:
- "left"
- "right"
speed:
name: Speed
description: Speed of movement (from 1 to 9).
required: true
example: 5
default: 5
@ -52,17 +42,12 @@ ptz:
step: 1
mode: box
set_alarm_detection_sensibility:
name: Detection sensitivity
description: Sets the detection sensibility level.
target:
entity:
integration: ezviz
domain: camera
fields:
level:
name: Sensitivity Level
description: "Sensibility level (1-6) for type 0 (Normal camera)
or (1-100) for type 3 (PIR sensor camera)."
required: true
example: 3
default: 3
@ -73,8 +58,6 @@ set_alarm_detection_sensibility:
step: 1
mode: box
type_value:
name: Detection type
description: "Type of detection. Options : 0 - Camera or 3 - PIR Sensor Camera"
required: true
example: "0"
default: "0"
@ -84,15 +67,12 @@ set_alarm_detection_sensibility:
- "0"
- "3"
sound_alarm:
name: Sound Alarm
description: Sounds the alarm on your camera.
target:
entity:
integration: ezviz
domain: camera
fields:
enable:
description: Enter 1 or 2 (1=disable, 2=enable).
required: true
example: 1
default: 1
@ -103,8 +83,6 @@ sound_alarm:
step: 1
mode: box
wake_device:
name: Wake Camera
description: This can be used to wake the camera/device from hibernation.
target:
entity:
integration: ezviz

View file

@ -71,5 +71,59 @@
}
}
}
},
"services": {
"alarm_sound": {
"name": "Set warning sound level.",
"description": "Setx movement warning sound level.",
"fields": {
"level": {
"name": "Sound level",
"description": "Sound level (2 is disabled, 1 intensive, 0 soft)."
}
}
},
"ptz": {
"name": "PTZ",
"description": "Moves the camera to the direction, with defined speed.",
"fields": {
"direction": {
"name": "Direction",
"description": "Direction to move camera (up, down, left, right)."
},
"speed": {
"name": "Speed",
"description": "Speed of movement (from 1 to 9)."
}
}
},
"set_alarm_detection_sensibility": {
"name": "Detection sensitivity",
"description": "Sets the detection sensibility level.",
"fields": {
"level": {
"name": "Sensitivity level",
"description": "Sensibility level (1-6) for type 0 (Normal camera) or (1-100) for type 3 (PIR sensor camera)."
},
"type_value": {
"name": "Detection type",
"description": "Type of detection. Options : 0 - Camera or 3 - PIR Sensor Camera."
}
}
},
"sound_alarm": {
"name": "Sound alarm",
"description": "Sounds the alarm on your camera.",
"fields": {
"enable": {
"name": "Alarm sound",
"description": "Enter 1 or 2 (1=disable, 2=enable)."
}
}
},
"wake_device": {
"name": "Wake camera",
"description": "This can be used to wake the camera/device from hibernation."
}
}
}

View file

@ -1,24 +1,16 @@
teach_face:
name: Teach face
description: Teach facebox a face using a file.
fields:
entity_id:
name: Entity
description: The facebox entity to teach.
selector:
entity:
integration: facebox
domain: image_processing
name:
name: Name
description: The name of the face to teach.
required: true
example: "my_name"
selector:
text:
file_path:
name: File path
description: The path to the image file.
required: true
example: "/images/my_image.jpg"
selector:

View file

@ -0,0 +1,22 @@
{
"services": {
"teach_face": {
"name": "Teach face",
"description": "Teaches facebox a face using a file.",
"fields": {
"entity_id": {
"name": "Entity",
"description": "The facebox entity to teach."
},
"name": {
"name": "Name",
"description": "The name of the face to teach."
},
"file_path": {
"name": "File path",
"description": "The path to the image file."
}
}
}
}
}

View file

@ -1,3 +1 @@
speedtest:
name: Speed test
description: Immediately execute a speed test with Fast.com

View file

@ -0,0 +1,8 @@
{
"services": {
"speedtest": {
"name": "Speed test",
"description": "Immediately executs a speed test with Fast.com."
}
}
}

View file

@ -1,32 +1,20 @@
restart:
name: Restart
description: Send a restart command to a ffmpeg based sensor.
fields:
entity_id:
name: Entity
description: Name of entity that will restart. Platform dependent.
selector:
entity:
integration: ffmpeg
domain: binary_sensor
start:
name: Start
description: Send a start command to a ffmpeg based sensor.
fields:
entity_id:
name: Entity
description: Name of entity that will start. Platform dependent.
selector:
entity:
integration: ffmpeg
domain: binary_sensor
stop:
name: Stop
description: Send a stop command to a ffmpeg based sensor.
fields:
entity_id:
name: Entity
description: Name of entity that will stop. Platform dependent.
selector:
entity:
integration: ffmpeg

View file

@ -0,0 +1,34 @@
{
"services": {
"restart": {
"name": "Restart",
"description": "Sends a restart command to a ffmpeg based sensor.",
"fields": {
"entity_id": {
"name": "Entity",
"description": "Name of entity that will restart. Platform dependent."
}
}
},
"start": {
"name": "Start",
"description": "Sends a start command to a ffmpeg based sensor.",
"fields": {
"entity_id": {
"name": "Entity",
"description": "Name of entity that will start. Platform dependent."
}
}
},
"stop": {
"name": "Stop",
"description": "Sends a stop command to a ffmpeg based sensor.",
"fields": {
"entity_id": {
"name": "Entity",
"description": "Name of entity that will stop. Platform dependent."
}
}
}
}
}

View file

@ -1,16 +1,12 @@
# Describes the format for available Flo services
set_sleep_mode:
name: Set sleep mode
description: Set the location into sleep mode.
target:
entity:
integration: flo
domain: switch
fields:
sleep_minutes:
name: Sleep minutes
description: The time to sleep in minutes.
default: true
selector:
select:
@ -19,8 +15,6 @@ set_sleep_mode:
- "1440"
- "4320"
revert_to_mode:
name: Revert to mode
description: The mode to revert to after sleep_minutes has elapsed.
default: true
selector:
select:
@ -28,22 +22,16 @@ set_sleep_mode:
- "away"
- "home"
set_away_mode:
name: Set away mode
description: Set the location into away mode.
target:
entity:
integration: flo
domain: switch
set_home_mode:
name: Set home mode
description: Set the location into home mode.
target:
entity:
integration: flo
domain: switch
run_health_test:
name: Run health test
description: Have the Flo device run a health test.
target:
entity:
integration: flo

View file

@ -49,5 +49,33 @@
"name": "Shutoff valve"
}
}
},
"services": {
"set_sleep_mode": {
"name": "Set sleep mode",
"description": "Sets the location into sleep mode.",
"fields": {
"sleep_minutes": {
"name": "Sleep minutes",
"description": "The time to sleep in minutes."
},
"revert_to_mode": {
"name": "Revert to mode",
"description": "The mode to revert to after sleep_minutes has elapsed."
}
}
},
"set_away_mode": {
"name": "Set away mode",
"description": "Sets the location into away mode."
},
"set_home_mode": {
"name": "Set home mode",
"description": "Sets the location into home mode."
},
"run_health_test": {
"name": "Run health test",
"description": "Have the Flo device run a health test."
}
}
}

View file

@ -1,13 +1,10 @@
set_custom_effect:
name: Set custom effect
description: Set a custom light effect.
target:
entity:
integration: flux_led
domain: light
fields:
colors:
description: List of colors for the custom effect (RGB). (Max 16 Colors)
example: |
- [255,0,0]
- [0,255,0]
@ -16,7 +13,6 @@ set_custom_effect:
selector:
object:
speed_pct:
description: Effect speed for the custom effect (0-100).
example: 80
default: 50
required: false
@ -27,7 +23,6 @@ set_custom_effect:
max: 100
unit_of_measurement: "%"
transition:
description: Effect transition.
example: "jump"
default: "gradual"
required: false
@ -38,15 +33,12 @@ set_custom_effect:
- "jump"
- "strobe"
set_zones:
name: Set zones
description: Set strip zones for Addressable v3 controllers (0xA3).
target:
entity:
integration: flux_led
domain: light
fields:
colors:
description: List of colors for each zone (RGB). The length of each zone is the number of pixels per segment divided by the number of colors. (Max 2048 Colors)
example: |
- [255,0,0]
- [0,255,0]
@ -56,7 +48,6 @@ set_zones:
selector:
object:
speed_pct:
description: Effect speed for the custom effect (0-100)
example: 80
default: 50
required: false
@ -67,7 +58,6 @@ set_zones:
max: 100
unit_of_measurement: "%"
effect:
description: Effect
example: "running_water"
default: "static"
required: false
@ -80,15 +70,12 @@ set_zones:
- "jump"
- "breathing"
set_music_mode:
name: Set music mode
description: Configure music mode on Controller RGB with MIC (0x08), Addressable v2 (0xA2), and Addressable v3 (0xA3) devices that have a built-in microphone.
target:
entity:
integration: flux_led
domain: light
fields:
sensitivity:
description: Microphone sensitivity (0-100)
example: 80
default: 100
required: false
@ -99,7 +86,6 @@ set_music_mode:
max: 100
unit_of_measurement: "%"
brightness:
description: Light brightness (0-100)
example: 80
default: 100
required: false
@ -110,13 +96,11 @@ set_music_mode:
max: 100
unit_of_measurement: "%"
light_screen:
description: Light screen mode for 2 dimensional pixels (Addressable models only)
default: false
required: false
selector:
boolean:
effect:
description: Effect (1-16 on Addressable models, 0-3 on RGB with MIC models)
example: 1
default: 1
required: false
@ -126,13 +110,11 @@ set_music_mode:
step: 1
max: 16
foreground_color:
description: The foreground RGB color
example: "[255, 100, 100]"
required: false
selector:
object:
background_color:
description: The background RGB color (Addressable models only)
example: "[255, 100, 100]"
required: false
selector:

View file

@ -89,5 +89,73 @@
"name": "Music"
}
}
},
"services": {
"set_custom_effect": {
"name": "Set custom effect",
"description": "Sets a custom light effect.",
"fields": {
"colors": {
"name": "Colors",
"description": "List of colors for the custom effect (RGB). (Max 16 Colors)."
},
"speed_pct": {
"name": "Speed",
"description": "Effect speed for the custom effect (0-100)."
},
"transition": {
"name": "Transition",
"description": "Effect transition."
}
}
},
"set_zones": {
"name": "Set zones",
"description": "Sets strip zones for Addressable v3 controllers (0xA3).",
"fields": {
"colors": {
"name": "Colors",
"description": "List of colors for each zone (RGB). The length of each zone is the number of pixels per segment divided by the number of colors. (Max 2048 Colors)."
},
"speed_pct": {
"name": "Speed",
"description": "Effect speed for the custom effect (0-100)."
},
"effect": {
"name": "Effect",
"description": "Effect."
}
}
},
"set_music_mode": {
"name": "Set music mode",
"description": "Configures music mode on Controller RGB with MIC (0x08), Addressable v2 (0xA2), and Addressable v3 (0xA3) devices that have a built-in microphone.",
"fields": {
"sensitivity": {
"name": "Sensitivity",
"description": "Microphone sensitivity (0-100)."
},
"brightness": {
"name": "Brightness",
"description": "Light brightness (0-100)."
},
"light_screen": {
"name": "Light screen",
"description": "Light screen mode for 2 dimensional pixels (Addressable models only)."
},
"effect": {
"name": "Effect",
"description": "Effect (1-16 on Addressable models, 0-3 on RGB with MIC models)."
},
"foreground_color": {
"name": "Foreground color",
"description": "The foreground RGB color."
},
"background_color": {
"name": "Background color",
"description": "The background RGB color (Addressable models only)."
}
}
}
}
}

View file

@ -1,13 +1,10 @@
ptz:
name: PTZ
description: Pan/Tilt service for Foscam camera.
target:
entity:
integration: foscam
domain: camera
fields:
movement:
description: "Direction of the movement."
required: true
selector:
select:
@ -21,7 +18,6 @@ ptz:
- "top_right"
- "up"
travel_time:
description: "Travel time in seconds."
default: 0.125
selector:
number:
@ -31,15 +27,12 @@ ptz:
unit_of_measurement: seconds
ptz_preset:
name: PTZ preset
description: PTZ Preset service for Foscam camera.
target:
entity:
integration: foscam
domain: camera
fields:
preset_name:
description: "The name of the preset to move to. Presets can be created from within the official Foscam apps."
required: true
example: "TopMost"
selector:

View file

@ -21,5 +21,31 @@
"abort": {
"already_configured": "[%key:common::config_flow::abort::already_configured_device%]"
}
},
"services": {
"ptz": {
"name": "PTZ",
"description": "Pan/Tilt service for Foscam camera.",
"fields": {
"movement": {
"name": "Movement",
"description": "Direction of the movement."
},
"travel_time": {
"name": "Travel time",
"description": "Travel time in seconds."
}
}
},
"ptz_preset": {
"name": "PTZ preset",
"description": "PTZ Preset service for Foscam camera.",
"fields": {
"preset_name": {
"name": "Preset name",
"description": "The name of the preset to move to. Presets can be created from within the official Foscam apps."
}
}
}
}
}

View file

@ -1,5 +1,3 @@
# Freebox service entries description.
reboot:
name: Reboot
description: Reboots the Freebox.

View file

@ -20,5 +20,11 @@
"abort": {
"already_configured": "[%key:common::config_flow::abort::already_configured_device%]"
}
},
"services": {
"reboot": {
"name": "Reboot",
"description": "Reboots the Freebox."
}
}
}

View file

@ -1,10 +1,6 @@
reconnect:
name: Reconnect
description: Reconnects your FRITZ!Box internet connection
fields:
device_id:
name: Fritz!Box Device
description: Select the Fritz!Box to reconnect
required: true
selector:
device:
@ -12,12 +8,8 @@ reconnect:
entity:
device_class: connectivity
reboot:
name: Reboot
description: Reboots your FRITZ!Box
fields:
device_id:
name: Fritz!Box Device
description: Select the Fritz!Box to reboot
required: true
selector:
device:
@ -26,12 +18,8 @@ reboot:
device_class: connectivity
cleanup:
name: Remove stale device tracker entities
description: Remove FRITZ!Box stale device_tracker entities
fields:
device_id:
name: Fritz!Box Device
description: Select the Fritz!Box to check
required: true
selector:
device:
@ -39,12 +27,8 @@ cleanup:
entity:
device_class: connectivity
set_guest_wifi_password:
name: Set guest wifi password
description: Set a new password for the guest wifi. The password must be between 8 and 63 characters long. If no additional parameter is set, the password will be auto-generated with a length of 12 characters.
fields:
device_id:
name: Fritz!Box Device
description: Select the Fritz!Box to check
required: true
selector:
device:
@ -52,14 +36,10 @@ set_guest_wifi_password:
entity:
device_class: connectivity
password:
name: Password
description: New password for the guest wifi
required: false
selector:
text:
length:
name: Password length
description: Length of the new password. The password will be auto-generated, if no password is set.
required: false
selector:
number:

View file

@ -55,33 +55,123 @@
},
"entity": {
"binary_sensor": {
"is_connected": { "name": "Connection" },
"is_linked": { "name": "Link" }
"is_connected": {
"name": "Connection"
},
"is_linked": {
"name": "Link"
}
},
"button": {
"cleanup": { "name": "Cleanup" },
"firmware_update": { "name": "Firmware update" },
"reconnect": { "name": "Reconnect" }
"cleanup": {
"name": "Cleanup"
},
"firmware_update": {
"name": "Firmware update"
},
"reconnect": {
"name": "Reconnect"
}
},
"sensor": {
"connection_uptime": { "name": "Connection uptime" },
"device_uptime": { "name": "Last restart" },
"external_ip": { "name": "External IP" },
"external_ipv6": { "name": "External IPv6" },
"gb_received": { "name": "GB received" },
"gb_sent": { "name": "GB sent" },
"kb_s_received": { "name": "Download throughput" },
"kb_s_sent": { "name": "Upload throughput" },
"connection_uptime": {
"name": "Connection uptime"
},
"device_uptime": {
"name": "Last restart"
},
"external_ip": {
"name": "External IP"
},
"external_ipv6": {
"name": "External IPv6"
},
"gb_received": {
"name": "GB received"
},
"gb_sent": {
"name": "GB sent"
},
"kb_s_received": {
"name": "Download throughput"
},
"kb_s_sent": {
"name": "Upload throughput"
},
"link_attenuation_received": {
"name": "Link download power attenuation"
},
"link_attenuation_sent": { "name": "Link upload power attenuation" },
"link_kb_s_received": { "name": "Link download throughput" },
"link_kb_s_sent": { "name": "Link upload throughput" },
"link_noise_margin_received": { "name": "Link download noise margin" },
"link_noise_margin_sent": { "name": "Link upload noise margin" },
"max_kb_s_received": { "name": "Max connection download throughput" },
"max_kb_s_sent": { "name": "Max connection upload throughput" }
"link_attenuation_sent": {
"name": "Link upload power attenuation"
},
"link_kb_s_received": {
"name": "Link download throughput"
},
"link_kb_s_sent": {
"name": "Link upload throughput"
},
"link_noise_margin_received": {
"name": "Link download noise margin"
},
"link_noise_margin_sent": {
"name": "Link upload noise margin"
},
"max_kb_s_received": {
"name": "Max connection download throughput"
},
"max_kb_s_sent": {
"name": "Max connection upload throughput"
}
}
},
"services": {
"reconnect": {
"name": "Reconnect",
"description": "Reconnects your FRITZ!Box internet connection.",
"fields": {
"device_id": {
"name": "Fritz!Box Device",
"description": "Select the Fritz!Box to reconnect."
}
}
},
"reboot": {
"name": "Reboot",
"description": "Reboots your FRITZ!Box.",
"fields": {
"device_id": {
"name": "Fritz!Box Device",
"description": "Select the Fritz!Box to reboot."
}
}
},
"cleanup": {
"name": "Remove stale device tracker entities",
"description": "Remove FRITZ!Box stale device_tracker entities.",
"fields": {
"device_id": {
"name": "Fritz!Box Device",
"description": "Select the Fritz!Box to check."
}
}
},
"set_guest_wifi_password": {
"name": "Set guest Wi-Fi password",
"description": "Sets a new password for the guest Wi-Fi. The password must be between 8 and 63 characters long. If no additional parameter is set, the password will be auto-generated with a length of 12 characters.",
"fields": {
"device_id": {
"name": "Fritz!Box Device",
"description": "Select the Fritz!Box to check."
},
"password": {
"name": "Password",
"description": "New password for the guest Wi-Fi."
},
"length": {
"name": "Password length",
"description": "Length of the new password. The password will be auto-generated, if no password is set."
}
}
}
}
}

View file

@ -1,50 +1,36 @@
load_url:
name: Load URL
description: Load a URL on Fully Kiosk Browser
target:
device:
integration: fully_kiosk
fields:
url:
name: URL
description: URL to load.
example: "https://home-assistant.io"
required: true
selector:
text:
set_config:
name: Set Configuration
description: Set a configuration parameter on Fully Kiosk Browser.
target:
device:
integration: fully_kiosk
fields:
key:
name: Key
description: Configuration parameter to set.
example: "motionSensitivity"
required: true
selector:
text:
value:
name: Value
description: Value for the configuration parameter.
example: "90"
required: true
selector:
text:
start_application:
name: Start Application
description: Start an application on the device running Fully Kiosk Browser.
target:
device:
integration: fully_kiosk
fields:
application:
name: Application
description: Package name of the application to start.
example: "de.ozerov.fully"
required: true
selector:

View file

@ -105,5 +105,41 @@
"name": "Screen"
}
}
},
"services": {
"load_url": {
"name": "Load URL",
"description": "Loads a URL on Fully Kiosk Browser.",
"fields": {
"url": {
"name": "URL",
"description": "URL to load."
}
}
},
"set_config": {
"name": "Set Configuration",
"description": "Sets a configuration parameter on Fully Kiosk Browser.",
"fields": {
"key": {
"name": "Key",
"description": "Configuration parameter to set."
},
"value": {
"name": "Value",
"description": "Value for the configuration parameter."
}
}
},
"start_application": {
"name": "Start Application",
"description": "Starts an application on the device running Fully Kiosk Browser.",
"fields": {
"application": {
"name": "Application",
"description": "Package name of the application to start."
}
}
}
}
}