Package ru.gentoos.ehouse.controller
Class DehumidifierController
java.lang.Object
ru.gentoos.ehouse.controller.Controller
ru.gentoos.ehouse.controller.DehumidifierController
- All Implemented Interfaces:
Dehumidifier
Контроллер осушителя Яндекс Умного дома (порт
Controllers/dehumidifier.py).
Устройство devices.types.humidifier (TUYA RMD-312) фактически
является осушителем: одновременно сенсор (влажность, температура) и привод
(on_off, mode, fan_speed).
-
Constructor Summary
ConstructorsConstructorDescriptionDehumidifierController(String deviceId, String apiKey, int stateRetryCount, int stateRetryDelay, HttpTransport transport, io.opentelemetry.api.trace.Tracer tracer) Инициализирует контроллер осушителя. -
Method Summary
Modifier and TypeMethodDescriptionbooleancontrolDehumidifier(boolean turnOn) Включает/выключает осушитель.getState()Получает состояние осушителя.booleansetFanSpeed(String speed) Устанавливает скорость вентилятора (low/high).booleanУстанавливает режим работы (quiet/normal/express).state()Последнее полученное состояние.intКоличество попыток получения состояния.intПауза между попытками, сек.toString()
-
Constructor Details
-
DehumidifierController
public DehumidifierController(String deviceId, String apiKey, int stateRetryCount, int stateRetryDelay, HttpTransport transport, io.opentelemetry.api.trace.Tracer tracer) Инициализирует контроллер осушителя.- Parameters:
deviceId- идентификатор устройстваapiKey- OAuth-токен Yandex IoT APIstateRetryCount- попыток получения состоянияstateRetryDelay- пауза между попытками, сек.transport- HTTP-транспортtracer- трейсер (может бытьnull)
-
-
Method Details
-
stateRetryCount
public int stateRetryCount()Description copied from interface:DehumidifierКоличество попыток получения состояния.- Specified by:
stateRetryCountin interfaceDehumidifier
-
stateRetryDelay
public int stateRetryDelay()Description copied from interface:DehumidifierПауза между попытками, сек.- Specified by:
stateRetryDelayin interfaceDehumidifier
-
state
Description copied from interface:DehumidifierПоследнее полученное состояние.- Specified by:
statein interfaceDehumidifier
-
getState
Description copied from interface:DehumidifierПолучает состояние осушителя.- Specified by:
getStatein interfaceDehumidifier- Returns:
- карта с ключами
device_id,name,online,power,humidity,temperature,mode,fan_speed,controls_locked
-
controlDehumidifier
public boolean controlDehumidifier(boolean turnOn) Description copied from interface:DehumidifierВключает/выключает осушитель.- Specified by:
controlDehumidifierin interfaceDehumidifier- Parameters:
turnOn-true— включить- Returns:
trueпри успехе
-
setMode
Устанавливает режим работы (quiet/normal/express).- Parameters:
mode- режим- Returns:
trueпри успехе
-
setFanSpeed
Устанавливает скорость вентилятора (low/high).- Parameters:
speed- скорость- Returns:
trueпри успехе
-
toString
-