hoffmation-base 3.0.0-alpha.8 → 3.0.0-alpha.81
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/index.d.ts +5 -1
- package/lib/index.js +28 -25
- package/lib/liquid-pid.d.ts +2 -5
- package/lib/liquid-pid.js +3 -5
- package/lib/models/action/baseAction.d.ts +4 -0
- package/lib/models/action/baseAction.js +10 -0
- package/lib/models/action/batteryLevelChangeAction.d.ts +13 -0
- package/lib/models/action/batteryLevelChangeAction.js +14 -0
- package/lib/models/action/humiditySensorChangeAction.d.ts +16 -0
- package/lib/models/action/humiditySensorChangeAction.js +15 -0
- package/lib/models/action/index.d.ts +9 -0
- package/lib/models/action/index.js +29 -0
- package/lib/models/action/motionSensorAction.d.ts +16 -0
- package/lib/models/action/motionSensorAction.js +15 -0
- package/lib/models/action/presenceGroupAnyMovementAction.d.ts +7 -0
- package/lib/models/action/presenceGroupAnyMovementAction.js +13 -0
- package/lib/models/action/presenceGroupFirstEnterAction.d.ts +7 -0
- package/lib/models/action/presenceGroupFirstEnterAction.js +13 -0
- package/lib/models/action/presenceGroupLastLeftAction.d.ts +7 -0
- package/lib/models/action/presenceGroupLastLeftAction.js +13 -0
- package/lib/models/action/shutterPositionChangedAction.d.ts +13 -0
- package/lib/models/action/shutterPositionChangedAction.js +15 -0
- package/lib/models/action/temperatureSensorChangeAction.d.ts +16 -0
- package/lib/models/action/temperatureSensorChangeAction.js +15 -0
- package/lib/models/base64Image.d.ts +0 -1
- package/lib/models/blockAutomaticSettings.d.ts +23 -0
- package/lib/models/blockAutomaticSettings.js +19 -0
- package/lib/models/command/ShutterSetLevelCommand.d.ts +9 -1
- package/lib/models/command/ShutterSetLevelCommand.js +9 -1
- package/lib/models/command/WindowRestoreDesiredPositionCommand.d.ts +7 -1
- package/lib/models/command/WindowRestoreDesiredPositionCommand.js +7 -1
- package/lib/models/command/WindowSetDesiredPositionCommand.d.ts +11 -2
- package/lib/models/command/WindowSetDesiredPositionCommand.js +11 -2
- package/lib/models/command/WindowSetRolloByWeatherStatusCommand.d.ts +7 -1
- package/lib/models/command/WindowSetRolloByWeatherStatusCommand.js +7 -1
- package/lib/models/command/actuatorSetStateCommand.d.ts +18 -3
- package/lib/models/command/actuatorSetStateCommand.js +15 -6
- package/lib/models/command/actuatorToggleCommand.d.ts +7 -2
- package/lib/models/command/actuatorToggleCommand.js +7 -4
- package/lib/models/command/actuatorWriteStateToDeviceCommand.d.ts +8 -1
- package/lib/models/command/actuatorWriteStateToDeviceCommand.js +12 -1
- package/lib/models/command/baseCommand.d.ts +23 -2
- package/lib/models/command/baseCommand.js +41 -1
- package/lib/models/command/blockAutomaticCommand.d.ts +32 -0
- package/lib/models/command/blockAutomaticCommand.js +40 -0
- package/lib/models/command/blockAutomaticLiftBlockCommand.d.ts +18 -0
- package/lib/models/command/blockAutomaticLiftBlockCommand.js +23 -0
- package/lib/models/command/blockAutomaticUntilCommand.d.ts +27 -0
- package/lib/models/command/blockAutomaticUntilCommand.js +32 -0
- package/lib/models/command/commandSource.d.ts +19 -0
- package/lib/models/command/commandSource.js +20 -0
- package/lib/models/command/commandType.d.ts +11 -0
- package/lib/models/command/commandType.js +11 -0
- package/lib/models/command/dimmerSetLightCommand.d.ts +13 -8
- package/lib/models/command/dimmerSetLightCommand.js +20 -14
- package/lib/models/command/floorSetAllShuttersCommand.d.ts +6 -5
- package/lib/models/command/floorSetAllShuttersCommand.js +6 -5
- package/lib/models/command/index.d.ts +3 -0
- package/lib/models/command/index.js +7 -1
- package/lib/models/command/lampSetLightCommand.d.ts +13 -2
- package/lib/models/command/lampSetLightCommand.js +15 -4
- package/lib/models/command/lampSetTimeBasedCommand.d.ts +15 -8
- package/lib/models/command/lampSetTimeBasedCommand.js +9 -11
- package/lib/models/command/lampToggleLightCommand.d.ts +7 -6
- package/lib/models/command/lampToggleLightCommand.js +7 -6
- package/lib/models/command/ledSetLightCommand.d.ts +21 -11
- package/lib/models/command/ledSetLightCommand.js +27 -17
- package/lib/models/command/lightGroupSwitchTimeConditionalCommand.d.ts +8 -1
- package/lib/models/command/lightGroupSwitchTimeConditionalCommand.js +8 -1
- package/lib/models/command/restoreTargetAutomaticValueCommand.d.ts +7 -2
- package/lib/models/command/restoreTargetAutomaticValueCommand.js +7 -4
- package/lib/models/command/roomRestoreLightCommand.d.ts +7 -1
- package/lib/models/command/roomRestoreLightCommand.js +7 -1
- package/lib/models/command/roomRestoreShutterPositionCommand.d.ts +8 -1
- package/lib/models/command/roomRestoreShutterPositionCommand.js +8 -1
- package/lib/models/command/roomSetLightTimeBasedCommand.d.ts +5 -4
- package/lib/models/command/roomSetLightTimeBasedCommand.js +5 -4
- package/lib/models/command/shutterSunriseUpCommand.d.ts +7 -1
- package/lib/models/command/shutterSunriseUpCommand.js +7 -1
- package/lib/models/command/shutterSunsetDownCommand.d.ts +7 -1
- package/lib/models/command/shutterSunsetDownCommand.js +7 -1
- package/lib/models/command/wledSetLightCommand.d.ts +16 -2
- package/lib/models/command/wledSetLightCommand.js +23 -7
- package/lib/models/connectionCallbacks.d.ts +4 -4
- package/lib/models/connectionCallbacks.js +1 -0
- package/lib/models/deviceConfig.d.ts +3 -3
- package/lib/models/deviceSettings/acSettings.d.ts +23 -5
- package/lib/models/deviceSettings/acSettings.js +28 -8
- package/lib/models/deviceSettings/actuatorSettings.d.ts +13 -4
- package/lib/models/deviceSettings/actuatorSettings.js +19 -9
- package/lib/models/deviceSettings/cameraSettings.d.ts +12 -0
- package/lib/models/deviceSettings/cameraSettings.js +12 -0
- package/lib/models/deviceSettings/dachsSettings.d.ts +23 -0
- package/lib/models/deviceSettings/dachsSettings.js +29 -1
- package/lib/models/deviceSettings/deviceSettings.d.ts +10 -0
- package/lib/models/deviceSettings/deviceSettings.js +16 -0
- package/lib/models/deviceSettings/dimmerSettings.d.ts +20 -0
- package/lib/models/deviceSettings/dimmerSettings.js +20 -0
- package/lib/models/deviceSettings/garageDoorOpenerSettings.d.ts +0 -1
- package/lib/models/deviceSettings/garageDoorOpenerSettings.js +0 -1
- package/lib/models/deviceSettings/handleSettings.d.ts +9 -0
- package/lib/models/deviceSettings/handleSettings.js +9 -0
- package/lib/models/deviceSettings/heaterSettings.d.ts +21 -9
- package/lib/models/deviceSettings/heaterSettings.js +21 -9
- package/lib/models/deviceSettings/ledSettings.d.ts +66 -0
- package/lib/models/deviceSettings/ledSettings.js +76 -18
- package/lib/models/deviceSettings/motionSensorSettings.d.ts +5 -1
- package/lib/models/deviceSettings/motionSensorSettings.js +5 -1
- package/lib/models/deviceSettings/sceneSettings.d.ts +4 -0
- package/lib/models/deviceSettings/shutterSettings.d.ts +11 -3
- package/lib/models/deviceSettings/shutterSettings.js +11 -3
- package/lib/models/deviceSettings/sonosDeviceSettings.d.ts +4 -0
- package/lib/models/deviceSettings/sonosDeviceSettings.js +4 -0
- package/lib/models/deviceSettings/tvSettings.d.ts +4 -0
- package/lib/models/deviceSettings/victronDeviceSettings.d.ts +34 -0
- package/lib/models/deviceSettings/victronDeviceSettings.js +34 -0
- package/lib/models/deviceSettings/wledSettings.d.ts +48 -0
- package/lib/models/deviceSettings/wledSettings.js +37 -13
- package/lib/models/groupSettings/heatGroupSettings.d.ts +12 -1
- package/lib/models/groupSettings/heatGroupSettings.js +12 -1
- package/lib/models/iIdHolder.d.ts +18 -0
- package/lib/models/index.d.ts +2 -1
- package/lib/models/index.js +4 -1
- package/lib/models/objectSettings.d.ts +5 -2
- package/lib/models/objectSettings.js +2 -2
- package/lib/models/persistence/EnergyCalculation.d.ts +27 -0
- package/lib/models/persistence/EnergyCalculation.js +30 -4
- package/lib/models/persistence/index.d.ts +0 -2
- package/lib/models/persistence/index.js +0 -2
- package/lib/models/rooms/RoomBase.d.ts +12 -1
- package/lib/models/rooms/RoomBase.js +17 -8
- package/lib/models/rooms/RoomSettings/RoomInitializationSettings.d.ts +2 -1
- package/lib/models/rooms/RoomSettings/RoomInitializationSettings.js +2 -2
- package/lib/models/rooms/RoomSettings/RoomSettingsController.d.ts +10 -1
- package/lib/models/rooms/RoomSettings/RoomSettingsController.js +2 -2
- package/lib/models/rooms/RoomSettings/iRoomDefaultSettings.d.ts +53 -3
- package/lib/models/rooms/RoomSettings/iRoomInitializationSettings.d.ts +10 -1
- package/lib/models/rooms/RoomSettings/roomDeviceAddingSettings.d.ts +4 -1
- package/lib/models/rooms/RoomSettings/roomDeviceAddingSettings.js +3 -0
- package/lib/models/rooms/RoomSettings/roomSettings.d.ts +55 -0
- package/lib/models/rooms/RoomSettings/roomSettings.js +55 -0
- package/lib/models/rooms/iRoomBase.d.ts +39 -0
- package/lib/models/rooms/iRoomImportEnforcer.d.ts +8 -0
- package/lib/models/timeCallback.d.ts +7 -0
- package/lib/models/timeCallback.js +16 -6
- package/lib/server/config/heatingMode.d.ts +2 -1
- package/lib/server/config/heatingMode.js +2 -1
- package/lib/server/config/iAsusConfig.d.ts +15 -0
- package/lib/server/config/iBlockAutomaticHandlerDefaults.d.ts +23 -0
- package/lib/server/config/iBlueIrisSettings.d.ts +14 -0
- package/lib/server/config/iBluetoothTrackingSettings.d.ts +9 -0
- package/lib/server/config/iConfig.d.ts +94 -6
- package/lib/server/config/iDachsSettings.d.ts +16 -0
- package/lib/server/config/iDaikinSettings.d.ts +17 -0
- package/lib/server/config/iEnergyManagerSettings.d.ts +13 -0
- package/lib/server/config/iEspresenseSettings.d.ts +10 -0
- package/lib/server/config/iGoveeSettings.d.ts +9 -0
- package/lib/server/config/iGoveeSettings.js +2 -0
- package/lib/server/config/iHeaterSettings.d.ts +8 -0
- package/lib/server/config/iIobrokerSettigns.d.ts +8 -0
- package/lib/server/config/iLogSettings.d.ts +40 -1
- package/lib/server/config/iMp3Settings.d.ts +10 -0
- package/lib/server/config/iMuellSettings.d.ts +7 -0
- package/lib/server/config/iNewsSettings.d.ts +13 -0
- package/lib/server/config/iPersistenceSettings.d.ts +10 -0
- package/lib/server/config/iPollySettings.d.ts +22 -0
- package/lib/server/config/iRestSettings.d.ts +10 -0
- package/lib/server/config/iSonosSettings.d.ts +14 -0
- package/lib/server/config/iTelegramSettings.d.ts +17 -0
- package/lib/server/config/iTibberSettings.d.ts +10 -0
- package/lib/server/config/iTimePair.d.ts +9 -0
- package/lib/server/config/iTimeSettings.d.ts +9 -0
- package/lib/server/config/iTranslationSettings.d.ts +10 -0
- package/lib/server/config/iUnifiConnectionOptions.d.ts +31 -0
- package/lib/server/config/iUnifiSettings.d.ts +8 -0
- package/lib/server/config/iVictronSettings.d.ts +14 -0
- package/lib/server/config/iWeatherSettings.d.ts +13 -0
- package/lib/server/config/index.d.ts +2 -0
- package/lib/server/devices/DeviceCapability.d.ts +1 -0
- package/lib/server/devices/DeviceCapability.js +1 -0
- package/lib/server/devices/DeviceInfo.d.ts +9 -0
- package/lib/server/devices/DeviceInfo.js +6 -0
- package/lib/server/devices/Griffe.js +1 -2
- package/lib/server/devices/Heizgruppen.js +2 -2
- package/lib/server/devices/IoBrokerBaseDevice.d.ts +34 -18
- package/lib/server/devices/IoBrokerBaseDevice.js +37 -21
- package/lib/server/devices/IoBrokerDeviceInfo.d.ts +8 -6
- package/lib/server/devices/IoBrokerDeviceInfo.js +50 -46
- package/lib/server/devices/baseDeviceInterfaces/iAcDevice.d.ts +41 -3
- package/lib/server/devices/baseDeviceInterfaces/iActuator.d.ts +18 -0
- package/lib/server/devices/baseDeviceInterfaces/iBaseDevice.d.ts +26 -1
- package/lib/server/devices/baseDeviceInterfaces/iBatteryDevice.d.ts +21 -4
- package/lib/server/devices/baseDeviceInterfaces/iBluetoothDetector.d.ts +15 -7
- package/lib/server/devices/baseDeviceInterfaces/iButtonSwitch.d.ts +42 -0
- package/lib/server/devices/baseDeviceInterfaces/iCameraDevice.d.ts +46 -3
- package/lib/server/devices/baseDeviceInterfaces/iDimmableLamp.d.ts +17 -2
- package/lib/server/devices/baseDeviceInterfaces/iEnergyManager.d.ts +36 -2
- package/lib/server/devices/baseDeviceInterfaces/iExcessEnergyConsumer.d.ts +30 -2
- package/lib/server/devices/baseDeviceInterfaces/iGarageDoorOpener.d.ts +21 -0
- package/lib/server/devices/baseDeviceInterfaces/iHandleSensor.d.ts +24 -0
- package/lib/server/devices/baseDeviceInterfaces/iHeater.d.ts +40 -5
- package/lib/server/devices/baseDeviceInterfaces/iHumiditySensor.d.ts +21 -2
- package/lib/server/devices/baseDeviceInterfaces/iIlluminationSensor.d.ts +11 -0
- package/lib/server/devices/baseDeviceInterfaces/iLamp.d.ts +7 -2
- package/lib/server/devices/baseDeviceInterfaces/iLedRgbCct.d.ts +20 -0
- package/lib/server/devices/baseDeviceInterfaces/iLoadMeter.d.ts +5 -0
- package/lib/server/devices/baseDeviceInterfaces/iMagnetSensor.d.ts +31 -0
- package/lib/server/devices/baseDeviceInterfaces/iMagnetSensor.js +2 -0
- package/lib/server/devices/baseDeviceInterfaces/iMotionSensor.d.ts +23 -3
- package/lib/server/devices/baseDeviceInterfaces/iRoomDevice.d.ts +6 -0
- package/lib/server/devices/baseDeviceInterfaces/iScene.d.ts +31 -2
- package/lib/server/devices/baseDeviceInterfaces/iShutter.d.ts +25 -1
- package/lib/server/devices/baseDeviceInterfaces/iSmokeDetectorDevice.d.ts +12 -0
- package/lib/server/devices/baseDeviceInterfaces/iSpeaker.d.ts +30 -0
- package/lib/server/devices/baseDeviceInterfaces/iTemperatureSensor.d.ts +32 -3
- package/lib/server/devices/baseDeviceInterfaces/iTemporaryDisableAutomatic.d.ts +13 -0
- package/lib/server/devices/baseDeviceInterfaces/iTvDevice.d.ts +20 -0
- package/lib/server/devices/baseDeviceInterfaces/iVibrationSensor.d.ts +24 -5
- package/lib/server/devices/baseDeviceInterfaces/index.d.ts +1 -0
- package/lib/server/devices/blueIris/cameraDevice.d.ts +49 -34
- package/lib/server/devices/blueIris/cameraDevice.js +75 -75
- package/lib/server/devices/button/button.d.ts +0 -1
- package/lib/server/devices/button/button.js +0 -4
- package/lib/server/devices/button/buttonCallback.d.ts +5 -0
- package/lib/server/devices/button/buttonCallback.js +10 -0
- package/lib/server/devices/button/buttonCapabilities.d.ts +12 -0
- package/lib/server/devices/button/buttonCapabilities.js +12 -0
- package/lib/server/devices/button/index.d.ts +1 -0
- package/lib/server/devices/button/index.js +3 -0
- package/lib/server/devices/dachs/dachs.d.ts +46 -11
- package/lib/server/devices/dachs/dachs.js +113 -23
- package/lib/server/devices/dachs/dachsTemperatureSensor.d.ts +22 -4
- package/lib/server/devices/dachs/dachsTemperatureSensor.js +23 -5
- package/lib/server/devices/dachs/interfaces/DachsClientOptions.d.ts +30 -0
- package/lib/server/devices/dachs/interfaces/KeyListEntity.d.ts +0 -8
- package/lib/server/devices/dachs/interfaces/KeyListEntity.js +0 -8
- package/lib/server/devices/dachs/interfaces/dachsInfluxDataPoint.d.ts +12 -0
- package/lib/server/devices/dachs/interfaces/influxDbConnectionOptions.d.ts +21 -1
- package/lib/server/devices/dachs/lib/dachsHttpClient.d.ts +5 -2
- package/lib/server/devices/dachs/lib/dachsHttpClient.js +5 -4
- package/lib/server/devices/device-cluster.d.ts +4 -1
- package/lib/server/devices/device-cluster.js +9 -4
- package/lib/server/devices/deviceType.d.ts +5 -0
- package/lib/server/devices/deviceType.js +5 -0
- package/lib/server/devices/deviceUpdater.d.ts +0 -3
- package/lib/server/devices/deviceUpdater.js +26 -4
- package/lib/server/devices/devices.d.ts +53 -7
- package/lib/server/devices/devices.js +78 -17
- package/lib/server/devices/espresense/detectedBluetoothDevice.d.ts +13 -0
- package/lib/server/devices/espresense/detectedBluetoothDevice.js +14 -1
- package/lib/server/devices/espresense/espresenseDevice.d.ts +31 -1
- package/lib/server/devices/espresense/espresenseDevice.js +28 -4
- package/lib/server/devices/espresense/trackedDistanceData.d.ts +12 -0
- package/lib/server/devices/espresense/trackedDistanceData.js +3 -0
- package/lib/server/devices/espresense/trilateration.d.ts +7 -0
- package/lib/server/devices/espresense/trilateration.js +7 -0
- package/lib/server/devices/espresense/trilaterationBasePoint.d.ts +6 -0
- package/lib/server/devices/espresense/trilaterationBasePoint.js +3 -0
- package/lib/server/devices/espresense/trilaterationPoint.d.ts +1 -1
- package/lib/server/devices/espresense/trilaterationPoint.js +3 -1
- package/lib/server/devices/groups/Window.d.ts +14 -3
- package/lib/server/devices/groups/Window.js +28 -11
- package/lib/server/devices/groups/base-group.d.ts +4 -0
- package/lib/server/devices/groups/base-group.js +3 -0
- package/lib/server/devices/groups/heatGroup.d.ts +8 -6
- package/lib/server/devices/groups/heatGroup.js +11 -11
- package/lib/server/devices/groups/lightGroup.d.ts +10 -2
- package/lib/server/devices/groups/lightGroup.js +20 -39
- package/lib/server/devices/groups/presenceGroup.d.ts +17 -6
- package/lib/server/devices/groups/presenceGroup.js +73 -63
- package/lib/server/devices/groups/tasterGroup.js +6 -6
- package/lib/server/devices/groups/windowGroup.d.ts +16 -1
- package/lib/server/devices/groups/windowGroup.js +22 -7
- package/lib/server/devices/hmIPDevices/hmIpAccessPoint.d.ts +1 -0
- package/lib/server/devices/hmIPDevices/hmIpAccessPoint.js +1 -0
- package/lib/server/devices/hmIPDevices/hmIpBewegung.d.ts +9 -6
- package/lib/server/devices/hmIPDevices/hmIpBewegung.js +10 -11
- package/lib/server/devices/hmIPDevices/hmIpDevice.d.ts +1 -2
- package/lib/server/devices/hmIPDevices/hmIpDevice.js +2 -3
- package/lib/server/devices/hmIPDevices/hmIpGriff.d.ts +36 -5
- package/lib/server/devices/hmIPDevices/hmIpGriff.js +76 -33
- package/lib/server/devices/hmIPDevices/hmIpHeizgruppe.d.ts +25 -6
- package/lib/server/devices/hmIPDevices/hmIpHeizgruppe.js +27 -14
- package/lib/server/devices/hmIPDevices/hmIpHeizung.d.ts +13 -3
- package/lib/server/devices/hmIPDevices/hmIpHeizung.js +33 -12
- package/lib/server/devices/hmIPDevices/hmIpLampe.d.ts +7 -1
- package/lib/server/devices/hmIPDevices/hmIpLampe.js +11 -7
- package/lib/server/devices/hmIPDevices/hmIpPraezenz.d.ts +19 -9
- package/lib/server/devices/hmIPDevices/hmIpPraezenz.js +33 -11
- package/lib/server/devices/hmIPDevices/hmIpRoll.d.ts +4 -2
- package/lib/server/devices/hmIPDevices/hmIpRoll.js +25 -23
- package/lib/server/devices/hmIPDevices/hmIpTaster.d.ts +28 -4
- package/lib/server/devices/hmIPDevices/hmIpTaster.js +37 -8
- package/lib/server/devices/hmIPDevices/hmIpTherm.d.ts +11 -1
- package/lib/server/devices/hmIPDevices/hmIpTherm.js +26 -5
- package/lib/server/devices/hmIPDevices/hmIpTuer.d.ts +9 -1
- package/lib/server/devices/hmIPDevices/hmIpTuer.js +17 -4
- package/lib/server/devices/hmIPDevices/hmIpWippe.d.ts +27 -0
- package/lib/server/devices/hmIPDevices/hmIpWippe.js +3 -0
- package/lib/server/devices/iDeviceUpdater.d.ts +14 -0
- package/lib/server/devices/index.d.ts +8 -2
- package/lib/server/devices/index.js +11 -2
- package/lib/server/devices/jsObject/jsObjectEnergyManager.d.ts +5 -1
- package/lib/server/devices/jsObject/jsObjectEnergyManager.js +9 -3
- package/lib/server/devices/nameAmountValuePair.d.ts +5 -0
- package/lib/server/devices/nameAmountValuePair.js +10 -0
- package/lib/server/devices/scene/room-scene.d.ts +23 -7
- package/lib/server/devices/scene/room-scene.js +18 -4
- package/lib/server/devices/sharedFunctions/lampUtils.d.ts +11 -2
- package/lib/server/devices/sharedFunctions/lampUtils.js +79 -25
- package/lib/server/devices/shelly/index.d.ts +1 -0
- package/lib/server/devices/shelly/index.js +3 -1
- package/lib/server/devices/shelly/shellyActuator.d.ts +33 -0
- package/lib/server/devices/shelly/shellyActuator.js +84 -0
- package/lib/server/devices/shelly/shellyDevice.d.ts +2 -1
- package/lib/server/devices/shelly/shellyDevice.js +2 -1
- package/lib/server/devices/shelly/shellyTrv.d.ts +37 -18
- package/lib/server/devices/shelly/shellyTrv.js +66 -45
- package/lib/server/devices/smartGarden/index.d.ts +6 -0
- package/lib/server/devices/smartGarden/index.js +22 -0
- package/lib/server/devices/smartGarden/smartGardenDevice.d.ts +33 -0
- package/lib/server/devices/smartGarden/smartGardenDevice.js +98 -0
- package/lib/server/devices/smartGarden/smartGardenDeviceRegistrationInfo.d.ts +9 -0
- package/lib/server/devices/smartGarden/smartGardenDeviceRegistrationInfo.js +13 -0
- package/lib/server/devices/smartGarden/smartGardenMower.d.ts +35 -0
- package/lib/server/devices/smartGarden/smartGardenMower.js +107 -0
- package/lib/server/devices/smartGarden/smartGardenSensor.d.ts +42 -0
- package/lib/server/devices/smartGarden/smartGardenSensor.js +119 -0
- package/lib/server/devices/smartGarden/smartGardenService.d.ts +7 -0
- package/lib/server/devices/smartGarden/smartGardenService.js +52 -0
- package/lib/server/devices/smartGarden/smartGardenValve.d.ts +36 -0
- package/lib/server/devices/smartGarden/smartGardenValve.js +105 -0
- package/lib/server/devices/tuya/tuyaDevice.d.ts +2 -1
- package/lib/server/devices/tuya/tuyaDevice.js +2 -1
- package/lib/server/devices/tuya/tuyaGarageOpener.d.ts +3 -0
- package/lib/server/devices/tuya/tuyaGarageOpener.js +3 -0
- package/lib/server/devices/tv/samsungTv.d.ts +1 -0
- package/lib/server/devices/tv/samsungTv.js +1 -0
- package/lib/server/devices/tv/tvDevice.d.ts +7 -1
- package/lib/server/devices/tv/tvDevice.js +4 -3
- package/lib/server/devices/velux/index.d.ts +4 -0
- package/lib/server/devices/velux/index.js +11 -0
- package/lib/server/devices/velux/veluxDevice.d.ts +13 -0
- package/lib/server/devices/velux/veluxDevice.js +43 -0
- package/lib/server/devices/velux/veluxDeviceRegistrationInfo.d.ts +9 -0
- package/lib/server/devices/velux/veluxDeviceRegistrationInfo.js +13 -0
- package/lib/server/devices/velux/veluxService.d.ts +7 -0
- package/lib/server/devices/velux/veluxService.js +44 -0
- package/lib/server/devices/velux/veluxShutter.d.ts +27 -0
- package/lib/server/devices/velux/veluxShutter.js +122 -0
- package/lib/server/devices/wledDevice.d.ts +15 -3
- package/lib/server/devices/wledDevice.js +42 -16
- package/lib/server/devices/zigbee/BaseDevices/ZigbeeActuator.d.ts +17 -4
- package/lib/server/devices/zigbee/BaseDevices/ZigbeeActuator.js +30 -15
- package/lib/server/devices/zigbee/BaseDevices/index.d.ts +1 -0
- package/lib/server/devices/zigbee/BaseDevices/index.js +3 -0
- package/lib/server/devices/zigbee/BaseDevices/zigbeeDevice.d.ts +4 -5
- package/lib/server/devices/zigbee/BaseDevices/zigbeeDevice.js +8 -17
- package/lib/server/devices/zigbee/BaseDevices/zigbeeDimmer.d.ts +10 -25
- package/lib/server/devices/zigbee/BaseDevices/zigbeeDimmer.js +25 -60
- package/lib/server/devices/zigbee/BaseDevices/zigbeeHeater.d.ts +34 -14
- package/lib/server/devices/zigbee/BaseDevices/zigbeeHeater.js +60 -34
- package/lib/server/devices/zigbee/BaseDevices/zigbeeLamp.d.ts +16 -0
- package/lib/server/devices/zigbee/BaseDevices/zigbeeLamp.js +35 -0
- package/lib/server/devices/zigbee/BaseDevices/zigbeeLedRGBCCT.d.ts +7 -7
- package/lib/server/devices/zigbee/BaseDevices/zigbeeLedRGBCCT.js +14 -14
- package/lib/server/devices/zigbee/BaseDevices/zigbeeMagnetContact.d.ts +26 -7
- package/lib/server/devices/zigbee/BaseDevices/zigbeeMagnetContact.js +52 -22
- package/lib/server/devices/zigbee/BaseDevices/zigbeeMotionSensor.d.ts +30 -15
- package/lib/server/devices/zigbee/BaseDevices/zigbeeMotionSensor.js +62 -38
- package/lib/server/devices/zigbee/BaseDevices/zigbeeShutter.d.ts +12 -4
- package/lib/server/devices/zigbee/BaseDevices/zigbeeShutter.js +28 -19
- package/lib/server/devices/zigbee/BaseDevices/zigbeeSwitch.d.ts +9 -1
- package/lib/server/devices/zigbee/BaseDevices/zigbeeSwitch.js +8 -1
- package/lib/server/devices/zigbee/zigbeeAqaraMagnetContact.d.ts +1 -0
- package/lib/server/devices/zigbee/zigbeeAqaraMagnetContact.js +1 -0
- package/lib/server/devices/zigbee/zigbeeAqaraOpple3Switch.d.ts +16 -0
- package/lib/server/devices/zigbee/zigbeeAqaraOpple3Switch.js +16 -0
- package/lib/server/devices/zigbee/zigbeeAquaraMotion.d.ts +6 -0
- package/lib/server/devices/zigbee/zigbeeAquaraMotion.js +7 -3
- package/lib/server/devices/zigbee/zigbeeAquaraVibra.d.ts +58 -11
- package/lib/server/devices/zigbee/zigbeeAquaraVibra.js +115 -27
- package/lib/server/devices/zigbee/zigbeeAquaraWater.d.ts +28 -9
- package/lib/server/devices/zigbee/zigbeeAquaraWater.js +54 -30
- package/lib/server/devices/zigbee/zigbeeBlitzShp.d.ts +15 -5
- package/lib/server/devices/zigbee/zigbeeBlitzShp.js +22 -14
- package/lib/server/devices/zigbee/zigbeeEuroHeater.d.ts +10 -4
- package/lib/server/devices/zigbee/zigbeeEuroHeater.js +16 -10
- package/lib/server/devices/zigbee/zigbeeHeimanSmoke.d.ts +34 -8
- package/lib/server/devices/zigbee/zigbeeHeimanSmoke.js +58 -20
- package/lib/server/devices/zigbee/zigbeeIkeaShutter.d.ts +1 -0
- package/lib/server/devices/zigbee/zigbeeIkeaShutter.js +2 -1
- package/lib/server/devices/zigbee/zigbeeIkeaSteckdose.d.ts +2 -0
- package/lib/server/devices/zigbee/zigbeeIkeaSteckdose.js +3 -1
- package/lib/server/devices/zigbee/zigbeeIlluActuator.d.ts +1 -2
- package/lib/server/devices/zigbee/zigbeeIlluActuator.js +2 -11
- package/lib/server/devices/zigbee/zigbeeIlluDimmer.d.ts +1 -1
- package/lib/server/devices/zigbee/zigbeeIlluDimmer.js +1 -1
- package/lib/server/devices/zigbee/zigbeeIlluLampe.d.ts +3 -10
- package/lib/server/devices/zigbee/zigbeeIlluLampe.js +3 -32
- package/lib/server/devices/zigbee/zigbeeIlluLedRGBCCT.d.ts +1 -1
- package/lib/server/devices/zigbee/zigbeeIlluLedRGBCCT.js +1 -1
- package/lib/server/devices/zigbee/zigbeeIlluShutter.d.ts +1 -0
- package/lib/server/devices/zigbee/zigbeeIlluShutter.js +5 -4
- package/lib/server/devices/zigbee/zigbeeInnr142C.d.ts +1 -1
- package/lib/server/devices/zigbee/zigbeeInnr142C.js +1 -1
- package/lib/server/devices/zigbee/zigbeeLinkindLedRgbCct.d.ts +1 -1
- package/lib/server/devices/zigbee/zigbeeLinkindLedRgbCct.js +1 -1
- package/lib/server/devices/zigbee/zigbeeOsramDimmer.d.ts +1 -1
- package/lib/server/devices/zigbee/zigbeeOsramDimmer.js +1 -1
- package/lib/server/devices/zigbee/zigbeeSMaBiTMagnetContact.d.ts +1 -0
- package/lib/server/devices/zigbee/zigbeeSMaBiTMagnetContact.js +1 -0
- package/lib/server/devices/zigbee/zigbeeSonoffMotion.d.ts +1 -0
- package/lib/server/devices/zigbee/zigbeeSonoffMotion.js +1 -0
- package/lib/server/devices/zigbee/zigbeeSonoffTemp.d.ts +34 -9
- package/lib/server/devices/zigbee/zigbeeSonoffTemp.js +50 -13
- package/lib/server/devices/zigbee/zigbeeTuyaValve.d.ts +10 -3
- package/lib/server/devices/zigbee/zigbeeTuyaValve.js +11 -6
- package/lib/server/devices/zigbee/zigbeeUbisysActuator.d.ts +9 -2
- package/lib/server/devices/zigbee/zigbeeUbisysActuator.js +10 -8
- package/lib/server/devices/zigbee/zigbeeUbisysLampe.d.ts +8 -9
- package/lib/server/devices/zigbee/zigbeeUbisysLampe.js +14 -24
- package/lib/server/devices/zigbee/zigbeeUbisysShutter.d.ts +1 -0
- package/lib/server/devices/zigbee/zigbeeUbisysShutter.js +2 -1
- package/lib/server/ioBroker/connection.d.ts +21 -22
- package/lib/server/ioBroker/connection.js +37 -28
- package/lib/server/ioBroker/ioBroker.main.d.ts +3 -0
- package/lib/server/ioBroker/ioBroker.main.js +12 -5
- package/lib/server/ioBroker/iobrokerConnectionLogging.d.ts +3 -0
- package/lib/server/ioBroker/iobrokerConnectionLogging.js +4 -0
- package/lib/server/ioBroker/socketIOConnectOptions.d.ts +2 -2
- package/lib/server/ioBroker/socketIOConnectOptions.js +1 -0
- package/lib/server/ioBroker/socketIOVisCommand.d.ts +5 -1
- package/lib/server/ioBroker/socketIOVisCommand.js +1 -0
- package/lib/server/services/ShutterService.js +7 -6
- package/lib/server/services/Sonos/OwnSonosDevices.d.ts +3 -0
- package/lib/server/services/Sonos/OwnSonosDevices.js +3 -0
- package/lib/server/services/Sonos/mp3-server.d.ts +3 -1
- package/lib/server/services/Sonos/mp3-server.js +3 -1
- package/lib/server/services/Sonos/own-sonos-device.d.ts +4 -1
- package/lib/server/services/Sonos/own-sonos-device.js +4 -4
- package/lib/server/services/Sonos/polly-service.d.ts +7 -1
- package/lib/server/services/Sonos/polly-service.js +10 -8
- package/lib/server/services/Sonos/sonos-service.d.ts +1 -5
- package/lib/server/services/Sonos/sonos-service.js +18 -17
- package/lib/server/services/Telegram/telegram-Commands.js +5 -5
- package/lib/server/services/Telegram/telegram-service.d.ts +2 -1
- package/lib/server/services/Telegram/telegram-service.js +8 -3
- package/lib/server/services/Translation/IRessourceObject.d.ts +13 -0
- package/lib/server/services/Translation/IRessourceObject.js +2 -0
- package/lib/server/services/Translation/iRessources.d.ts +1 -4
- package/lib/server/services/Translation/index.d.ts +1 -0
- package/lib/server/services/Translation/res.d.ts +34 -19
- package/lib/server/services/Translation/res.js +34 -19
- package/lib/server/services/ac/ac-device.d.ts +50 -9
- package/lib/server/services/ac/ac-device.js +115 -41
- package/lib/server/services/ac/daikin-service.js +4 -3
- package/lib/server/services/ac/own-ac-devices.d.ts +3 -0
- package/lib/server/services/ac/own-ac-devices.js +3 -0
- package/lib/server/services/ac/own-daikin-device.d.ts +25 -0
- package/lib/server/services/ac/own-daikin-device.js +40 -7
- package/lib/server/services/api/api-service.d.ts +118 -53
- package/lib/server/services/api/api-service.js +170 -80
- package/lib/server/services/blockAutomaticHandler.d.ts +13 -8
- package/lib/server/services/blockAutomaticHandler.js +34 -15
- package/lib/server/services/calendar/index.d.ts +1 -0
- package/lib/server/services/calendar/index.js +3 -0
- package/lib/server/services/calendar/muell-tonne.d.ts +11 -1
- package/lib/server/services/calendar/muell-tonne.js +10 -0
- package/lib/server/services/calendar/m/303/274ll-service.d.ts +23 -8
- package/lib/server/services/calendar/m/303/274ll-service.js +11 -5
- package/lib/server/services/calendar/name-date-pair.d.ts +5 -0
- package/lib/server/services/calendar/name-date-pair.js +10 -0
- package/lib/server/services/dbo/iPersist.d.ts +103 -0
- package/lib/server/services/dbo/postgreSqlPersist.d.ts +23 -0
- package/lib/server/services/dbo/postgreSqlPersist.js +28 -5
- package/lib/server/services/file-info.d.ts +5 -0
- package/lib/server/services/file-info.js +10 -0
- package/lib/server/services/govee/govee-device-data.d.ts +25 -0
- package/lib/server/services/govee/govee-device-data.js +2 -0
- package/lib/server/services/govee/govee-service.d.ts +7 -9
- package/lib/server/services/govee/govee-service.js +73 -48
- package/lib/server/services/govee/own-govee-device.d.ts +19 -17
- package/lib/server/services/govee/own-govee-device.js +58 -58
- package/lib/server/services/govee/own-govee-devices.d.ts +3 -0
- package/lib/server/services/govee/own-govee-devices.js +3 -0
- package/lib/server/services/https-service.d.ts +3 -2
- package/lib/server/services/https-service.js +4 -3
- package/lib/server/services/index.d.ts +1 -0
- package/lib/server/services/index.js +3 -0
- package/lib/server/services/log-service/index.d.ts +1 -0
- package/lib/server/services/log-service/index.js +3 -0
- package/lib/server/services/log-service/log-debug-type.d.ts +13 -0
- package/lib/server/services/log-service/log-debug-type.js +17 -0
- package/lib/server/services/log-service/log-filter-data.d.ts +21 -12
- package/lib/server/services/log-service/log-filter-data.js +6 -15
- package/lib/server/services/log-service/log-service.d.ts +17 -4
- package/lib/server/services/log-service/log-service.js +30 -17
- package/lib/server/services/news-service.d.ts +9 -7
- package/lib/server/services/news-service.js +14 -15
- package/lib/server/services/room-service/room-service.d.ts +20 -4
- package/lib/server/services/room-service/room-service.js +26 -10
- package/lib/server/services/settings-service.d.ts +6 -2
- package/lib/server/services/settings-service.js +3 -2
- package/lib/server/services/time-callback-service.js +1 -1
- package/lib/server/services/utils/RGB.d.ts +6 -0
- package/lib/server/services/utils/RGB.js +11 -0
- package/lib/server/services/utils/catchEmResult.d.ts +5 -0
- package/lib/server/services/utils/catchEmResult.js +10 -0
- package/lib/server/services/utils/energy-consumer-state-change.d.ts +6 -0
- package/lib/server/services/utils/energy-consumer-state-change.js +10 -0
- package/lib/server/services/utils/energy-manager-utils.d.ts +3 -14
- package/lib/server/services/utils/energy-manager-utils.js +2 -2
- package/lib/server/services/utils/iDisposeable.d.ts +6 -0
- package/lib/server/services/utils/index.d.ts +4 -1
- package/lib/server/services/utils/index.js +8 -1
- package/lib/server/services/utils/{ringstorage.d.ts → ringStorage.d.ts} +1 -1
- package/lib/server/services/utils/{ringstorage.js → ringStorage.js} +3 -3
- package/lib/server/services/utils/utils.d.ts +9 -14
- package/lib/server/services/victron/victron-device.d.ts +27 -10
- package/lib/server/services/victron/victron-device.js +94 -25
- package/lib/server/services/weather/index.d.ts +2 -0
- package/lib/server/services/weather/index.js +3 -0
- package/lib/server/services/weather/rain-next-minutes-info.d.ts +5 -0
- package/lib/server/services/weather/rain-next-minutes-info.js +10 -0
- package/lib/server/services/weather/weather-current.d.ts +0 -2
- package/lib/server/services/weather/weather-feelsLike.d.ts +15 -0
- package/lib/server/services/weather/weather-response.d.ts +16 -0
- package/lib/server/services/weather/weather-response.js +2 -0
- package/lib/server/services/weather/weather-service.d.ts +16 -18
- package/lib/server/services/weather/weather-service.js +37 -22
- package/lib/server/services/weather/weather-temp.d.ts +21 -0
- package/lib/tsconfig.tsbuildinfo +1 -1
- package/package.json +27 -29
- package/lib/models/iTemperaturDataPoint.d.ts +0 -9
- package/lib/models/persistence/RoomDetailInfo.d.ts +0 -6
- package/lib/models/persistence/RoomDetailInfo.js +0 -11
- package/lib/models/persistence/temperaturDataPoint.d.ts +0 -10
- package/lib/models/persistence/temperaturDataPoint.js +0 -14
- /package/lib/{models/iTemperaturDataPoint.js → server/config/iBlockAutomaticHandlerDefaults.js} +0 -0
|
@@ -10,38 +10,70 @@ const utils_1 = require("../utils");
|
|
|
10
10
|
const log_service_1 = require("../log-service");
|
|
11
11
|
const ac_mode_1 = require("./ac-mode");
|
|
12
12
|
const lodash_1 = __importDefault(require("lodash"));
|
|
13
|
-
const DeviceCapability_1 = require("../../devices/DeviceCapability");
|
|
14
13
|
const settings_service_1 = require("../settings-service");
|
|
15
14
|
const config_1 = require("../../config");
|
|
16
15
|
const blockAutomaticHandler_1 = require("../blockAutomaticHandler");
|
|
16
|
+
const weather_1 = require("../weather");
|
|
17
17
|
class AcDevice {
|
|
18
|
+
/**
|
|
19
|
+
* Whether the AC is allowed to cool (depends on the season
|
|
20
|
+
* @returns {boolean} True if the AC is allowed to cool
|
|
21
|
+
*/
|
|
22
|
+
get coolingAllowed() {
|
|
23
|
+
if (settings_service_1.SettingsService.heatMode !== config_1.HeatingMode.Summer) {
|
|
24
|
+
return false;
|
|
25
|
+
}
|
|
26
|
+
if (weather_1.WeatherService.active &&
|
|
27
|
+
weather_1.WeatherService.todayMaxTemp < this.settings.minOutdoorTempForCooling &&
|
|
28
|
+
weather_1.WeatherService.todayMaxTemp !== devices_1.UNDEFINED_TEMP_VALUE) {
|
|
29
|
+
// As it is quite cold outside there is no need to cool
|
|
30
|
+
return false;
|
|
31
|
+
}
|
|
32
|
+
return true;
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* Whether the AC is allowed to heat (depends on the season and the settings)
|
|
36
|
+
* @returns {boolean} True if the AC is allowed to heat
|
|
37
|
+
*/
|
|
38
|
+
get heatingAllowed() {
|
|
39
|
+
return settings_service_1.SettingsService.heatMode !== config_1.HeatingMode.Summer && this.settings.heatingAllowed;
|
|
40
|
+
}
|
|
41
|
+
/** @inheritDoc */
|
|
18
42
|
get temperature() {
|
|
19
43
|
return this._roomTemperature;
|
|
20
44
|
}
|
|
45
|
+
/** @inheritDoc */
|
|
21
46
|
get customName() {
|
|
22
47
|
return this.info.customName;
|
|
23
48
|
}
|
|
49
|
+
/** @inheritDoc */
|
|
24
50
|
get room() {
|
|
25
51
|
return this._room;
|
|
26
52
|
}
|
|
53
|
+
/** @inheritDoc */
|
|
27
54
|
set room(room) {
|
|
28
55
|
var _a, _b;
|
|
29
56
|
this._room = room;
|
|
30
57
|
if (room !== undefined && !this._movementCallbackAdded) {
|
|
31
58
|
this._movementCallbackAdded = true;
|
|
32
|
-
|
|
59
|
+
// TODO: Maybe change to any Movement
|
|
60
|
+
(_a = room === null || room === void 0 ? void 0 : room.PraesenzGroup) === null || _a === void 0 ? void 0 : _a.addAnyMovementCallback(this.onRoomAnyMovement.bind(this));
|
|
33
61
|
(_b = room === null || room === void 0 ? void 0 : room.PraesenzGroup) === null || _b === void 0 ? void 0 : _b.addLastLeftCallback(this.onRoomLastLeave.bind(this));
|
|
34
62
|
}
|
|
35
63
|
}
|
|
64
|
+
/** @inheritDoc */
|
|
36
65
|
get mode() {
|
|
37
66
|
return this._mode;
|
|
38
67
|
}
|
|
39
68
|
constructor(name, roomName, ip, acDeviceType) {
|
|
40
69
|
this.ip = ip;
|
|
41
70
|
this.acDeviceType = acDeviceType;
|
|
71
|
+
/** @inheritDoc */
|
|
42
72
|
this.currentConsumption = -1;
|
|
73
|
+
/** @inheritDoc */
|
|
43
74
|
this.settings = new models_1.AcSettings();
|
|
44
|
-
|
|
75
|
+
/** @inheritDoc */
|
|
76
|
+
this.deviceCapabilities = [devices_1.DeviceCapability.ac, devices_1.DeviceCapability.blockAutomatic];
|
|
45
77
|
this._activatedByExcessEnergy = false;
|
|
46
78
|
this._desiredTemperatur = devices_1.UNDEFINED_TEMP_VALUE;
|
|
47
79
|
this._mode = ac_mode_1.AcMode.Off;
|
|
@@ -52,40 +84,48 @@ class AcDevice {
|
|
|
52
84
|
this._info.customName = `${roomName} ${name}`;
|
|
53
85
|
this._info.room = roomName;
|
|
54
86
|
this._info.allDevicesKey = `ac-${roomName}-${name}`;
|
|
55
|
-
utils_1.Utils.guardedInterval(this.automaticCheck, 5 * 60 * 1000, this,
|
|
87
|
+
utils_1.Utils.guardedInterval(this.automaticCheck, 5 * 60 * 1000, this, false);
|
|
56
88
|
utils_1.Utils.guardedInterval(this.persist, 15 * 60 * 1000, this, true);
|
|
57
89
|
this.persistDeviceInfo();
|
|
58
90
|
this.loadDeviceSettings();
|
|
59
|
-
this.blockAutomationHandler = new blockAutomaticHandler_1.BlockAutomaticHandler(this.restoreTargetAutomaticValue.bind(this));
|
|
91
|
+
this.blockAutomationHandler = new blockAutomaticHandler_1.BlockAutomaticHandler(this.restoreTargetAutomaticValue.bind(this), this.log.bind(this));
|
|
60
92
|
}
|
|
93
|
+
/** @inheritDoc */
|
|
61
94
|
get energySettings() {
|
|
62
95
|
return this.settings.energySettings;
|
|
63
96
|
}
|
|
97
|
+
/** @inheritDoc */
|
|
64
98
|
get roomTemperature() {
|
|
65
99
|
return this._roomTemperature;
|
|
66
100
|
}
|
|
101
|
+
/** @inheritDoc */
|
|
67
102
|
get info() {
|
|
68
103
|
return this._info;
|
|
69
104
|
}
|
|
70
105
|
set roomTemperatur(val) {
|
|
71
106
|
this._roomTemperature = val;
|
|
72
107
|
}
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
108
|
+
/**
|
|
109
|
+
* The name of this device
|
|
110
|
+
* @returns The human readable name of this device
|
|
111
|
+
*/
|
|
76
112
|
get name() {
|
|
77
113
|
return this.info.customName;
|
|
78
114
|
}
|
|
115
|
+
/** @inheritDoc */
|
|
79
116
|
get id() {
|
|
80
117
|
var _a;
|
|
81
118
|
return (_a = this.info.allDevicesKey) !== null && _a !== void 0 ? _a : `ac-${this.info.room}-${this.info.customName}`;
|
|
82
119
|
}
|
|
120
|
+
/** @inheritDoc */
|
|
83
121
|
restoreTargetAutomaticValue() {
|
|
84
|
-
this.log(models_1.LogLevel.Debug,
|
|
122
|
+
this.log(models_1.LogLevel.Debug, 'Restore Target Automatic value');
|
|
85
123
|
this.automaticCheck();
|
|
86
124
|
}
|
|
125
|
+
/** @inheritDoc */
|
|
87
126
|
isAvailableForExcessEnergy() {
|
|
88
|
-
|
|
127
|
+
var _a, _b, _c, _d;
|
|
128
|
+
if (this.settings.useAutomatic || (((_b = (_a = this.room) === null || _a === void 0 ? void 0 : _a.HeatGroup) === null || _b === void 0 ? void 0 : _b.settings.automaticMode) && this.settings.heatingAllowed)) {
|
|
89
129
|
return false;
|
|
90
130
|
}
|
|
91
131
|
if (this.blockAutomationHandler.automaticBlockActive) {
|
|
@@ -94,48 +134,63 @@ class AcDevice {
|
|
|
94
134
|
if (!utils_1.Utils.timeWithinBorders(this.settings.minimumHours, this.settings.minimumMinutes, this.settings.maximumHours, this.settings.maximumMinutes)) {
|
|
95
135
|
return false;
|
|
96
136
|
}
|
|
97
|
-
|
|
137
|
+
const desiredMode = this.calculateDesiredMode();
|
|
138
|
+
if (desiredMode === ac_mode_1.AcMode.Cooling &&
|
|
139
|
+
this.settings.noCoolingOnMovement &&
|
|
140
|
+
((_d = (_c = this.room) === null || _c === void 0 ? void 0 : _c.PraesenzGroup) === null || _d === void 0 ? void 0 : _d.anyPresent(true))) {
|
|
141
|
+
return false;
|
|
142
|
+
}
|
|
143
|
+
return true;
|
|
98
144
|
}
|
|
145
|
+
/** @inheritDoc */
|
|
99
146
|
calculateDesiredMode() {
|
|
100
|
-
var _a, _b, _c, _d
|
|
147
|
+
var _a, _b, _c, _d;
|
|
101
148
|
const acOn = this.on;
|
|
102
|
-
|
|
149
|
+
const heatGroup = (_a = this.room) === null || _a === void 0 ? void 0 : _a.HeatGroup;
|
|
150
|
+
if (!heatGroup) {
|
|
151
|
+
this.log(models_1.LogLevel.Warn, "Can't calculate AC Mode as we have no heat group");
|
|
152
|
+
return ac_mode_1.AcMode.Off;
|
|
153
|
+
}
|
|
154
|
+
this._desiredTemperatur = heatGroup.desiredTemp;
|
|
103
155
|
if (this.settings.manualDisabled) {
|
|
104
|
-
acOn && this.log(models_1.LogLevel.Info,
|
|
156
|
+
acOn && this.log(models_1.LogLevel.Info, 'We should turn off now, as manual disable force is set.');
|
|
157
|
+
return ac_mode_1.AcMode.Off;
|
|
158
|
+
}
|
|
159
|
+
if ((_b = devices_1.Devices.energymanager) === null || _b === void 0 ? void 0 : _b.acBlocked) {
|
|
160
|
+
acOn && this.log(models_1.LogLevel.Info, 'We should turn off now, as energy-manager demands off.');
|
|
105
161
|
return ac_mode_1.AcMode.Off;
|
|
106
162
|
}
|
|
107
163
|
// Check Turn Off Time
|
|
108
164
|
if (!utils_1.Utils.timeWithinBorders(this.settings.minimumHours, this.settings.minimumMinutes, this.settings.maximumHours, this.settings.maximumMinutes)) {
|
|
109
|
-
acOn && this.log(models_1.LogLevel.Info,
|
|
165
|
+
acOn && this.log(models_1.LogLevel.Info, 'We should turn off now, to respect night settings.');
|
|
110
166
|
return ac_mode_1.AcMode.Off;
|
|
111
167
|
}
|
|
112
|
-
|
|
113
|
-
if (this.settings.useOwnTemperatureAndAutomatic) {
|
|
168
|
+
if (this.settings.useOwnTemperature) {
|
|
114
169
|
// Device is in automatic mode so ignore energy and room temperature
|
|
115
|
-
if (
|
|
170
|
+
if (this.settings.useAutomatic) {
|
|
116
171
|
return ac_mode_1.AcMode.Auto;
|
|
117
172
|
}
|
|
118
|
-
if (
|
|
173
|
+
if (this.heatingAllowed) {
|
|
119
174
|
return ac_mode_1.AcMode.Heating;
|
|
120
175
|
}
|
|
121
|
-
if (
|
|
176
|
+
else if (this.coolingAllowed) {
|
|
122
177
|
return ac_mode_1.AcMode.Cooling;
|
|
123
178
|
}
|
|
124
179
|
return ac_mode_1.AcMode.Off;
|
|
125
180
|
}
|
|
126
181
|
const temp = this.roomTemperature;
|
|
127
182
|
if (temp === undefined || temp === devices_1.UNDEFINED_TEMP_VALUE) {
|
|
128
|
-
this.log(models_1.LogLevel.Warn,
|
|
183
|
+
this.log(models_1.LogLevel.Warn, "Can't calculate AC Mode as we have no room temperature");
|
|
129
184
|
return ac_mode_1.AcMode.Off;
|
|
130
185
|
}
|
|
131
186
|
if (!heatGroup) {
|
|
132
|
-
this.log(models_1.LogLevel.Warn,
|
|
187
|
+
this.log(models_1.LogLevel.Warn, "Can't calculate AC Mode as we have no heat group");
|
|
133
188
|
return ac_mode_1.AcMode.Off;
|
|
134
189
|
}
|
|
135
190
|
let threshold = acOn ? 0.5 : 1.5;
|
|
136
191
|
let thresholdHeating = acOn ? 0.5 : 1.5;
|
|
137
192
|
let desiredMode = ac_mode_1.AcMode.Off;
|
|
138
|
-
const excessEnergy = (
|
|
193
|
+
const excessEnergy = (_d = (_c = devices_1.Devices.energymanager) === null || _c === void 0 ? void 0 : _c.excessEnergy) !== null && _d !== void 0 ? _d : -1;
|
|
139
194
|
if ((acOn ? 200 : 1000) < excessEnergy) {
|
|
140
195
|
// As there is plenty of energy to spare we plan to overshoot the target by 1 degree
|
|
141
196
|
threshold = -0.5;
|
|
@@ -144,13 +199,10 @@ class AcDevice {
|
|
|
144
199
|
const targetTemp = heatGroup.desiredTemp;
|
|
145
200
|
const coolUntil = targetTemp + threshold;
|
|
146
201
|
const heatUntil = targetTemp - thresholdHeating;
|
|
147
|
-
if (temp > coolUntil &&
|
|
202
|
+
if (temp > coolUntil && this.coolingAllowed) {
|
|
148
203
|
desiredMode = ac_mode_1.AcMode.Cooling;
|
|
149
|
-
if (this.settings.noCoolingOnMovement && ((_k = (_j = this.room) === null || _j === void 0 ? void 0 : _j.PraesenzGroup) === null || _k === void 0 ? void 0 : _k.anyPresent()) === true) {
|
|
150
|
-
return ac_mode_1.AcMode.Off;
|
|
151
|
-
}
|
|
152
204
|
}
|
|
153
|
-
else if (temp < heatUntil && this.
|
|
205
|
+
else if (temp < heatUntil && this.heatingAllowed) {
|
|
154
206
|
desiredMode = ac_mode_1.AcMode.Heating;
|
|
155
207
|
}
|
|
156
208
|
if (acOn ? desiredMode === ac_mode_1.AcMode.Off : desiredMode !== ac_mode_1.AcMode.Off) {
|
|
@@ -158,16 +210,13 @@ class AcDevice {
|
|
|
158
210
|
}
|
|
159
211
|
return desiredMode;
|
|
160
212
|
}
|
|
161
|
-
/**
|
|
162
|
-
* Disable automatic Turn-On and Turn-Off for given amount of ms.
|
|
163
|
-
* @param {number} timeout
|
|
164
|
-
*/
|
|
165
|
-
deactivateAutomaticChange(timeout = 60 * 60 * 1000) {
|
|
166
|
-
this.blockAutomationHandler.disableAutomatic(timeout);
|
|
167
|
-
}
|
|
213
|
+
/** @inheritDoc */
|
|
168
214
|
onTemperaturChange(newTemperatur) {
|
|
169
215
|
this.roomTemperatur = newTemperatur;
|
|
170
216
|
}
|
|
217
|
+
/**
|
|
218
|
+
* Persists the current AC-Information to the database
|
|
219
|
+
*/
|
|
171
220
|
persist() {
|
|
172
221
|
var _a;
|
|
173
222
|
if (!utils_1.Utils.anyDboActive || this.on === undefined) {
|
|
@@ -175,19 +224,35 @@ class AcDevice {
|
|
|
175
224
|
}
|
|
176
225
|
(_a = utils_1.Utils.dbo) === null || _a === void 0 ? void 0 : _a.persistAC(this);
|
|
177
226
|
}
|
|
227
|
+
/** @inheritDoc */
|
|
178
228
|
turnOnForExcessEnergy() {
|
|
229
|
+
var _a, _b;
|
|
179
230
|
if (this.blockAutomationHandler.automaticBlockActive) {
|
|
180
231
|
return;
|
|
181
232
|
}
|
|
182
233
|
this._activatedByExcessEnergy = true;
|
|
234
|
+
const desiredMode = this.calculateDesiredMode();
|
|
235
|
+
if (desiredMode === ac_mode_1.AcMode.Cooling &&
|
|
236
|
+
this.settings.noCoolingOnMovement &&
|
|
237
|
+
((_b = (_a = this.room) === null || _a === void 0 ? void 0 : _a.PraesenzGroup) === null || _b === void 0 ? void 0 : _b.anyPresent(true))) {
|
|
238
|
+
return;
|
|
239
|
+
}
|
|
183
240
|
this.setDesiredMode(this.calculateDesiredMode(), false);
|
|
184
241
|
this.turnOn();
|
|
185
242
|
}
|
|
243
|
+
/** @inheritDoc */
|
|
186
244
|
turnOffDueToMissingEnergy() {
|
|
187
245
|
this.turnOff();
|
|
188
246
|
}
|
|
247
|
+
/**
|
|
248
|
+
* Sets the state of the AC
|
|
249
|
+
* TODO: Migrate to new command system
|
|
250
|
+
* @param mode - The desired mode
|
|
251
|
+
* @param desiredTemp - The desired temperature (if unset it will be calculated)
|
|
252
|
+
* @param forceTime - The time in ms to force the AC to stay in this state (default 1h)
|
|
253
|
+
*/
|
|
189
254
|
setState(mode, desiredTemp, forceTime = 60 * 60 * 1000) {
|
|
190
|
-
this.blockAutomationHandler.disableAutomatic(forceTime);
|
|
255
|
+
this.blockAutomationHandler.disableAutomatic(new models_1.BlockAutomaticCommand(models_1.CommandSource.Unknown, forceTime));
|
|
191
256
|
this._mode = mode;
|
|
192
257
|
if (mode == ac_mode_1.AcMode.Off) {
|
|
193
258
|
this.turnOff();
|
|
@@ -196,6 +261,7 @@ class AcDevice {
|
|
|
196
261
|
this.setDesiredMode(mode, false, desiredTemp);
|
|
197
262
|
this.turnOn();
|
|
198
263
|
}
|
|
264
|
+
/** @inheritDoc */
|
|
199
265
|
log(level, message, debugType = log_service_1.LogDebugType.None) {
|
|
200
266
|
var _a, _b;
|
|
201
267
|
log_service_1.ServerLogService.writeLog(level, `${this.name}: ${message}`, {
|
|
@@ -205,12 +271,15 @@ class AcDevice {
|
|
|
205
271
|
deviceName: this.name,
|
|
206
272
|
});
|
|
207
273
|
}
|
|
274
|
+
/** @inheritDoc */
|
|
208
275
|
wasActivatedByExcessEnergy() {
|
|
209
276
|
return this._activatedByExcessEnergy;
|
|
210
277
|
}
|
|
278
|
+
/** @inheritDoc */
|
|
211
279
|
loadDeviceSettings() {
|
|
212
280
|
this.settings.initializeFromDb(this);
|
|
213
281
|
}
|
|
282
|
+
/** @inheritDoc */
|
|
214
283
|
persistDeviceInfo() {
|
|
215
284
|
utils_1.Utils.guardedTimeout(() => {
|
|
216
285
|
var _a;
|
|
@@ -218,6 +287,7 @@ class AcDevice {
|
|
|
218
287
|
}, 5000, this);
|
|
219
288
|
}
|
|
220
289
|
automaticCheck() {
|
|
290
|
+
var _a, _b;
|
|
221
291
|
if (this.blockAutomationHandler.automaticBlockActive) {
|
|
222
292
|
// We aren't allowed to turn on or off anyway --> exit
|
|
223
293
|
return;
|
|
@@ -228,26 +298,30 @@ class AcDevice {
|
|
|
228
298
|
return;
|
|
229
299
|
}
|
|
230
300
|
this.setDesiredMode(desiredMode, false);
|
|
231
|
-
if (desiredMode == ac_mode_1.AcMode.Off
|
|
301
|
+
if (desiredMode == ac_mode_1.AcMode.Off ||
|
|
302
|
+
(desiredMode === ac_mode_1.AcMode.Cooling &&
|
|
303
|
+
this.settings.noCoolingOnMovement &&
|
|
304
|
+
((_b = (_a = this.room) === null || _a === void 0 ? void 0 : _a.PraesenzGroup) === null || _b === void 0 ? void 0 : _b.anyPresent(true)))) {
|
|
232
305
|
this.turnOff();
|
|
233
306
|
return;
|
|
234
307
|
}
|
|
235
308
|
this.turnOn();
|
|
236
309
|
}
|
|
237
|
-
|
|
310
|
+
onRoomAnyMovement(_action) {
|
|
238
311
|
if (!this.settings.noCoolingOnMovement || !this.on || this.mode === ac_mode_1.AcMode.Heating) {
|
|
239
312
|
return;
|
|
240
313
|
}
|
|
241
|
-
this.log(models_1.LogLevel.Info,
|
|
314
|
+
this.log(models_1.LogLevel.Info, 'Something moved in the room. Turning off AC');
|
|
242
315
|
this.turnOff();
|
|
243
316
|
}
|
|
244
|
-
onRoomLastLeave() {
|
|
317
|
+
onRoomLastLeave(action) {
|
|
245
318
|
if (!this.settings.noCoolingOnMovement) {
|
|
246
319
|
return;
|
|
247
320
|
}
|
|
248
|
-
this.log(models_1.LogLevel.Info, `Last person left the room. Checking if we should turn on AC`);
|
|
321
|
+
this.log(models_1.LogLevel.Info, `Last person left the room (${action.reasonTrace}). Checking if we should turn on AC`);
|
|
249
322
|
this.restoreTargetAutomaticValue();
|
|
250
323
|
}
|
|
324
|
+
/** @inheritDoc */
|
|
251
325
|
toJSON() {
|
|
252
326
|
// eslint-disable-next-line
|
|
253
327
|
const result = lodash_1.default.omit(this, ['room', '_room']);
|
|
@@ -41,14 +41,14 @@ class DaikinService {
|
|
|
41
41
|
DaikinService.setAll(true);
|
|
42
42
|
Telegram_1.TelegramService.sendMessage([m.chat.id], 'Command executed');
|
|
43
43
|
return true;
|
|
44
|
-
},
|
|
44
|
+
}, "Turns all Ac's on without changing any settings"));
|
|
45
45
|
Telegram_1.TelegramService.addMessageCallback(new Telegram_1.TelegramMessageCallback('AcOff', /\/ac_off/, async (m) => {
|
|
46
46
|
if (m.from === undefined)
|
|
47
47
|
return false;
|
|
48
48
|
DaikinService.setAll(false, true);
|
|
49
49
|
Telegram_1.TelegramService.sendMessage([m.chat.id], 'Command executed');
|
|
50
50
|
return true;
|
|
51
|
-
},
|
|
51
|
+
}, "Turns all Ac's off without changing any settings"));
|
|
52
52
|
return new Promise((res, _rej) => {
|
|
53
53
|
var _a, _b;
|
|
54
54
|
this._daikinManager = new daikin_controller_1.DaikinManager({
|
|
@@ -68,6 +68,7 @@ class DaikinService {
|
|
|
68
68
|
});
|
|
69
69
|
});
|
|
70
70
|
}
|
|
71
|
+
// TODO: Migrate to new command system
|
|
71
72
|
static setAll(on, force = false) {
|
|
72
73
|
if (!this.isInitialized) {
|
|
73
74
|
return;
|
|
@@ -81,7 +82,7 @@ class DaikinService {
|
|
|
81
82
|
dev.turnOff();
|
|
82
83
|
}
|
|
83
84
|
if (force) {
|
|
84
|
-
dev.
|
|
85
|
+
dev.blockAutomationHandler.disableAutomatic(new models_1.BlockAutomaticCommand(models_1.CommandSource.Unknown, 180 * 60 * 1000));
|
|
85
86
|
}
|
|
86
87
|
}
|
|
87
88
|
}
|
|
@@ -5,22 +5,47 @@ import { DeviceType } from '../../devices';
|
|
|
5
5
|
export declare class OwnDaikinDevice extends AcDevice {
|
|
6
6
|
private _device;
|
|
7
7
|
private _mac;
|
|
8
|
+
/**
|
|
9
|
+
* The desired state of the device
|
|
10
|
+
*/
|
|
8
11
|
desiredState: boolean;
|
|
12
|
+
/**
|
|
13
|
+
* The desired humidity-state of the device
|
|
14
|
+
* @default 'AUTO'
|
|
15
|
+
*/
|
|
9
16
|
desiredHum: number | 'AUTO';
|
|
17
|
+
/**
|
|
18
|
+
* The desired mode of the device
|
|
19
|
+
* @default Mode.COLD
|
|
20
|
+
*/
|
|
10
21
|
desiredMode: number;
|
|
22
|
+
/** @inheritDoc */
|
|
11
23
|
deviceType: DeviceType;
|
|
12
24
|
private _on;
|
|
13
25
|
constructor(name: string, roomName: string, ip: string, _device: DaikinAC | undefined, _mac?: string | undefined);
|
|
14
26
|
get device(): DaikinAC | undefined;
|
|
27
|
+
/** @inheritDoc */
|
|
15
28
|
get on(): boolean;
|
|
16
29
|
set device(device: DaikinAC | undefined);
|
|
30
|
+
/** @inheritDoc */
|
|
17
31
|
setDesiredMode(mode: AcMode, writeToDevice?: boolean, desiredTemp?: number): void;
|
|
32
|
+
/** @inheritDoc */
|
|
18
33
|
turnOn(): void;
|
|
34
|
+
/** @inheritDoc */
|
|
19
35
|
turnOff(): void;
|
|
20
36
|
protected automaticCheck(): void;
|
|
21
37
|
private setDesiredInfo;
|
|
22
38
|
private updateInfo;
|
|
39
|
+
/**
|
|
40
|
+
* Handles the situation when the device is unreachable, attempts to reconnect and log the outcome.
|
|
41
|
+
*
|
|
42
|
+
* This function logs a warning message indicating that the device is unreachable,
|
|
43
|
+
* then attempts to reconnect using the `DaikinService.reconnect` method.
|
|
44
|
+
* If the reconnection is successful, it sets the desired information and schedules a timeout of 5000ms.
|
|
45
|
+
* If the reconnection fails, it logs an error message with the reason for the failure.
|
|
46
|
+
*/
|
|
23
47
|
private handleDeviceUnreach;
|
|
24
48
|
private handleParamNg;
|
|
49
|
+
/** @inheritDoc */
|
|
25
50
|
toJSON(): Partial<OwnDaikinDevice>;
|
|
26
51
|
}
|
|
@@ -20,15 +20,28 @@ class OwnDaikinDevice extends ac_device_1.AcDevice {
|
|
|
20
20
|
super(name, roomName, ip, acDeviceType_1.AcDeviceType.Daikin);
|
|
21
21
|
this._device = _device;
|
|
22
22
|
this._mac = _mac;
|
|
23
|
+
/**
|
|
24
|
+
* The desired state of the device
|
|
25
|
+
*/
|
|
23
26
|
this.desiredState = daikin_controller_1.Power.OFF;
|
|
27
|
+
/**
|
|
28
|
+
* The desired humidity-state of the device
|
|
29
|
+
* @default 'AUTO'
|
|
30
|
+
*/
|
|
24
31
|
this.desiredHum = 'AUTO';
|
|
32
|
+
/**
|
|
33
|
+
* The desired mode of the device
|
|
34
|
+
* @default Mode.COLD
|
|
35
|
+
*/
|
|
25
36
|
this.desiredMode = daikin_controller_1.Mode.COLD;
|
|
37
|
+
/** @inheritDoc */
|
|
26
38
|
this.deviceType = devices_1.DeviceType.Daikin;
|
|
27
39
|
this._on = false;
|
|
28
40
|
}
|
|
29
41
|
get device() {
|
|
30
42
|
return this._device;
|
|
31
43
|
}
|
|
44
|
+
/** @inheritDoc */
|
|
32
45
|
get on() {
|
|
33
46
|
return this._on;
|
|
34
47
|
}
|
|
@@ -45,6 +58,7 @@ class OwnDaikinDevice extends ac_device_1.AcDevice {
|
|
|
45
58
|
}
|
|
46
59
|
void this.updateInfo();
|
|
47
60
|
}
|
|
61
|
+
/** @inheritDoc */
|
|
48
62
|
setDesiredMode(mode, writeToDevice = true, desiredTemp) {
|
|
49
63
|
let newMode = -1;
|
|
50
64
|
switch (mode) {
|
|
@@ -67,13 +81,15 @@ class OwnDaikinDevice extends ac_device_1.AcDevice {
|
|
|
67
81
|
this.setDesiredInfo(false, desiredTemp);
|
|
68
82
|
}
|
|
69
83
|
}
|
|
84
|
+
/** @inheritDoc */
|
|
70
85
|
turnOn() {
|
|
71
|
-
this.log(models_1.LogLevel.Info,
|
|
86
|
+
this.log(models_1.LogLevel.Info, 'Turning on');
|
|
72
87
|
this.desiredState = daikin_controller_1.Power.ON;
|
|
73
88
|
this.setDesiredInfo();
|
|
74
89
|
}
|
|
90
|
+
/** @inheritDoc */
|
|
75
91
|
turnOff() {
|
|
76
|
-
this.log(models_1.LogLevel.Info,
|
|
92
|
+
this.log(models_1.LogLevel.Info, 'Turning off');
|
|
77
93
|
this._activatedByExcessEnergy = false;
|
|
78
94
|
this.desiredState = daikin_controller_1.Power.OFF;
|
|
79
95
|
this._mode = ac_mode_1.AcMode.Off;
|
|
@@ -86,13 +102,21 @@ class OwnDaikinDevice extends ac_device_1.AcDevice {
|
|
|
86
102
|
});
|
|
87
103
|
}
|
|
88
104
|
setDesiredInfo(retry = false, forceTemp) {
|
|
89
|
-
var _a;
|
|
105
|
+
var _a, _b;
|
|
106
|
+
if (this._desiredTemperatur === devices_1.UNDEFINED_TEMP_VALUE) {
|
|
107
|
+
if (((_a = this.room) === null || _a === void 0 ? void 0 : _a.HeatGroup) === undefined) {
|
|
108
|
+
this.log(models_1.LogLevel.Error, `Neither desired temperature nor HeatGroup is set for ${this.name}(${this.ip})`);
|
|
109
|
+
return;
|
|
110
|
+
}
|
|
111
|
+
this._desiredTemperatur = this.room.HeatGroup.desiredTemp;
|
|
112
|
+
return;
|
|
113
|
+
}
|
|
90
114
|
let targetTemp = this._desiredTemperatur;
|
|
91
115
|
if (this.desiredMode == daikin_controller_1.Mode.HOT) {
|
|
92
|
-
targetTemp = this.settings.
|
|
116
|
+
targetTemp = this.settings.useOwnTemperature ? targetTemp : 29;
|
|
93
117
|
}
|
|
94
118
|
else if (this.desiredMode == daikin_controller_1.Mode.COLD) {
|
|
95
|
-
targetTemp = this.settings.
|
|
119
|
+
targetTemp = this.settings.useOwnTemperature ? targetTemp : 16;
|
|
96
120
|
}
|
|
97
121
|
const changeObject = {
|
|
98
122
|
power: this.desiredState,
|
|
@@ -100,7 +124,7 @@ class OwnDaikinDevice extends ac_device_1.AcDevice {
|
|
|
100
124
|
targetHumidity: this.desiredHum,
|
|
101
125
|
targetTemperature: forceTemp !== null && forceTemp !== void 0 ? forceTemp : targetTemp,
|
|
102
126
|
};
|
|
103
|
-
(
|
|
127
|
+
(_b = this.device) === null || _b === void 0 ? void 0 : _b.setACControlInfo(changeObject, (err, res) => {
|
|
104
128
|
var _a;
|
|
105
129
|
if (err !== null) {
|
|
106
130
|
log_service_1.ServerLogService.writeLog(models_1.LogLevel.Warn, `Setting Ac Info for ${this.name} failed: ${err} `);
|
|
@@ -120,7 +144,7 @@ class OwnDaikinDevice extends ac_device_1.AcDevice {
|
|
|
120
144
|
this.persist();
|
|
121
145
|
}
|
|
122
146
|
else {
|
|
123
|
-
this.log(models_1.LogLevel.Warn,
|
|
147
|
+
this.log(models_1.LogLevel.Warn, 'No Error, but also no response...');
|
|
124
148
|
}
|
|
125
149
|
});
|
|
126
150
|
}
|
|
@@ -137,6 +161,14 @@ class OwnDaikinDevice extends ac_device_1.AcDevice {
|
|
|
137
161
|
});
|
|
138
162
|
});
|
|
139
163
|
}
|
|
164
|
+
/**
|
|
165
|
+
* Handles the situation when the device is unreachable, attempts to reconnect and log the outcome.
|
|
166
|
+
*
|
|
167
|
+
* This function logs a warning message indicating that the device is unreachable,
|
|
168
|
+
* then attempts to reconnect using the `DaikinService.reconnect` method.
|
|
169
|
+
* If the reconnection is successful, it sets the desired information and schedules a timeout of 5000ms.
|
|
170
|
+
* If the reconnection fails, it logs an error message with the reason for the failure.
|
|
171
|
+
*/
|
|
140
172
|
handleDeviceUnreach() {
|
|
141
173
|
this.log(models_1.LogLevel.Warn, `Detected EHOSTUNREACH for ${this.name}(${this.ip}), will try reconecting`);
|
|
142
174
|
daikin_service_1.DaikinService.reconnect(this.name, this.ip, this._mac)
|
|
@@ -161,6 +193,7 @@ class OwnDaikinDevice extends ac_device_1.AcDevice {
|
|
|
161
193
|
}
|
|
162
194
|
});
|
|
163
195
|
}
|
|
196
|
+
/** @inheritDoc */
|
|
164
197
|
toJSON() {
|
|
165
198
|
// eslint-disable-next-line
|
|
166
199
|
const result = lodash_1.default.omit(this, ['room', '_room', 'device', '_device']);
|