add support for quadruple button events for xiaomi-ble (#142760)

* bump xiaomi-ble to 0.36.0

* fix ruff

* fix ruff

* revert dependency bump
This commit is contained in:
Ernst Klamer 2025-04-12 20:18:26 +02:00 committed by GitHub
parent f13bdd0da4
commit 06d6155862
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
3 changed files with 19 additions and 0 deletions

View File

@ -37,6 +37,7 @@ LOCK_FINGERPRINT = "lock_fingerprint"
MOTION_DEVICE: Final = "motion_device"
DOUBLE_BUTTON: Final = "double_button"
TRIPPLE_BUTTON: Final = "tripple_button"
QUADRUPLE_BUTTON: Final = "quadruple_button"
REMOTE: Final = "remote"
REMOTE_FAN: Final = "remote_fan"
REMOTE_VENFAN: Final = "remote_ventilator_fan"
@ -48,6 +49,7 @@ BUTTON_PRESS_LONG: Final = "button_press_long"
BUTTON_PRESS_DOUBLE_LONG: Final = "button_press_double_long"
DOUBLE_BUTTON_PRESS_DOUBLE_LONG: Final = "double_button_press_double_long"
TRIPPLE_BUTTON_PRESS_DOUBLE_LONG: Final = "tripple_button_press_double_long"
QUADRUPLE_BUTTON_PRESS_DOUBLE_LONG: Final = "quadruple_button_press_double_long"
class XiaomiBleEvent(TypedDict):

View File

@ -47,6 +47,8 @@ from .const import (
LOCK_FINGERPRINT,
MOTION,
MOTION_DEVICE,
QUADRUPLE_BUTTON,
QUADRUPLE_BUTTON_PRESS_DOUBLE_LONG,
REMOTE,
REMOTE_BATHROOM,
REMOTE_FAN,
@ -123,6 +125,12 @@ EVENT_TYPES = {
DIMMER: ["dimmer"],
DOUBLE_BUTTON: ["button_left", "button_right"],
TRIPPLE_BUTTON: ["button_left", "button_middle", "button_right"],
QUADRUPLE_BUTTON: [
"button_left",
"button_mid_left",
"button_mid_right",
"button_right",
],
ERROR: ["error"],
FINGERPRINT: ["fingerprint"],
LOCK: ["lock"],
@ -205,6 +213,11 @@ TRIGGER_MODEL_DATA = {
event_types=EVENT_TYPES[TRIPPLE_BUTTON],
triggers=TRIGGERS_BY_TYPE[BUTTON_PRESS_DOUBLE_LONG],
),
QUADRUPLE_BUTTON_PRESS_DOUBLE_LONG: TriggerModelData(
event_class=EVENT_CLASS_BUTTON,
event_types=EVENT_TYPES[QUADRUPLE_BUTTON],
triggers=TRIGGERS_BY_TYPE[BUTTON_PRESS_DOUBLE_LONG],
),
ERROR: TriggerModelData(
event_class=EVENT_CLASS_ERROR,
event_types=EVENT_TYPES[ERROR],
@ -261,6 +274,8 @@ MODEL_DATA = {
"XMWXKG01YL": TRIGGER_MODEL_DATA[DOUBLE_BUTTON_PRESS_DOUBLE_LONG],
"K9B-2BTN": TRIGGER_MODEL_DATA[DOUBLE_BUTTON_PRESS_DOUBLE_LONG],
"K9B-3BTN": TRIGGER_MODEL_DATA[TRIPPLE_BUTTON_PRESS_DOUBLE_LONG],
"KS1": TRIGGER_MODEL_DATA[QUADRUPLE_BUTTON_PRESS_DOUBLE_LONG],
"KS1BP": TRIGGER_MODEL_DATA[QUADRUPLE_BUTTON_PRESS_DOUBLE_LONG],
"YLYK01YL": TRIGGER_MODEL_DATA[REMOTE],
"YLYK01YL-FANRC": TRIGGER_MODEL_DATA[REMOTE_FAN],
"YLYK01YL-VENFAN": TRIGGER_MODEL_DATA[REMOTE_VENFAN],

View File

@ -86,6 +86,8 @@
"trigger_type": {
"button": "Button \"{subtype}\"",
"button_left": "Button Left \"{subtype}\"",
"button_mid_left": "Button Mid Left \"{subtype}\"",
"button_mid_right": "Button Mid Right \"{subtype}\"",
"button_middle": "Button Middle \"{subtype}\"",
"button_right": "Button Right \"{subtype}\"",
"button_on": "Button On \"{subtype}\"",