Files
core/homeassistant/components/kef/services.yaml
T
Bas Nijholt 3e0ccd2e86 Add KEF services for DSP (#31967)
* add services for DSP

* add homeassistant/components/kef/const.py

* add services.yaml

* fix set_mode

* fix services

* media_player.py fixes

* bump aiokef to 0.2.9

* update requirements_all.txt

* add basic sensor.py

* add DSP settings as attributes

* add message about kef.update_dsp

* remove sensor.py

* fix pylint issues

* update_dsp inside async_added_to_hass

* use {...} instead of dict(...)

* get DSP settings when connecting to HA or once on update

* simplify condition

* do not get mode twice

* remove async_added_to_hass

* use async_register_entity_service

* remove entity_id from schema and prepend _value

* invalidate self._dsp after setting a DSP setting

* schedule update_dsp every hour

* subscribe and unsubscribe on adding and removing to HA

* don't pass hass and set _update_dsp_task_remover to None after removing
2020-03-30 10:45:24 -07:00

98 lines
2.7 KiB
YAML

update_dsp:
description: Update all DSP settings.
fields:
entity_id:
description: The entity_id of the KEF speaker.
example: media_player.kef_lsx
set_mode:
description: Set the mode of the speaker.
fields:
entity_id:
description: The entity_id of the KEF speaker.
example: media_player.kef_lsx
desk_mode:
description: >
"Desk mode" (true or false)
example: true
wall_mode:
description: >
"Wall mode" (true or false)
example: true
phase_correction:
description: >
"Phase correction" (true or false)
example: true
high_pass:
description: >
"High-pass mode" (true or false)
example: true
sub_polarity:
description: >
"Sub polarity" ("-" or "+")
example: "+"
bass_extension:
description: >
"Bass extension" selector ("Less", "Standard", or "Extra")
example: "Extra"
set_desk_db:
description: Set the "Desk mode" slider of the speaker in dB.
fields:
entity_id:
description: The entity_id of the KEF speaker.
example: media_player.kef_lsx
db_value:
description: Value of the slider (-6 to 0 with steps of 0.5)
example: 0.0
set_wall_db:
description: Set the "Wall mode" slider of the speaker in dB.
fields:
entity_id:
description: The entity_id of the KEF speaker.
example: media_player.kef_lsx
db_value:
description: Value of the slider (-6 to 0 with steps of 0.5)
example: 0.0
set_treble_db:
description: Set desk the "Treble trim" slider of the speaker in dB.
fields:
entity_id:
description: The entity_id of the KEF speaker.
example: media_player.kef_lsx
db_value:
description: Value of the slider (-2 to 2 with steps of 0.5)
example: 0.0
set_high_hz:
description: Set the "High-pass mode" slider of the speaker in Hz.
fields:
entity_id:
description: The entity_id of the KEF speaker.
example: media_player.kef_lsx
hz_value:
description: Value of the slider (50 to 120 with steps of 5)
example: 95
set_low_hz:
description: Set the "Sub out low-pass frequency" slider of the speaker in Hz.
fields:
entity_id:
description: The entity_id of the KEF speaker.
example: media_player.kef_lsx
hz_value:
description: Value of the slider (40 to 250 with steps of 5)
example: 80
set_sub_db:
description: Set the "Sub gain" slider of the speaker in dB.
fields:
entity_id:
description: The entity_id of the KEF speaker.
example: media_player.kef_lsx
db_value:
description: Value of the slider (-10 to 10 with steps of 1)
example: 0