diff --git a/homeassistant/components/lcn/services.yaml b/homeassistant/components/lcn/services.yaml index 89fe884fa9a..8755551c46a 100644 --- a/homeassistant/components/lcn/services.yaml +++ b/homeassistant/components/lcn/services.yaml @@ -1,200 +1,612 @@ # Describes the format for available LCN services output_abs: + name: Output absolute brightness description: Set absolute brightness of output port in percent. fields: address: + name: Address description: Module address + required: true example: "myhome.s0.m7" + selector: + text: output: + name: Output description: Output port + required: true example: "output1" + selector: + select: + options: + - 'OUTPUT1' + - 'OUTPUT2' + - 'OUTPUT3' + - 'OUTPUT4' brightness: - description: Absolute brightness in percent (0..100) + name: Brightness + description: Absolute brightness in percent. + required: true example: 50 + selector: + number: + min: 0 + max: 100 transition: - description: Transition time in seconds + name: Transition + description: Transition time. example: 5 + default: 0 + selector: + number: + min: 0 + max: 486 + step: 0.1 + unit_of_measurement: seconds output_rel: + name: Output relative brightness description: Set relative brightness of output port in percent. fields: address: + name: Address description: Module address + required: true example: "myhome.s0.m7" + selector: + text: output: + name: Output description: Output port + required: true example: "output1" + selector: + select: + options: + - 'OUTPUT1' + - 'OUTPUT2' + - 'OUTPUT3' + - 'OUTPUT4' brightness: - description: Relative brightness in percent (-100..100) + name: Brightness + description: Relative brightness in percent. + required: true example: 50 - transition: - description: Transition time in seconds - example: 5 + selector: + number: + min: -100 + max: 100 + unit_of_measurement: '%' output_toggle: + name: Toggle output description: Toggle output port. fields: address: + name: Address description: Module address + required: true example: "myhome.s0.m7" + selector: + text: output: + name: Output description: Output port + required: true example: "output1" + selector: + select: + options: + - 'OUTPUT1' + - 'OUTPUT2' + - 'OUTPUT3' + - 'OUTPUT4' transition: - description: Transition time in seconds + name: Transition + description: Transition time. example: 5 + default: 0 + selector: + number: + min: 0 + max: 486 + step: 0.1 + unit_of_measurement: seconds relays: + name: Relays description: Set the relays status. fields: address: + name: Address description: Module address + required: true example: "myhome.s0.m7" + selector: + text: state: + name: State description: Relays states as string (1=on, 2=off, t=toggle, -=nochange) + required: true example: "t---001-" + selector: + text: led: + name: LED description: Set the led state. fields: address: + name: Address description: Module address + required: true example: "myhome.s0.m7" + selector: + text: led: + name: LED description: Led + required: true example: "led6" + selector: + select: + options: + - 'LED1' + - 'LED2' + - 'LED3' + - 'LED4' + - 'LED5' + - 'LED6' + - 'LED7' + - 'LED8' + - 'LED9' + - 'LED10' + - 'LED11' + - 'LED12' state: + name: State description: Led state + required: true example: "blink" - values: - - "on" - - "off" - - blink - - flicker + selector: + select: + options: + - 'blink' + - 'flicker' + - 'off' + - 'on' var_abs: + name: Set absolute variable description: Set absolute value of a variable or setpoint. fields: address: + name: Address description: Module address + required: true example: "myhome.s0.m7" + selector: + text: variable: + name: Variable description: Variable or setpoint name + required: true example: "var1" + default: NATIVE + selector: + select: + options: + - 'R1VAR' + - 'R2VAR' + - 'R1VARSETPOINT' + - 'R2VARSETPOINT' + - 'TVAR' + - 'VAR1ORTVAR' + - 'VAR2ORR1VAR' + - 'VAR3ORR2VAR' + - 'VAR1' + - 'VAR2' + - 'VAR3' + - 'VAR4' + - 'VAR5' + - 'VAR6' + - 'VAR7' + - 'VAR8' + - 'VAR9' + - 'VAR10' + - 'VAR11' + - 'VAR12' value: + name: Value description: Value to set example: "50" + default: 0 + selector: + number: + min: 0 + max: 100000 unit_of_measurement: + name: Unit of measurement description: Unit of value example: "celsius" + selector: + select: + options: + - '' + - '%' + - '°' + - '°C' + - '°F' + - 'AMPERE' + - 'AMP' + - 'A' + - 'DEGREE' + - 'NATIVE' + - 'K' + - 'LCN' + - 'LUX_T' + - 'LX_T' + - 'LUX_I' + - 'LUX' + - 'LX' + - 'M/S' + - 'METERPERSECOND' + - 'PERCENT' + - 'PPM' + - 'V' + - 'VOLT' var_reset: + name: Reset variable description: Reset value of variable or setpoint. fields: address: + name: Address description: Module address + required: true example: "myhome.s0.m7" variable: + name: Variable description: Variable or setpoint name + required: true example: "var1" + selector: + select: + options: + - 'R1VAR' + - 'R2VAR' + - 'R1VARSETPOINT' + - 'R2VARSETPOINT' + - 'TVAR' + - 'VAR1ORTVAR' + - 'VAR2ORR1VAR' + - 'VAR3ORR2VAR' + - 'VAR1' + - 'VAR2' + - 'VAR3' + - 'VAR4' + - 'VAR5' + - 'VAR6' + - 'VAR7' + - 'VAR8' + - 'VAR9' + - 'VAR10' + - 'VAR11' + - 'VAR12' var_rel: + name: Shift variable description: Shift value of a variable, setpoint or threshold. fields: address: + name: Address description: Module address + required: true example: "myhome.s0.m7" + selector: + text: variable: + name: Variable description: Variable or setpoint name + required: true example: "var1" + selector: + select: + options: + - 'R1VAR' + - 'R2VAR' + - 'R1VARSETPOINT' + - 'R2VARSETPOINT' + - 'THRS1' + - 'THRS2' + - 'THRS3' + - 'THRS4' + - 'THRS5' + - 'THRS2_1' + - 'THRS2_2' + - 'THRS2_3' + - 'THRS2_4' + - 'THRS3_1' + - 'THRS3_2' + - 'THRS3_3' + - 'THRS3_4' + - 'THRS4_1' + - 'THRS4_2' + - 'THRS4_3' + - 'THRS4_4' + - 'TVAR' + - 'VAR1ORTVAR' + - 'VAR2ORR1VAR' + - 'VAR3ORR2VAR' + - 'VAR1' + - 'VAR2' + - 'VAR3' + - 'VAR4' + - 'VAR5' + - 'VAR6' + - 'VAR7' + - 'VAR8' + - 'VAR9' + - 'VAR10' + - 'VAR11' + - 'VAR12' value: + name: Value description: Shift value example: "50" + default: 0 + selector: + number: + min: 0 + max: 100000 unit_of_measurement: + name: Unit of measurement description: Unit of value example: "celsius" + default: NATIVE + selector: + select: + options: + - '' + - '%' + - '°' + - '°C' + - '°F' + - 'AMPERE' + - 'AMP' + - 'A' + - 'DEGREE' + - 'NATIVE' + - 'K' + - 'LCN' + - 'LUX_T' + - 'LX_T' + - 'LUX_I' + - 'LUX' + - 'LX' + - 'M/S' + - 'METERPERSECOND' + - 'PERCENT' + - 'PPM' + - 'V' + - 'VOLT' value_reference: - description: Reference value (current or programmed) for setpoint and threshold + name: Reference value + description: Reference value for setpoint and threshold example: "current" - values: - - current - - prog + default: CURRENT + selector: + select: + options: + - 'CURRENT' + - 'PROG' lock_regulator: + name: Lock regulator description: Lock a regulator setpoint. fields: address: + name: Address description: Module address + required: true example: "myhome.s0.m7" + selector: + text: setpoint: + name: Setpoint description: Setpoint name + required: true example: "r1varsetpoint" + selector: + select: + options: + - 'THRS1' + - 'THRS2' + - 'THRS3' + - 'THRS4' + - 'THRS5' + - 'THRS2_1' + - 'THRS2_2' + - 'THRS2_3' + - 'THRS2_4' + - 'THRS3_1' + - 'THRS3_2' + - 'THRS3_3' + - 'THRS3_4' + - 'THRS4_1' + - 'THRS4_2' + - 'THRS4_3' + - 'THRS4_4' state: + name: State description: New setpoint state example: true + default: false + selector: + boolean: send_keys: + name: Send keys description: Send keys (which executes bound commands). fields: address: + name: Address description: Module address + required: true example: "myhome.s0.m7" + selector: + text: keys: + name: Keys description: Keys to send + required: true example: "a1a5d8" + selector: + text: state: + name: State description: "Key state upon sending (optional, must be hit for deferred)" example: "hit" - values: - - hit - - make - - break + default: HIT + selector: + select: + options: + - 'HIT' + - 'MAKE' + - 'BREAK' + - 'DONTSEND' time: - description: Send delay (optional) + name: Time + description: Send delay. example: 10 + default: 0 + selector: + number: + min: 0 + max: 60 time_unit: - description: Time unit of send delay (optional) + name: Time unit + description: Time unit of send delay. example: "s" + default: S + selector: + select: + options: + - 'D' + - 'DAY' + - 'DAYS' + - 'H' + - 'HOUR' + - 'HOURS' + - 'M' + - 'MIN' + - 'MINUTE' + - 'MINUTES' + - 'S' + - 'SEC' + - 'SECOND' + - 'SECONDS' lock_keys: + name: Lock keys description: Lock keys. fields: address: + name: Address description: Module address + required: true example: "myhome.s0.m7" + selector: + text: table: - description: "Table with keys to lock (optional, must be A for interval)." + name: Table + description: "Table with keys to lock (must be A for interval)." example: "A5" + default: A + selector: + text: state: + name: State description: Key lock states as string (1=on, 2=off, T=toggle, -=nochange) + required: true example: "1---t0--" + selector: + text: time: - description: Lock interval (optional) + name: Time + description: Lock interval. example: 10 + default: 0 + selector: + number: + min: 0 + max: 60 time_unit: - description: Time unit of lock interval (optional) + name: Time unit + description: Time unit of lock interval. example: "s" + default: S + selector: + select: + options: + - 'D' + - 'DAY' + - 'DAYS' + - 'H' + - 'HOUR' + - 'HOURS' + - 'M' + - 'MIN' + - 'MINUTE' + - 'MINUTES' + - 'S' + - 'SEC' + - 'SECOND' + - 'SECONDS' dyn_text: + name: Dynamic text description: Send dynamic text to LCN-GTxD displays. fields: address: + name: Address description: Module address + required: true example: "myhome.s0.m7" + selector: + text: row: - description: Text row 1..4 (support of 4 independent text rows) + name: Row + description: Text row. + required: true example: 1 + selector: + number: + min: 1 + max: 4 text: + name: Text description: Text to send (up to 60 characters encoded as UTF-8) + required: true example: "text up to 60 characters" + selector: + text: pck: + name: PCK description: Send arbitrary PCK command. fields: address: + name: Address description: Module address + required: true example: "myhome.s0.m7" + selector: + text: pck: + name: PCK description: PCK command (without address header) + required: true example: "PIN4" + selector: + text: diff --git a/homeassistant/components/lifx/services.yaml b/homeassistant/components/lifx/services.yaml index 0ea0cb7a696..5f4784630aa 100644 --- a/homeassistant/components/lifx/services.yaml +++ b/homeassistant/components/lifx/services.yaml @@ -1,77 +1,168 @@ set_state: - description: Set a color/brightness and possibliy turn the light on/off. + name: Set State + description: Set a color/brightness and possibly turn the light on/off. + target: + entity: + integration: lifx + domain: light fields: - entity_id: - description: Name(s) of entities to set a state on. - example: "light.garage" - "...": - description: All turn_on parameters can be used to specify a color. infrared: - description: Automatic infrared level (0..255) when light brightness is low. + name: infrared + description: Automatic infrared level when light brightness is low. example: 255 + selector: + number: + min: 0 + max: 255 zones: + name: Zones description: List of zone numbers to affect (8 per LIFX Z, starts at 0). example: "[0,5]" + selector: + object: transition: - description: Duration in seconds it takes to get to the final state. + name: Transition + description: Duration it takes to get to the final state. example: 10 + selector: + number: + min: 0 + max: 3600 + unit_of_measurement: seconds power: - description: Turn the light on (True) or off (False). Leave out to keep the power as it is. + name: Power + description: Turn the light on or off. Leave out to keep the power as it is. example: false + selector: + boolean: effect_pulse: + name: Pulse effect description: Run a flash effect by changing to a color and back. + target: + entity: + integration: lifx + domain: light fields: - entity_id: - description: Name(s) of entities to run the effect on. - example: "light.kitchen" mode: - description: "Decides how colors are changed. Possible values: blink, breathe, ping, strobe, solid." + name: Mode + description: "Decides how colors are changed." example: strobe + selector: + select: + options: + - 'blink' + - 'breathe' + - 'ping' + - 'strobe' + - 'solid' brightness: - description: Number between 0..255 indicating brightness of the temporary color. + name: Brightness + description: Number indicating brightness of the temporary color. example: 120 + selector: + number: + min: 0 + max: 255 color_name: + name: Color name description: A human readable color name. example: "red" + selector: + text: rgb_color: + name: RGB color description: The temporary color in RGB-format. example: "[255, 100, 100]" + selector: + object: period: - description: Duration of the effect in seconds (default 1.0). + name: Period + description: Duration of the effect. example: 3 + default: 1.0 + selector: + number: + min: 0.05 + max: 60.00 + step: 0.05 + unit_of_measurement: seconds cycles: - description: Number of times the effect should run (default 1.0). + name: Cycles + description: Number of times the effect should run. example: 2 + default: 1 + selector: + number: + min: 1 + max: 10000 power_on: - description: Powered off lights are temporarily turned on during the effect (default True). + name: Power on + description: Powered off lights are temporarily turned on during the effect. example: false + default: true + selector: + boolean: effect_colorloop: + name: Color loop effect description: Run an effect with looping colors. + target: + entity: + integration: lifx + domain: light fields: - entity_id: - description: Name(s) of entities to run the effect on. - example: "light.disco1, light.disco2, light.disco3" brightness: - description: Number between 0 and 255 indicating brightness of the effect. Leave this out to maintain the current brightness of each participating light. + name: Brightness + description: Number indicating brightness of the effect. Leave this out to maintain the current brightness of each participating light. example: 120 + selector: + number: + min: 0 + max: 255 period: - description: Duration (in seconds) between color changes (default 60). + name: Period + description: Duration between color changes. example: 180 + default: 60 + selector: + number: + min: 0.05 + max: 3600.00 + step: 0.05 + unit_of_measurement: seconds change: - description: Hue movement per period, in degrees on a color wheel (ranges from 0 to 360, default 20). + name: Change + description: Hue movement per period, in degrees on a color wheel. example: 45 + default: 20 + selector: + number: + min: 0 + max: 360 + unit_of_measurement: '°' spread: - description: Maximum hue difference between participating lights, in degrees on a color wheel (ranges from 0 to 360, default 30). + name: Spread + description: Maximum hue difference between participating lights, in degrees on a color wheel. example: 0 + default: 30 + selector: + number: + min: 0 + max: 360 + unit_of_measurement: '°' power_on: - description: Powered off lights are temporarily turned on during the effect (default True). + name: Power on + description: Powered off lights are temporarily turned on during the effect. example: false + default: true + selector: + boolean: effect_stop: + name: Stop effect description: Stop a running effect. - fields: - entity_id: - description: Name(s) of entities to stop effects on. Leave out to stop effects everywhere. - example: "light.bedroom" + target: + entity: + integration: lifx + domain: light diff --git a/homeassistant/components/light/services.yaml b/homeassistant/components/light/services.yaml index dc12a72215d..34663df0288 100644 --- a/homeassistant/components/light/services.yaml +++ b/homeassistant/components/light/services.yaml @@ -569,7 +569,7 @@ toggle: mode: slider white_value: name: White level - description: Number between 0..255 indicating level of white. + description: Number indicating level of white. advanced: true example: "250" selector: @@ -581,7 +581,7 @@ toggle: brightness: name: Brightness value description: - Number between 0..255 indicating brightness, where 0 turns the light + Number indicating brightness, where 0 turns the light off, 1 is the minimum brightness and 255 is the maximum brightness supported by the light. advanced: true diff --git a/homeassistant/components/local_file/services.yaml b/homeassistant/components/local_file/services.yaml index 9430c02c0e6..08a954594a9 100644 --- a/homeassistant/components/local_file/services.yaml +++ b/homeassistant/components/local_file/services.yaml @@ -1,9 +1,19 @@ update_file_path: + name: Update file path description: Use this service to change the file displayed by the camera. fields: entity_id: + name: Entity description: Name of the entity_id of the camera to update. + required: true example: "camera.local_file" + selector: + entity: + domain: camera file_path: + name: file path description: The full path to the new image file to be displayed. + required: true example: "/config/www/images/image.jpg" + selector: + text: diff --git a/homeassistant/components/lock/services.yaml b/homeassistant/components/lock/services.yaml index f5f6077ddc1..f852c82e4e1 100644 --- a/homeassistant/components/lock/services.yaml +++ b/homeassistant/components/lock/services.yaml @@ -1,24 +1,46 @@ # Describes the format for available lock services clear_usercode: + name: Clear usercode description: Clear a usercode from lock. fields: node_id: + name: Node ID description: Node id of the lock. example: 18 + selector: + number: + min: 1 + max: 255 code_slot: + name: Code slot description: Code slot to clear code from. example: 1 + selector: + number: + min: 1 + max: 255 get_usercode: + name: Get usercode description: Retrieve a usercode from lock. fields: node_id: + name: Node ID description: Node id of the lock. example: 18 + selector: + number: + min: 1 + max: 255 code_slot: + name: Code slot description: Code slot to retrieve a code from. example: 1 + selector: + number: + min: 1 + max: 255 lock: name: Lock @@ -51,12 +73,23 @@ set_usercode: node_id: description: Node id of the lock. example: 18 + selector: + number: + min: 1 + max: 255 code_slot: description: Code slot to set the code. example: 1 + selector: + number: + min: 1 + max: 255 usercode: description: Code to set. + required: true example: 1234 + selector: + text: unlock: name: Unlock diff --git a/homeassistant/components/logbook/services.yaml b/homeassistant/components/logbook/services.yaml index 252b0b6a39b..e72d4c0a01f 100644 --- a/homeassistant/components/logbook/services.yaml +++ b/homeassistant/components/logbook/services.yaml @@ -1,29 +1,30 @@ log: - description: Create a custom entry in your logbook + name: Log + description: Create a custom entry in your logbook. fields: name: name: Name - description: Custom name for an entity, can be referenced with entity_id + description: Custom name for an entity, can be referenced with entity_id. required: true example: "Kitchen" selector: text: message: name: Message - description: Message of the custom logbook entry + description: Message of the custom logbook entry. required: true example: "is being used" selector: text: entity_id: name: Entity ID - description: Entity to reference in custom logbook entry [Optional] + description: Entity to reference in custom logbook entry. example: "light.kitchen" selector: entity: domain: name: Domain - description: Icon of domain to display in custom logbook entry [Optional] + description: Icon of domain to display in custom logbook entry. example: "light" selector: text: diff --git a/homeassistant/components/logger/services.yaml b/homeassistant/components/logger/services.yaml index 39c0bcfdfe1..51fe5fe331c 100644 --- a/homeassistant/components/logger/services.yaml +++ b/homeassistant/components/logger/services.yaml @@ -21,23 +21,63 @@ set_level: description: Set log level for integrations. fields: homeassistant.core: + name: Home Assistant Core description: "Example on how to change the logging level for a Home Assistant Core - integrations. Possible values are debug, info, warn, warning, error, - fatal, critical." + integrations." example: debug + selector: + select: + options: + - 'debug' + - 'critical' + - 'error' + - 'fatal' + - 'info' + - 'warn' + - 'warning' homeassistant.components.mqtt: + name: Home Assistant components mqtt description: - "Example on how to change the logging level for an Integration. Possible - values are debug, info, warn, warning, error, fatal, critical." + "Example on how to change the logging level for an Integration." example: warning + selector: + select: + options: + - 'debug' + - 'critical' + - 'error' + - 'fatal' + - 'info' + - 'warn' + - 'warning' custom_components.my_integration: + name: Custom components "my_integation" description: - "Example on how to change the logging level for a Custom Integration. - Possible values are debug, info, warn, warning, error, fatal, critical." + "Example on how to change the logging level for a Custom Integration." example: debug + selector: + select: + options: + - 'debug' + - 'critical' + - 'error' + - 'fatal' + - 'info' + - 'warn' + - 'warning' aiohttp: + name: aioHttp description: - "Example on how to change the logging level for a Python module. - Possible values are debug, info, warn, warning, error, fatal, critical." + "Example on how to change the logging level for a Python module." example: error + selector: + select: + options: + - 'debug' + - 'critical' + - 'error' + - 'fatal' + - 'info' + - 'warn' + - 'warning' diff --git a/homeassistant/components/logi_circle/services.yaml b/homeassistant/components/logi_circle/services.yaml index 8d1c7ca1485..00f2a7090fe 100644 --- a/homeassistant/components/logi_circle/services.yaml +++ b/homeassistant/components/logi_circle/services.yaml @@ -1,37 +1,81 @@ # Describes the format for available Logi Circle services set_config: + name: Set config description: Set a configuration property. fields: entity_id: + name: Entity description: Name(s) of entities to apply the operation mode to. example: "camera.living_room_camera" + selector: + entity: + integration: logi_circle + domain: camera mode: + name: Mode description: "Operation mode. Allowed values: LED, RECORDING_MODE." + required: true example: "RECORDING_MODE" + selector: + select: + options: + - 'LED' + - 'RECORDING_MODE' value: - description: "Operation value. Allowed values: true, false" + name: Value + description: "Operation value." + required: true example: true + selector: + boolean: livestream_snapshot: + name: Livestream snapshot description: Take a snapshot from the camera's livestream. Will wake the camera from sleep if required. fields: entity_id: + name: Entity description: Name(s) of entities to create snapshots from. example: "camera.living_room_camera" + selector: + entity: + integration: logi_circle + domain: camera filename: + name: File name description: Template of a Filename. Variable is entity_id. + required: true example: "/tmp/snapshot_{{ entity_id }}.jpg" + selector: + text: livestream_record: + name: Livestream record description: Take a video recording from the camera's livestream. fields: entity_id: + name: Entity description: Name(s) of entities to create recordings from. example: "camera.living_room_camera" + selector: + entity: + integration: logi_circle + domain: camera filename: + name: File name description: Template of a Filename. Variable is entity_id. + required: true example: "/tmp/snapshot_{{ entity_id }}.mp4" + selector: + text: duration: - description: Recording duration in seconds. + name: Duration + description: Recording duration. + required: true example: 60 + selector: + number: + min: 1 + max: 3600 + unit_of_measurement: seconds diff --git a/homeassistant/components/lovelace/services.yaml b/homeassistant/components/lovelace/services.yaml index b324b551e94..f9fc5999da6 100644 --- a/homeassistant/components/lovelace/services.yaml +++ b/homeassistant/components/lovelace/services.yaml @@ -1,4 +1,5 @@ # Describes the format for available lovelace services reload_resources: + name: Reload resources description: Reload Lovelace resources from YAML configuration diff --git a/homeassistant/components/matrix/services.yaml b/homeassistant/components/matrix/services.yaml index fe99bf6365a..66988def22d 100644 --- a/homeassistant/components/matrix/services.yaml +++ b/homeassistant/components/matrix/services.yaml @@ -1,12 +1,24 @@ send_message: + name: Send message description: Send message to target room(s) fields: message: + name: Message description: The message to be sent. + required: true example: This is a message I am sending to matrix + selector: + text: target: + name: Target description: A list of room(s) to send the message to. + required: true example: "#hasstest:matrix.org" + selector: + text: data: + name: Data description: Extended information of notification. Supports list of images. Optional. example: "{'images': ['/tmp/test.jpg']}" + selector: + text: diff --git a/homeassistant/components/media_extractor/services.yaml b/homeassistant/components/media_extractor/services.yaml index 1e58c19baf1..b3ef02c74e3 100644 --- a/homeassistant/components/media_extractor/services.yaml +++ b/homeassistant/components/media_extractor/services.yaml @@ -1,12 +1,28 @@ play_media: + name: Play media description: Downloads file from given URL. + target: + entity: + domain: media_player fields: - entity_id: - description: Name(s) of entities to play media on. - example: "media_player.living_room_chromecast" media_content_id: + name: Media content ID description: The ID of the content to play. Platform dependent. + required: true example: "https://soundcloud.com/bruttoband/brutto-11" + selector: + text: media_content_type: + name: Media content type description: The type of the content to play. Must be one of MUSIC, TVSHOW, VIDEO, EPISODE, CHANNEL or PLAYLIST MUSIC. + required: true example: "music" + selector: + select: + options: + - 'CHANNEL' + - 'EPISODE' + - 'PLAYLIST MUSIC' + - 'MUSIC' + - 'TVSHOW' + - 'VIDEO' diff --git a/homeassistant/components/media_player/services.yaml b/homeassistant/components/media_player/services.yaml index bec89ed44fb..9699fa5f8bb 100644 --- a/homeassistant/components/media_player/services.yaml +++ b/homeassistant/components/media_player/services.yaml @@ -176,7 +176,7 @@ repeat_set: fields: repeat: name: Repeat mode - description: Repeat mode to set (off, all, one). + description: Repeat mode to set. required: true example: "off" selector: @@ -187,18 +187,21 @@ repeat_set: - "one" join: + name: Join description: Group players together. Only works on platforms with support for player groups. - name: Join target: fields: group_members: + name: Group members description: The players which will be synced with the target player. example: - "media_player.multiroom_player2" - "media_player.multiroom_player3" + selector: + object: unjoin: description: diff --git a/homeassistant/components/melcloud/services.yaml b/homeassistant/components/melcloud/services.yaml index 40faa097d9b..f470076ee7f 100644 --- a/homeassistant/components/melcloud/services.yaml +++ b/homeassistant/components/melcloud/services.yaml @@ -1,23 +1,35 @@ set_vane_horizontal: + name: Set vane horizontal description: Sets horizontal vane position. + target: + entity: + integration: melcloud + domain: climate fields: - entity_id: - description: Name of the target entity - example: "climate.ac_1" position: + name: Position description: > Horizontal vane position. Possible options can be found in the vane_horizontal_positions state attribute. + required: true example: "auto" + selector: + text: set_vane_vertical: + name: Set vane vertical description: Sets vertical vane position. + target: + entity: + integration: melcloud + domain: climate fields: - entity_id: - description: Name of the target entity - example: "climate.ac_1" position: + name: Position description: > Vertical vane position. Possible options can be found in the vane_vertical_positions state attribute. + required: true example: "auto" + selector: + text: diff --git a/homeassistant/components/microsoft_face/services.yaml b/homeassistant/components/microsoft_face/services.yaml index 4b273286d83..e27e29dfc6f 100644 --- a/homeassistant/components/microsoft_face/services.yaml +++ b/homeassistant/components/microsoft_face/services.yaml @@ -1,48 +1,94 @@ create_group: + name: Create group description: Create a new person group. fields: name: + name: Name description: Name of the group. + required: true example: family + selector: + text: create_person: + name: Create person description: Create a new person in the group. fields: group: + name: Group description: Name of the group + required: true example: family + selector: + text: name: + name: Name description: Name of the person + required: true example: Hans + selector: + text: delete_group: + name: Delete group description: Delete a new person group. fields: name: + name: Name description: Name of the group. + required: true example: family + selector: + text: delete_person: + name: Delete person description: Delete a person in the group. fields: group: + name: Group description: Name of the group. + required: true example: family + selector: + text: name: + name: Name description: Name of the person. + required: true example: Hans + selector: + text: face_person: + name: Face person description: Add a new picture to a person. fields: camera_entity: + name: Camera entity description: Camera to take a picture. + required: true example: camera.door + selector: + text: group: + name: Group description: Name of the group. + required: true example: family + selector: + text: person: + name: Person description: Name of the person. + required: true example: Hans + selector: + text: train_group: + name: Train group description: Train a person group. fields: group: + name: Group description: Name of the group + required: true example: family + selector: + text: diff --git a/homeassistant/components/mill/services.yaml b/homeassistant/components/mill/services.yaml index 5223bf9c890..37b878580c9 100644 --- a/homeassistant/components/mill/services.yaml +++ b/homeassistant/components/mill/services.yaml @@ -1,15 +1,38 @@ set_room_temperature: + name: Set room temperature description: Set Mill room temperatures. fields: room_name: + name: Room name description: Name of room to change. + required: true example: "kitchen" + selector: + text: away_temp: + name: Away temperature description: Away temp. example: 12 + selector: + number: + min: 0 + max: 100 + unit_of_measurement: '°' comfort_temp: + name: Comfort temperature description: Comfort temp. example: 22 + selector: + number: + min: 0 + max: 100 + unit_of_measurement: '°' sleep_temp: + name: Sleep temperature description: Sleep temp. example: 17 + selector: + number: + min: 0 + max: 100 + unit_of_measurement: '°' diff --git a/homeassistant/components/min_max/services.yaml b/homeassistant/components/min_max/services.yaml index c91b36249ac..cca67d92144 100644 --- a/homeassistant/components/min_max/services.yaml +++ b/homeassistant/components/min_max/services.yaml @@ -1,2 +1,3 @@ reload: + name: Reload description: Reload all min_max entities. diff --git a/homeassistant/components/minio/services.yaml b/homeassistant/components/minio/services.yaml index 8fb8a267c3b..39e430ab165 100644 --- a/homeassistant/components/minio/services.yaml +++ b/homeassistant/components/minio/services.yaml @@ -1,35 +1,70 @@ get: + name: Get description: Download file from Minio. fields: bucket: + name: Bucket description: Bucket to use. + required: true example: camera-files + selector: + text: key: + name: Kay description: Object key of the file. + required: true example: front_camera/2018/01/02/snapshot_12512514.jpg + selector: + text: file_path: + name: File path description: File path on local filesystem. + required: true example: /data/camera_files/snapshot.jpg + selector: + text: put: + name: Put description: Upload file to Minio. fields: bucket: + name: Bucket description: Bucket to use. + required: true example: camera-files + selector: + text: key: + name: Key description: Object key of the file. + required: true example: front_camera/2018/01/02/snapshot_12512514.jpg + selector: + text: file_path: + name: File path description: File path on local filesystem. + required: true example: /data/camera_files/snapshot.jpg + selector: + text: remove: + name: Remove description: Delete file from Minio. fields: bucket: + name: Bucket description: Bucket to use. + required: true example: camera-files + selector: + text: key: + name: Key description: Object key of the file. + required: true example: front_camera/2018/01/02/snapshot_12512514.jpg + selector: + text: diff --git a/homeassistant/components/modbus/services.yaml b/homeassistant/components/modbus/services.yaml index ba3113db5e0..a3aa26a1a41 100644 --- a/homeassistant/components/modbus/services.yaml +++ b/homeassistant/components/modbus/services.yaml @@ -1,30 +1,72 @@ write_coil: + name: Write coil description: Write to a modbus coil. fields: address: + name: Address description: Address of the register to write to. + required: true example: 0 + selector: + number: + min: 1 + max: 255 state: + name: State description: State to write. + required: true example: false + selector: + object: unit: + name: Unit description: Address of the modbus unit. + required: true example: 21 + selector: + number: + min: 1 + max: 255 hub: - description: Optional Modbus hub name. A hub with the name 'default' is used if not specified. + name: Hub + description: Modbus hub name. example: "hub1" + default: "modbus_hub" + selector: + text: write_register: + name: Write register description: Write to a modbus holding register. fields: address: + name: Address description: Address of the holding register to write to. + required: true example: 0 + selector: + number: + min: 1 + max: 255 unit: + name: Unit description: Address of the modbus unit. + required: true example: 21 + selector: + number: + min: 1 + max: 255 value: + name: Value description: Value (single value or array) to write. + required: true example: "0 or [4,0]" + selector: + object: hub: - description: Optional Modbus hub name. A hub with the name 'default' is used if not specified. + name: Hub + description: Modbus hub name. example: "hub1" + default: "modbus_hub" + selector: + text: diff --git a/homeassistant/components/monoprice/services.yaml b/homeassistant/components/monoprice/services.yaml index a271d704768..93275fd2a1d 100644 --- a/homeassistant/components/monoprice/services.yaml +++ b/homeassistant/components/monoprice/services.yaml @@ -1,13 +1,15 @@ snapshot: + name: Snapshot description: Take a snapshot of the media player zone. - fields: - entity_id: - description: Name(s) of entities that will be snapshot. Platform dependent. - example: "media_player.living_room" + target: + entity: + integration: monoprice + domain: media_player restore: + name: Restore description: Restore a snapshot of the media player zone. - fields: - entity_id: - description: Name(s) of entities that will be restored. Platform dependent. - example: "media_player.living_room" + target: + entity: + integration: monoprice + domain: media_player diff --git a/homeassistant/components/motion_blinds/services.yaml b/homeassistant/components/motion_blinds/services.yaml index f46cc94bd43..08ee4098e27 100644 --- a/homeassistant/components/motion_blinds/services.yaml +++ b/homeassistant/components/motion_blinds/services.yaml @@ -1,14 +1,27 @@ # Describes the format for available motion blinds services set_absolute_position: + name: Set absolute position description: "Set the absolute position of the cover." + target: + entity: + integration: motion_blinds + domain: cover fields: - entity_id: - description: Name of the motion blind cover entity to control. - example: "cover.TopDownBottomUp-Bottom-0001" absolute_position: + name: Absolute position description: Absolute position to move to. + required: true example: 70 + selector: + number: + min: 1 + max: 100 width: - description: Optionally specify the width that is covered, only for TDBU Combined entities. + name: Width + description: Specify the width that is covered, only for TDBU Combined entities. example: 30 + selector: + number: + min: 1 + max: 100 diff --git a/homeassistant/components/mysensors/services.yaml b/homeassistant/components/mysensors/services.yaml index a93429550cd..e0fa5bf8e89 100644 --- a/homeassistant/components/mysensors/services.yaml +++ b/homeassistant/components/mysensors/services.yaml @@ -1,9 +1,19 @@ send_ir_code: + name: Send IR code description: Set an IR code as a state attribute for a MySensors IR device switch and turn the switch on. fields: entity_id: - description: Name(s) of entities that should have the IR code set and be turned on. Platform dependent. + name: Entity + description: Name of entity that should have the IR code set and be turned on. Platform dependent. example: "switch.living_room_1_1" + selector: + entity: + integration: mysensors + domain: switch V_IR_SEND: + name: IR send description: IR code to send. + required: true example: "0xC284" + selector: + text: