hoffmation-base 3.0.0-alpha.4 → 3.0.0-alpha.41
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 +20 -20
- 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/humiditySensorChangeAction.d.ts +16 -0
- package/lib/models/action/humiditySensorChangeAction.js +15 -0
- package/lib/models/action/index.d.ts +7 -0
- package/lib/models/action/index.js +25 -0
- package/lib/models/action/motionSensorAction.d.ts +16 -0
- package/lib/models/action/motionSensorAction.js +15 -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/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 +8 -1
- package/lib/models/command/WindowSetDesiredPositionCommand.js +8 -1
- 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 +9 -2
- package/lib/models/command/actuatorWriteStateToDeviceCommand.js +13 -2
- 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 +9 -0
- package/lib/models/command/commandType.js +9 -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 +19 -5
- package/lib/models/deviceSettings/acSettings.js +23 -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 +3 -0
- package/lib/models/deviceSettings/dachsSettings.js +3 -0
- 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 +92 -5
- 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/iHeaterSettings.d.ts +8 -0
- package/lib/server/config/iIobrokerSettigns.d.ts +8 -0
- package/lib/server/config/iLogSettings.d.ts +36 -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 +10 -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 +1 -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 +2 -2
- package/lib/server/devices/IoBrokerDeviceInfo.js +6 -4
- 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 +12 -1
- 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 +32 -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 -4
- package/lib/server/devices/baseDeviceInterfaces/iHumiditySensor.d.ts +21 -1
- 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 -1
- 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 -2
- 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 +31 -9
- package/lib/server/devices/dachs/dachs.js +28 -18
- package/lib/server/devices/dachs/dachsTemperatureSensor.d.ts +22 -3
- 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 +1 -1
- package/lib/server/devices/dachs/lib/dachsHttpClient.js +2 -2
- package/lib/server/devices/device-cluster.d.ts +3 -0
- package/lib/server/devices/device-cluster.js +1 -1
- package/lib/server/devices/deviceUpdater.d.ts +0 -3
- package/lib/server/devices/deviceUpdater.js +1 -4
- package/lib/server/devices/devices.d.ts +43 -7
- package/lib/server/devices/devices.js +42 -6
- 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 +9 -3
- package/lib/server/devices/groups/Window.js +19 -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 +16 -34
- package/lib/server/devices/groups/presenceGroup.d.ts +11 -4
- package/lib/server/devices/groups/presenceGroup.js +53 -64
- package/lib/server/devices/groups/tasterGroup.js +6 -6
- package/lib/server/devices/groups/windowGroup.d.ts +11 -1
- package/lib/server/devices/groups/windowGroup.js +6 -6
- 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 +27 -5
- package/lib/server/devices/hmIPDevices/hmIpGriff.js +59 -37
- package/lib/server/devices/hmIPDevices/hmIpHeizgruppe.d.ts +25 -5
- package/lib/server/devices/hmIPDevices/hmIpHeizgruppe.js +27 -14
- package/lib/server/devices/hmIPDevices/hmIpHeizung.d.ts +1 -0
- package/lib/server/devices/hmIPDevices/hmIpHeizung.js +1 -0
- 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 +11 -9
- package/lib/server/devices/hmIPDevices/hmIpPraezenz.js +13 -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 +15 -0
- package/lib/server/devices/hmIPDevices/hmIpTaster.js +9 -0
- package/lib/server/devices/hmIPDevices/hmIpTherm.d.ts +1 -0
- package/lib/server/devices/hmIPDevices/hmIpTherm.js +1 -0
- 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 +5 -2
- package/lib/server/devices/index.js +8 -2
- package/lib/server/devices/jsObject/jsObjectEnergyManager.d.ts +3 -1
- package/lib/server/devices/jsObject/jsObjectEnergyManager.js +5 -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 -6
- 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 +80 -26
- 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 +28 -16
- package/lib/server/devices/shelly/shellyTrv.js +46 -45
- 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/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 +15 -22
- package/lib/server/devices/zigbee/BaseDevices/zigbeeDimmer.d.ts +10 -25
- package/lib/server/devices/zigbee/BaseDevices/zigbeeDimmer.js +30 -65
- package/lib/server/devices/zigbee/BaseDevices/zigbeeHeater.d.ts +17 -4
- package/lib/server/devices/zigbee/BaseDevices/zigbeeHeater.js +17 -11
- 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 +9 -8
- package/lib/server/devices/zigbee/BaseDevices/zigbeeLedRGBCCT.js +16 -14
- package/lib/server/devices/zigbee/BaseDevices/zigbeeMagnetContact.d.ts +12 -2
- package/lib/server/devices/zigbee/BaseDevices/zigbeeMagnetContact.js +11 -1
- package/lib/server/devices/zigbee/BaseDevices/zigbeeMotionSensor.d.ts +22 -14
- package/lib/server/devices/zigbee/BaseDevices/zigbeeMotionSensor.js +46 -42
- package/lib/server/devices/zigbee/BaseDevices/zigbeeShutter.d.ts +12 -3
- 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 +49 -11
- package/lib/server/devices/zigbee/zigbeeAquaraVibra.js +98 -30
- package/lib/server/devices/zigbee/zigbeeAquaraWater.d.ts +12 -1
- package/lib/server/devices/zigbee/zigbeeAquaraWater.js +15 -11
- 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 +19 -1
- package/lib/server/devices/zigbee/zigbeeHeimanSmoke.js +25 -7
- 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 +20 -2
- package/lib/server/devices/zigbee/zigbeeSonoffTemp.js +22 -5
- 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 -20
- 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 +4 -3
- 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 +6 -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 +0 -5
- package/lib/server/services/Sonos/sonos-service.js +6 -10
- 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 +48 -6
- package/lib/server/services/ac/ac-device.js +86 -36
- 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 +17 -0
- package/lib/server/services/ac/own-daikin-device.js +32 -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-service.d.ts +1 -5
- package/lib/server/services/govee/govee-service.js +3 -5
- package/lib/server/services/govee/own-govee-device.d.ts +17 -13
- package/lib/server/services/govee/own-govee-device.js +27 -27
- 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 +12 -0
- package/lib/server/services/log-service/log-debug-type.js +16 -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 -13
- package/lib/server/services/victron/victron-device.d.ts +6 -2
- package/lib/server/services/victron/victron-device.js +12 -9
- 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 +15 -18
- package/lib/server/services/weather/weather-service.js +32 -22
- package/lib/server/services/weather/weather-temp.d.ts +21 -0
- package/lib/tsconfig.tsbuildinfo +1 -1
- package/package.json +6 -7
- 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
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ZigbeeLamp = void 0;
|
|
4
|
+
const ZigbeeActuator_1 = require("./ZigbeeActuator");
|
|
5
|
+
const models_1 = require("../../../../models");
|
|
6
|
+
const sharedFunctions_1 = require("../../sharedFunctions");
|
|
7
|
+
const DeviceCapability_1 = require("../../DeviceCapability");
|
|
8
|
+
class ZigbeeLamp extends ZigbeeActuator_1.ZigbeeActuator {
|
|
9
|
+
constructor(pInfo, deviceType) {
|
|
10
|
+
super(pInfo, deviceType);
|
|
11
|
+
this.deviceCapabilities.push(DeviceCapability_1.DeviceCapability.lamp);
|
|
12
|
+
}
|
|
13
|
+
/** @inheritDoc */
|
|
14
|
+
update(idSplit, state, initial = false, handledByChildObject = false) {
|
|
15
|
+
if (!handledByChildObject) {
|
|
16
|
+
this.log(models_1.LogLevel.DeepTrace, `Lamp Update: ID: ${idSplit.join('.')} JSON: ${JSON.stringify(state)}`);
|
|
17
|
+
}
|
|
18
|
+
this.queuedValue = null;
|
|
19
|
+
this.log(models_1.LogLevel.DeepTrace, `Lamp Update: ID: ${idSplit.join('.')} JSON: ${JSON.stringify(state)}`);
|
|
20
|
+
super.update(idSplit, state, initial, true);
|
|
21
|
+
}
|
|
22
|
+
/** @inheritDoc */
|
|
23
|
+
setTimeBased(c) {
|
|
24
|
+
sharedFunctions_1.LampUtils.setTimeBased(this, c);
|
|
25
|
+
}
|
|
26
|
+
/** @inheritdoc */
|
|
27
|
+
setLight(c) {
|
|
28
|
+
super.setActuator(c);
|
|
29
|
+
}
|
|
30
|
+
/** @inheritDoc */
|
|
31
|
+
toggleLight(c) {
|
|
32
|
+
return sharedFunctions_1.LampUtils.toggleLight(this, c);
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
exports.ZigbeeLamp = ZigbeeLamp;
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { DeviceType } from '../../deviceType';
|
|
2
|
-
import { LampSetTimeBasedCommand, LedSetLightCommand, LedSettings } from '../../../../models';
|
|
2
|
+
import { ActuatorSetStateCommand, LampSetTimeBasedCommand, LedSetLightCommand, LedSettings } from '../../../../models';
|
|
3
3
|
import { IoBrokerDeviceInfo } from '../../IoBrokerDeviceInfo';
|
|
4
4
|
import { iLedRgbCct } from '../../baseDeviceInterfaces/iLedRgbCct';
|
|
5
5
|
import { ZigbeeDimmer } from './zigbeeDimmer';
|
|
6
6
|
export declare abstract class ZigbeeLedRGBCCT extends ZigbeeDimmer implements iLedRgbCct {
|
|
7
|
-
|
|
7
|
+
/** @inheritDoc */
|
|
8
8
|
settings: LedSettings;
|
|
9
9
|
protected abstract readonly _stateIdColor: string;
|
|
10
10
|
protected abstract readonly _stateIdColorTemp: string;
|
|
@@ -12,16 +12,17 @@ export declare abstract class ZigbeeLedRGBCCT extends ZigbeeDimmer implements iL
|
|
|
12
12
|
protected abstract readonly _stateNameColorTemp: string;
|
|
13
13
|
protected constructor(pInfo: IoBrokerDeviceInfo, deviceType: DeviceType);
|
|
14
14
|
protected _color: string;
|
|
15
|
+
/** @inheritDoc */
|
|
15
16
|
get color(): string;
|
|
16
17
|
protected _colortemp: number;
|
|
18
|
+
/** @inheritDoc */
|
|
17
19
|
get colortemp(): number;
|
|
20
|
+
/** @inheritDoc */
|
|
18
21
|
update(idSplit: string[], state: ioBroker.State, initial?: boolean): void;
|
|
19
|
-
/**
|
|
20
|
-
* @inheritDoc
|
|
21
|
-
*/
|
|
22
|
+
/** @inheritDoc */
|
|
22
23
|
setTimeBased(c: LampSetTimeBasedCommand): void;
|
|
23
|
-
/**
|
|
24
|
-
|
|
25
|
-
|
|
24
|
+
/** @inheritDoc */
|
|
25
|
+
setActuator(c: ActuatorSetStateCommand): void;
|
|
26
|
+
/** @inheritDoc */
|
|
26
27
|
setLight(c: LedSetLightCommand): void;
|
|
27
28
|
}
|
|
@@ -8,19 +8,23 @@ const services_1 = require("../../../services");
|
|
|
8
8
|
class ZigbeeLedRGBCCT extends zigbeeDimmer_1.ZigbeeDimmer {
|
|
9
9
|
constructor(pInfo, deviceType) {
|
|
10
10
|
super(pInfo, deviceType);
|
|
11
|
+
/** @inheritDoc */
|
|
11
12
|
this.settings = new models_1.LedSettings();
|
|
12
13
|
this._color = '#fcba32';
|
|
13
14
|
this._colortemp = 500;
|
|
14
15
|
this.deviceCapabilities.push(DeviceCapability_1.DeviceCapability.ledLamp);
|
|
15
16
|
// this.effectID = `${this.info.fullID}.effect`;
|
|
16
17
|
}
|
|
18
|
+
/** @inheritDoc */
|
|
17
19
|
get color() {
|
|
18
20
|
return this._color;
|
|
19
21
|
}
|
|
22
|
+
/** @inheritDoc */
|
|
20
23
|
get colortemp() {
|
|
21
24
|
return this._colortemp;
|
|
22
25
|
}
|
|
23
26
|
// private effectID: string = '';
|
|
27
|
+
/** @inheritDoc */
|
|
24
28
|
update(idSplit, state, initial = false) {
|
|
25
29
|
this.log(models_1.LogLevel.DeepTrace, `LED Update: ID: ${idSplit.join('.')} JSON: ${JSON.stringify(state)}`);
|
|
26
30
|
super.update(idSplit, state, initial);
|
|
@@ -35,37 +39,35 @@ class ZigbeeLedRGBCCT extends zigbeeDimmer_1.ZigbeeDimmer {
|
|
|
35
39
|
break;
|
|
36
40
|
}
|
|
37
41
|
}
|
|
38
|
-
/**
|
|
39
|
-
* @inheritDoc
|
|
40
|
-
*/
|
|
42
|
+
/** @inheritDoc */
|
|
41
43
|
setTimeBased(c) {
|
|
42
44
|
this.setLight(models_1.LedSetLightCommand.byTimeBased(this.settings, c));
|
|
43
45
|
}
|
|
44
|
-
/**
|
|
45
|
-
|
|
46
|
-
|
|
46
|
+
/** @inheritDoc */
|
|
47
|
+
setActuator(c) {
|
|
48
|
+
this.setLight(new models_1.LedSetLightCommand(c, c.on, '', c.disableAutomaticCommand));
|
|
49
|
+
}
|
|
50
|
+
/** @inheritDoc */
|
|
47
51
|
setLight(c) {
|
|
48
|
-
if (this.
|
|
49
|
-
this.log(models_1.LogLevel.Error,
|
|
52
|
+
if (this._actuatorOnStateIdState === '') {
|
|
53
|
+
this.log(models_1.LogLevel.Error, 'Keine State ID bekannt.');
|
|
50
54
|
return;
|
|
51
55
|
}
|
|
52
56
|
if (!this.ioConn) {
|
|
53
|
-
this.log(models_1.LogLevel.Error,
|
|
57
|
+
this.log(models_1.LogLevel.Error, 'Keine Connection bekannt.');
|
|
54
58
|
return;
|
|
55
59
|
}
|
|
56
60
|
if (c.on && c.brightness === -1 && this.brightness < 10) {
|
|
57
61
|
c.brightness = 10;
|
|
58
62
|
}
|
|
59
|
-
|
|
63
|
+
super.setLight(c);
|
|
60
64
|
const formattedColor = services_1.Utils.formatHex(c.color);
|
|
61
|
-
if (formattedColor !== null && c.on) {
|
|
65
|
+
if (formattedColor !== null && c.on && (c.color !== this.color || c.isForceAction)) {
|
|
62
66
|
this.setState(this._stateIdColor, formattedColor);
|
|
63
67
|
}
|
|
64
|
-
if (c.colorTemp > -1 && c.on) {
|
|
68
|
+
if (c.colorTemp > -1 && c.on && (c.colorTemp !== this.colortemp || c.isForceAction)) {
|
|
65
69
|
this.setState(this._stateIdColorTemp, c.colorTemp);
|
|
66
70
|
}
|
|
67
|
-
super.setLight(c);
|
|
68
71
|
}
|
|
69
72
|
}
|
|
70
73
|
exports.ZigbeeLedRGBCCT = ZigbeeLedRGBCCT;
|
|
71
|
-
ZigbeeLedRGBCCT.DEFAULT_COLOR_WARM = '#f2b200';
|
|
@@ -2,24 +2,34 @@ import { DeviceType } from '../../deviceType';
|
|
|
2
2
|
import { ZigbeeDevice } from './zigbeeDevice';
|
|
3
3
|
import { MagnetPosition } from '../../models';
|
|
4
4
|
import { IoBrokerDeviceInfo } from '../../IoBrokerDeviceInfo';
|
|
5
|
-
import { iBatteryDevice } from '../../baseDeviceInterfaces';
|
|
6
|
-
export declare class ZigbeeMagnetContact extends ZigbeeDevice implements iBatteryDevice {
|
|
5
|
+
import { iBatteryDevice, iMagnetSensor } from '../../baseDeviceInterfaces';
|
|
6
|
+
export declare class ZigbeeMagnetContact extends ZigbeeDevice implements iBatteryDevice, iMagnetSensor {
|
|
7
7
|
protected _battery: number;
|
|
8
8
|
private _lastBatteryPersist;
|
|
9
|
+
/** @inheritDoc */
|
|
9
10
|
get lastBatteryPersist(): number;
|
|
11
|
+
/** @inheritDoc */
|
|
10
12
|
get battery(): number;
|
|
13
|
+
/** @inheritDoc */
|
|
11
14
|
position: MagnetPosition;
|
|
15
|
+
/** @inheritDoc */
|
|
12
16
|
telegramOnOpen: boolean;
|
|
17
|
+
/** @inheritDoc */
|
|
13
18
|
speakOnOpen: boolean;
|
|
14
19
|
private _closedCallback;
|
|
15
20
|
private _openCallback;
|
|
16
21
|
private _iOpenTimeout;
|
|
17
22
|
private minutesOpen;
|
|
18
23
|
constructor(pInfo: IoBrokerDeviceInfo, deviceType: DeviceType);
|
|
24
|
+
/** @inheritDoc */
|
|
19
25
|
addOpenCallback(pCallback: (pValue: boolean) => void): void;
|
|
26
|
+
/** @inheritDoc */
|
|
20
27
|
addClosedCallback(pCallback: (pValue: boolean) => void): void;
|
|
28
|
+
/** @inheritDoc */
|
|
21
29
|
update(idSplit: string[], state: ioBroker.State, initial?: boolean, pOverrride?: boolean): void;
|
|
22
30
|
protected updatePosition(pValue: MagnetPosition): void;
|
|
31
|
+
/** @inheritDoc */
|
|
23
32
|
dispose(): void;
|
|
33
|
+
/** @inheritDoc */
|
|
24
34
|
persistBatteryDevice(): void;
|
|
25
35
|
}
|
|
@@ -6,9 +6,11 @@ const models_1 = require("../../../../models");
|
|
|
6
6
|
const zigbeeDevice_1 = require("./zigbeeDevice");
|
|
7
7
|
const models_2 = require("../../models");
|
|
8
8
|
class ZigbeeMagnetContact extends zigbeeDevice_1.ZigbeeDevice {
|
|
9
|
+
/** @inheritDoc */
|
|
9
10
|
get lastBatteryPersist() {
|
|
10
11
|
return this._lastBatteryPersist;
|
|
11
12
|
}
|
|
13
|
+
/** @inheritDoc */
|
|
12
14
|
get battery() {
|
|
13
15
|
return this._battery;
|
|
14
16
|
}
|
|
@@ -16,19 +18,25 @@ class ZigbeeMagnetContact extends zigbeeDevice_1.ZigbeeDevice {
|
|
|
16
18
|
super(pInfo, deviceType);
|
|
17
19
|
this._battery = -99;
|
|
18
20
|
this._lastBatteryPersist = 0;
|
|
21
|
+
/** @inheritDoc */
|
|
19
22
|
this.position = models_2.MagnetPosition.closed;
|
|
23
|
+
/** @inheritDoc */
|
|
20
24
|
this.telegramOnOpen = false;
|
|
25
|
+
/** @inheritDoc */
|
|
21
26
|
this.speakOnOpen = false;
|
|
22
27
|
this._closedCallback = [];
|
|
23
28
|
this._openCallback = [];
|
|
24
29
|
this.minutesOpen = 0;
|
|
25
30
|
}
|
|
31
|
+
/** @inheritDoc */
|
|
26
32
|
addOpenCallback(pCallback) {
|
|
27
33
|
this._openCallback.push(pCallback);
|
|
28
34
|
}
|
|
35
|
+
/** @inheritDoc */
|
|
29
36
|
addClosedCallback(pCallback) {
|
|
30
37
|
this._closedCallback.push(pCallback);
|
|
31
38
|
}
|
|
39
|
+
/** @inheritDoc */
|
|
32
40
|
update(idSplit, state, initial = false, pOverrride = false) {
|
|
33
41
|
super.update(idSplit, state, initial, pOverrride);
|
|
34
42
|
switch (idSplit[3]) {
|
|
@@ -36,7 +44,7 @@ class ZigbeeMagnetContact extends zigbeeDevice_1.ZigbeeDevice {
|
|
|
36
44
|
this._battery = state.val;
|
|
37
45
|
this.persistBatteryDevice();
|
|
38
46
|
if (this._battery < 20) {
|
|
39
|
-
this.log(models_1.LogLevel.Warn,
|
|
47
|
+
this.log(models_1.LogLevel.Warn, 'Das Zigbee Gerät hat unter 20% Batterie.');
|
|
40
48
|
}
|
|
41
49
|
break;
|
|
42
50
|
}
|
|
@@ -98,6 +106,7 @@ class ZigbeeMagnetContact extends zigbeeDevice_1.ZigbeeDevice {
|
|
|
98
106
|
}, 60000, this);
|
|
99
107
|
}
|
|
100
108
|
}
|
|
109
|
+
/** @inheritDoc */
|
|
101
110
|
dispose() {
|
|
102
111
|
if (this._iOpenTimeout) {
|
|
103
112
|
clearInterval(this._iOpenTimeout);
|
|
@@ -105,6 +114,7 @@ class ZigbeeMagnetContact extends zigbeeDevice_1.ZigbeeDevice {
|
|
|
105
114
|
}
|
|
106
115
|
super.dispose();
|
|
107
116
|
}
|
|
117
|
+
/** @inheritDoc */
|
|
108
118
|
persistBatteryDevice() {
|
|
109
119
|
var _a;
|
|
110
120
|
const now = services_1.Utils.nowMS();
|
|
@@ -1,36 +1,44 @@
|
|
|
1
1
|
/// <reference types="node" />
|
|
2
2
|
import { DeviceType } from '../../deviceType';
|
|
3
3
|
import { ZigbeeDevice } from './index';
|
|
4
|
-
import { MotionSensorSettings } from '../../../../models';
|
|
4
|
+
import { MotionSensorAction, MotionSensorSettings } from '../../../../models';
|
|
5
5
|
import { iBatteryDevice, iMotionSensor } from '../../baseDeviceInterfaces';
|
|
6
6
|
import { IoBrokerDeviceInfo } from '../../IoBrokerDeviceInfo';
|
|
7
7
|
export declare class ZigbeeMotionSensor extends ZigbeeDevice implements iMotionSensor, iBatteryDevice {
|
|
8
|
+
/** @inheritDoc */
|
|
9
|
+
settings: MotionSensorSettings;
|
|
10
|
+
/** @inheritDoc */
|
|
11
|
+
detectionsToday: number;
|
|
12
|
+
protected _initialized: boolean;
|
|
13
|
+
protected _movementDetectedCallback: Array<(action: MotionSensorAction) => void>;
|
|
14
|
+
protected _needsMovementResetFallback: boolean;
|
|
15
|
+
protected _fallBackTimeout: NodeJS.Timeout | undefined;
|
|
16
|
+
protected _timeSinceLastMotion: number;
|
|
8
17
|
private _movementDetected;
|
|
9
18
|
private _battery;
|
|
10
19
|
private _lastBatteryPersist;
|
|
20
|
+
constructor(pInfo: IoBrokerDeviceInfo, type: DeviceType);
|
|
21
|
+
/** @inheritDoc */
|
|
11
22
|
get lastBatteryPersist(): number;
|
|
12
|
-
|
|
23
|
+
/** @inheritDoc */
|
|
13
24
|
get movementDetected(): boolean;
|
|
25
|
+
/** @inheritDoc */
|
|
14
26
|
get battery(): number;
|
|
15
|
-
|
|
16
|
-
protected _movementDetectedCallback: Array<(pValue: boolean) => void>;
|
|
17
|
-
protected _needsMovementResetFallback: boolean;
|
|
18
|
-
protected _fallBackTimeout: NodeJS.Timeout | undefined;
|
|
19
|
-
constructor(pInfo: IoBrokerDeviceInfo, type: DeviceType);
|
|
20
|
-
protected _timeSinceLastMotion: number;
|
|
27
|
+
/** @inheritDoc */
|
|
21
28
|
get timeSinceLastMotion(): number;
|
|
22
|
-
protected _detectionsToday: number;
|
|
23
|
-
get detectionsToday(): number;
|
|
24
|
-
set detectionsToday(pVal: number);
|
|
25
29
|
/**
|
|
26
30
|
* Adds a callback for when a motion state has changed.
|
|
27
|
-
* @param pCallback Function that accepts the new state as parameter
|
|
31
|
+
* @param pCallback - Function that accepts the new state as parameter
|
|
28
32
|
*/
|
|
29
|
-
|
|
33
|
+
/** @inheritDoc */
|
|
34
|
+
addMovementCallback(pCallback: (action: MotionSensorAction) => void): void;
|
|
35
|
+
/** @inheritDoc */
|
|
30
36
|
persistMotionSensor(): void;
|
|
31
37
|
updateMovement(newState: boolean): void;
|
|
38
|
+
/** @inheritDoc */
|
|
32
39
|
update(idSplit: string[], state: ioBroker.State, initial?: boolean, pOverride?: boolean): void;
|
|
40
|
+
/** @inheritDoc */
|
|
41
|
+
persistBatteryDevice(): void;
|
|
33
42
|
private resetFallbackTimeout;
|
|
34
43
|
private startFallbackTimeout;
|
|
35
|
-
persistBatteryDevice(): void;
|
|
36
44
|
}
|
|
@@ -6,35 +6,20 @@ const models_1 = require("../../../../models");
|
|
|
6
6
|
const services_1 = require("../../../services");
|
|
7
7
|
const DeviceCapability_1 = require("../../DeviceCapability");
|
|
8
8
|
class ZigbeeMotionSensor extends index_1.ZigbeeDevice {
|
|
9
|
-
get lastBatteryPersist() {
|
|
10
|
-
return this._lastBatteryPersist;
|
|
11
|
-
}
|
|
12
|
-
get movementDetected() {
|
|
13
|
-
if (!this.available) {
|
|
14
|
-
// If the device is not available, there is no active movement
|
|
15
|
-
return false;
|
|
16
|
-
}
|
|
17
|
-
if (services_1.Utils.nowMS() - this.lastUpdate.getTime() > 3600000) {
|
|
18
|
-
// If the device has not been updated for more than an hour, there is no active movement
|
|
19
|
-
return false;
|
|
20
|
-
}
|
|
21
|
-
return this._movementDetected;
|
|
22
|
-
}
|
|
23
|
-
get battery() {
|
|
24
|
-
return this._battery;
|
|
25
|
-
}
|
|
26
9
|
constructor(pInfo, type) {
|
|
27
10
|
var _a;
|
|
28
11
|
super(pInfo, type);
|
|
29
|
-
|
|
30
|
-
this._battery = -99;
|
|
31
|
-
this._lastBatteryPersist = 0;
|
|
12
|
+
/** @inheritDoc */
|
|
32
13
|
this.settings = new models_1.MotionSensorSettings();
|
|
14
|
+
/** @inheritDoc */
|
|
15
|
+
this.detectionsToday = 0;
|
|
33
16
|
this._initialized = false;
|
|
34
17
|
this._movementDetectedCallback = [];
|
|
35
18
|
this._needsMovementResetFallback = true;
|
|
36
19
|
this._timeSinceLastMotion = 0;
|
|
37
|
-
this.
|
|
20
|
+
this._movementDetected = false;
|
|
21
|
+
this._battery = -99;
|
|
22
|
+
this._lastBatteryPersist = 0;
|
|
38
23
|
this.deviceCapabilities.push(DeviceCapability_1.DeviceCapability.motionSensor);
|
|
39
24
|
this.deviceCapabilities.push(DeviceCapability_1.DeviceCapability.batteryDriven);
|
|
40
25
|
if (!services_1.Utils.anyDboActive) {
|
|
@@ -52,30 +37,47 @@ class ZigbeeMotionSensor extends index_1.ZigbeeDevice {
|
|
|
52
37
|
});
|
|
53
38
|
}
|
|
54
39
|
}
|
|
40
|
+
/** @inheritDoc */
|
|
41
|
+
get lastBatteryPersist() {
|
|
42
|
+
return this._lastBatteryPersist;
|
|
43
|
+
}
|
|
44
|
+
/** @inheritDoc */
|
|
45
|
+
get movementDetected() {
|
|
46
|
+
if (!this.available) {
|
|
47
|
+
// If the device is not available, there is no active movement
|
|
48
|
+
return false;
|
|
49
|
+
}
|
|
50
|
+
if (services_1.Utils.nowMS() - this.lastUpdate.getTime() > 3600000) {
|
|
51
|
+
// If the device has not been updated for more than an hour, there is no active movement
|
|
52
|
+
return false;
|
|
53
|
+
}
|
|
54
|
+
return this._movementDetected;
|
|
55
|
+
}
|
|
56
|
+
/** @inheritDoc */
|
|
57
|
+
get battery() {
|
|
58
|
+
return this._battery;
|
|
59
|
+
}
|
|
55
60
|
// Time since last motion in seconds
|
|
61
|
+
/** @inheritDoc */
|
|
56
62
|
get timeSinceLastMotion() {
|
|
57
63
|
return this._timeSinceLastMotion;
|
|
58
64
|
}
|
|
59
|
-
get detectionsToday() {
|
|
60
|
-
return this._detectionsToday;
|
|
61
|
-
}
|
|
62
|
-
set detectionsToday(pVal) {
|
|
63
|
-
this._detectionsToday = pVal;
|
|
64
|
-
}
|
|
65
65
|
/**
|
|
66
66
|
* Adds a callback for when a motion state has changed.
|
|
67
|
-
* @param pCallback Function that accepts the new state as parameter
|
|
67
|
+
* @param pCallback - Function that accepts the new state as parameter
|
|
68
68
|
*/
|
|
69
|
+
/** @inheritDoc */
|
|
69
70
|
addMovementCallback(pCallback) {
|
|
70
71
|
this._movementDetectedCallback.push(pCallback);
|
|
71
72
|
}
|
|
73
|
+
/** @inheritDoc */
|
|
72
74
|
persistMotionSensor() {
|
|
73
75
|
var _a;
|
|
74
76
|
(_a = services_1.Utils.dbo) === null || _a === void 0 ? void 0 : _a.persistMotionSensor(this);
|
|
75
77
|
}
|
|
76
78
|
updateMovement(newState) {
|
|
77
79
|
if (!this._initialized && newState) {
|
|
78
|
-
this.log(models_1.LogLevel.Trace,
|
|
80
|
+
this.log(models_1.LogLevel.Trace, 'Movement recognized, but database initialization has not finished yet --> delay.');
|
|
79
81
|
services_1.Utils.guardedTimeout(() => {
|
|
80
82
|
this.updateMovement(newState);
|
|
81
83
|
}, 1000, this);
|
|
@@ -100,9 +102,10 @@ class ZigbeeMotionSensor extends index_1.ZigbeeDevice {
|
|
|
100
102
|
this.log(models_1.LogLevel.Trace, `This is movement no. ${this.detectionsToday}`);
|
|
101
103
|
}
|
|
102
104
|
for (const c of this._movementDetectedCallback) {
|
|
103
|
-
c(
|
|
105
|
+
c(new models_1.MotionSensorAction(this));
|
|
104
106
|
}
|
|
105
107
|
}
|
|
108
|
+
/** @inheritDoc */
|
|
106
109
|
update(idSplit, state, initial = false, pOverride = false) {
|
|
107
110
|
this.log(models_1.LogLevel.DeepTrace, `Motion update: ID: ${idSplit.join('.')} JSON: ${JSON.stringify(state)}`);
|
|
108
111
|
super.update(idSplit, state, initial, pOverride);
|
|
@@ -111,7 +114,7 @@ class ZigbeeMotionSensor extends index_1.ZigbeeDevice {
|
|
|
111
114
|
this._battery = state.val;
|
|
112
115
|
this.persistBatteryDevice();
|
|
113
116
|
if (this._battery < 20) {
|
|
114
|
-
this.log(models_1.LogLevel.Warn,
|
|
117
|
+
this.log(models_1.LogLevel.Warn, 'Das Zigbee Gerät hat unter 20% Batterie.');
|
|
115
118
|
}
|
|
116
119
|
break;
|
|
117
120
|
case 'occupancy':
|
|
@@ -124,9 +127,19 @@ class ZigbeeMotionSensor extends index_1.ZigbeeDevice {
|
|
|
124
127
|
break;
|
|
125
128
|
}
|
|
126
129
|
}
|
|
130
|
+
/** @inheritDoc */
|
|
131
|
+
persistBatteryDevice() {
|
|
132
|
+
var _a;
|
|
133
|
+
const now = services_1.Utils.nowMS();
|
|
134
|
+
if (this._lastBatteryPersist + 60000 > now) {
|
|
135
|
+
return;
|
|
136
|
+
}
|
|
137
|
+
(_a = services_1.Utils.dbo) === null || _a === void 0 ? void 0 : _a.persistBatteryDevice(this);
|
|
138
|
+
this._lastBatteryPersist = now;
|
|
139
|
+
}
|
|
127
140
|
resetFallbackTimeout() {
|
|
128
141
|
if (this._fallBackTimeout) {
|
|
129
|
-
this.log(models_1.LogLevel.Trace,
|
|
142
|
+
this.log(models_1.LogLevel.Trace, 'Fallback Timeout zurücksetzen');
|
|
130
143
|
clearTimeout(this._fallBackTimeout);
|
|
131
144
|
}
|
|
132
145
|
}
|
|
@@ -135,19 +148,10 @@ class ZigbeeMotionSensor extends index_1.ZigbeeDevice {
|
|
|
135
148
|
return;
|
|
136
149
|
}
|
|
137
150
|
this._fallBackTimeout = services_1.Utils.guardedTimeout(() => {
|
|
138
|
-
this.log(models_1.LogLevel.Debug,
|
|
151
|
+
this.log(models_1.LogLevel.Debug, 'Benötige Fallback Bewegungs Reset');
|
|
139
152
|
this._fallBackTimeout = undefined;
|
|
140
153
|
this.updateMovement(false);
|
|
141
154
|
}, 270000, this);
|
|
142
155
|
}
|
|
143
|
-
persistBatteryDevice() {
|
|
144
|
-
var _a;
|
|
145
|
-
const now = services_1.Utils.nowMS();
|
|
146
|
-
if (this._lastBatteryPersist + 60000 > now) {
|
|
147
|
-
return;
|
|
148
|
-
}
|
|
149
|
-
(_a = services_1.Utils.dbo) === null || _a === void 0 ? void 0 : _a.persistBatteryDevice(this);
|
|
150
|
-
this._lastBatteryPersist = now;
|
|
151
|
-
}
|
|
152
156
|
}
|
|
153
157
|
exports.ZigbeeMotionSensor = ZigbeeMotionSensor;
|
|
@@ -7,24 +7,33 @@ import { Window } from '../../groups';
|
|
|
7
7
|
import { IoBrokerBaseDevice } from '../../IoBrokerBaseDevice';
|
|
8
8
|
import { IoBrokerDeviceInfo } from '../../IoBrokerDeviceInfo';
|
|
9
9
|
export declare class ZigbeeShutter extends ZigbeeDevice implements iShutter {
|
|
10
|
+
/** @inheritDoc */
|
|
10
11
|
settings: ShutterSettings;
|
|
11
12
|
protected _iMovementFinishTimeout: NodeJS.Timeout | null;
|
|
12
13
|
protected _firstCommandRecieved: boolean;
|
|
13
14
|
protected _setLevel: number;
|
|
14
15
|
protected _setLevelTime: number;
|
|
15
16
|
protected _shutterCalibrationData: ShutterCalibration;
|
|
16
|
-
constructor(pInfo: IoBrokerDeviceInfo, pType: DeviceType);
|
|
17
17
|
protected _currentLevel: number;
|
|
18
|
-
get currentLevel(): number;
|
|
19
|
-
set currentLevel(value: number);
|
|
20
18
|
protected _window?: Window;
|
|
19
|
+
constructor(pInfo: IoBrokerDeviceInfo, pType: DeviceType);
|
|
20
|
+
/** @inheritDoc */
|
|
21
|
+
get currentLevel(): number;
|
|
22
|
+
/** @inheritDoc */
|
|
21
23
|
get window(): Window | undefined;
|
|
24
|
+
/** @inheritDoc */
|
|
22
25
|
set window(value: Window | undefined);
|
|
26
|
+
/** @inheritDoc */
|
|
23
27
|
get desiredWindowShutterLevel(): number;
|
|
28
|
+
/** @inheritDoc */
|
|
24
29
|
persist(): void;
|
|
30
|
+
/** @inheritDoc */
|
|
25
31
|
update(idSplit: string[], state: ioBroker.State, initial?: boolean, pOverride?: boolean): void;
|
|
32
|
+
/** @inheritDoc */
|
|
26
33
|
setLevel(c: ShutterSetLevelCommand): void;
|
|
34
|
+
/** @inheritDoc */
|
|
27
35
|
toJSON(): Partial<IoBrokerBaseDevice>;
|
|
36
|
+
protected setCurrentLevel(value: number, isInitial?: boolean): void;
|
|
28
37
|
protected moveToPosition(pPosition: number): void;
|
|
29
38
|
protected getAverageUp(): number;
|
|
30
39
|
protected getAverageDown(): number;
|
|
@@ -14,6 +14,7 @@ class ZigbeeShutter extends zigbeeDevice_1.ZigbeeDevice {
|
|
|
14
14
|
constructor(pInfo, pType) {
|
|
15
15
|
var _a, _b;
|
|
16
16
|
super(pInfo, pType);
|
|
17
|
+
/** @inheritDoc */
|
|
17
18
|
this.settings = new models_1.ShutterSettings();
|
|
18
19
|
this._iMovementFinishTimeout = null;
|
|
19
20
|
this._firstCommandRecieved = false;
|
|
@@ -24,7 +25,7 @@ class ZigbeeShutter extends zigbeeDevice_1.ZigbeeDevice {
|
|
|
24
25
|
this.deviceCapabilities.push(DeviceCapability_1.DeviceCapability.shutter);
|
|
25
26
|
(_a = services_1.Utils.dbo) === null || _a === void 0 ? void 0 : _a.getShutterCalibration(this).then((calibrationData) => {
|
|
26
27
|
this._shutterCalibrationData = calibrationData;
|
|
27
|
-
this.log(models_1.LogLevel.DeepTrace,
|
|
28
|
+
this.log(models_1.LogLevel.DeepTrace, 'ZigbeeShutter initialized with calibration data');
|
|
28
29
|
}).catch((err) => {
|
|
29
30
|
var _a;
|
|
30
31
|
this.log(models_1.LogLevel.Warn, `Failed to initialize Calibration data, err ${(_a = err === null || err === void 0 ? void 0 : err.message) !== null && _a !== void 0 ? _a : err}`);
|
|
@@ -36,69 +37,63 @@ class ZigbeeShutter extends zigbeeDevice_1.ZigbeeDevice {
|
|
|
36
37
|
}
|
|
37
38
|
});
|
|
38
39
|
}
|
|
40
|
+
/** @inheritDoc */
|
|
39
41
|
get currentLevel() {
|
|
40
42
|
if (this._setLevel !== -1 && this._currentLevel !== this._setLevel) {
|
|
41
43
|
return this._setLevel;
|
|
42
44
|
}
|
|
43
45
|
return this._currentLevel;
|
|
44
46
|
}
|
|
45
|
-
|
|
46
|
-
if (value !== this._setLevel && services_1.Utils.nowMS() - this._setLevelTime < 60 * 10000) {
|
|
47
|
-
value = this._setLevel;
|
|
48
|
-
}
|
|
49
|
-
if (value !== this._currentLevel && this._window) {
|
|
50
|
-
services_1.Utils.guardedNewThread(() => {
|
|
51
|
-
var _a;
|
|
52
|
-
(_a = this._window) === null || _a === void 0 ? void 0 : _a.rolloPositionChange(value);
|
|
53
|
-
}, this);
|
|
54
|
-
this.persist();
|
|
55
|
-
}
|
|
56
|
-
this._currentLevel = value;
|
|
57
|
-
}
|
|
47
|
+
/** @inheritDoc */
|
|
58
48
|
get window() {
|
|
59
49
|
return this._window;
|
|
60
50
|
}
|
|
51
|
+
/** @inheritDoc */
|
|
61
52
|
set window(value) {
|
|
62
53
|
this._window = value;
|
|
63
54
|
}
|
|
55
|
+
/** @inheritDoc */
|
|
64
56
|
get desiredWindowShutterLevel() {
|
|
65
57
|
if (this._window === undefined) {
|
|
66
58
|
return -1;
|
|
67
59
|
}
|
|
68
60
|
return this._window.desiredPosition;
|
|
69
61
|
}
|
|
62
|
+
/** @inheritDoc */
|
|
70
63
|
persist() {
|
|
71
64
|
var _a;
|
|
72
65
|
(_a = services_1.Utils.dbo) === null || _a === void 0 ? void 0 : _a.persistShutter(this);
|
|
73
66
|
}
|
|
67
|
+
/** @inheritDoc */
|
|
74
68
|
update(idSplit, state, initial = false, pOverride = false) {
|
|
75
69
|
super.update(idSplit, state, initial, pOverride);
|
|
76
70
|
}
|
|
71
|
+
/** @inheritDoc */
|
|
77
72
|
setLevel(c) {
|
|
78
73
|
let pPosition = c.level;
|
|
79
74
|
if (!this._firstCommandRecieved && !c.isInitial) {
|
|
80
75
|
this._firstCommandRecieved = true;
|
|
81
76
|
}
|
|
82
77
|
else if (this._firstCommandRecieved && c.isInitial) {
|
|
83
|
-
this.log(models_1.LogLevel.Debug, `Skipped initial
|
|
78
|
+
this.log(models_1.LogLevel.Debug, `Skipped initial shutter to ${pPosition} as we recieved a command already`);
|
|
84
79
|
return;
|
|
85
80
|
}
|
|
86
81
|
if (this.currentLevel === pPosition && !c.isForceAction) {
|
|
87
|
-
this.log(models_1.LogLevel.Debug, `Skip
|
|
82
|
+
this.log(models_1.LogLevel.Debug, `Skip shutter command to Position ${pPosition} as this is the current one, commandLog: ${c.logMessage}`, services_1.LogDebugType.SkipUnchangedRolloPosition);
|
|
88
83
|
return;
|
|
89
84
|
}
|
|
90
85
|
this.log(models_1.LogLevel.Debug, c.logMessage);
|
|
91
86
|
if (this._window !== undefined) {
|
|
92
87
|
if (this._window.griffeInPosition(models_2.WindowPosition.offen) > 0 && pPosition < 100) {
|
|
93
88
|
if (!c.skipOpenWarning) {
|
|
94
|
-
this.log(models_1.LogLevel.Alert,
|
|
89
|
+
this.log(models_1.LogLevel.Alert, 'Not closing the shutter, as the window is open!');
|
|
95
90
|
}
|
|
96
91
|
return;
|
|
97
92
|
}
|
|
98
93
|
if (this._window.griffeInPosition(models_2.WindowPosition.kipp) > 0 && pPosition < 50) {
|
|
99
94
|
pPosition = 50;
|
|
100
95
|
if (!c.skipOpenWarning) {
|
|
101
|
-
this.log(models_1.LogLevel.Alert,
|
|
96
|
+
this.log(models_1.LogLevel.Alert, 'Not closing the shutter, as the window is half open!');
|
|
102
97
|
}
|
|
103
98
|
}
|
|
104
99
|
}
|
|
@@ -106,9 +101,23 @@ class ZigbeeShutter extends zigbeeDevice_1.ZigbeeDevice {
|
|
|
106
101
|
this.log(models_1.LogLevel.Debug, `Move to position ${pPosition}`);
|
|
107
102
|
this.moveToPosition(pPosition);
|
|
108
103
|
}
|
|
104
|
+
/** @inheritDoc */
|
|
109
105
|
toJSON() {
|
|
110
106
|
return lodash_1.default.omit(super.toJSON(), ['_window']);
|
|
111
107
|
}
|
|
108
|
+
setCurrentLevel(value, isInitial = false) {
|
|
109
|
+
if (value !== this._setLevel && services_1.Utils.nowMS() - this._setLevelTime < 60 * 10000) {
|
|
110
|
+
value = this._setLevel;
|
|
111
|
+
}
|
|
112
|
+
if (value !== this._currentLevel && this._window && !isInitial) {
|
|
113
|
+
services_1.Utils.guardedNewThread(() => {
|
|
114
|
+
var _a;
|
|
115
|
+
(_a = this._window) === null || _a === void 0 ? void 0 : _a.rolloPositionChange(new models_1.ShutterPositionChangedAction(this, value));
|
|
116
|
+
}, this);
|
|
117
|
+
this.persist();
|
|
118
|
+
}
|
|
119
|
+
this._currentLevel = value;
|
|
120
|
+
}
|
|
112
121
|
moveToPosition(pPosition) {
|
|
113
122
|
this.log(models_1.LogLevel.Error, `Implement own moveToPosition(${pPosition}) Function`);
|
|
114
123
|
}
|
|
@@ -143,7 +152,7 @@ class ZigbeeShutter extends zigbeeDevice_1.ZigbeeDevice {
|
|
|
143
152
|
clearTimeout(this._iMovementFinishTimeout);
|
|
144
153
|
}
|
|
145
154
|
this._iMovementFinishTimeout = services_1.Utils.guardedTimeout(() => {
|
|
146
|
-
this.
|
|
155
|
+
this.setCurrentLevel(endPosition, false);
|
|
147
156
|
this._iMovementFinishTimeout = null;
|
|
148
157
|
}, duration, this);
|
|
149
158
|
}
|
|
@@ -4,6 +4,10 @@ import { DeviceType } from '../../deviceType';
|
|
|
4
4
|
import { Button, ButtonPosition, ButtonPressType } from '../../button';
|
|
5
5
|
import { IoBrokerDeviceInfo } from '../../IoBrokerDeviceInfo';
|
|
6
6
|
export declare abstract class ZigbeeSwitch extends ZigbeeDevice implements iButtonSwitch {
|
|
7
|
+
/**
|
|
8
|
+
* The battery level of the device in percent.
|
|
9
|
+
* TODO: Implement iBatteryDevice
|
|
10
|
+
*/
|
|
7
11
|
battery: number;
|
|
8
12
|
abstract buttonBot: Button | undefined;
|
|
9
13
|
abstract buttonBotLeft: Button | undefined;
|
|
@@ -13,9 +17,13 @@ export declare abstract class ZigbeeSwitch extends ZigbeeDevice implements iButt
|
|
|
13
17
|
abstract buttonTop: Button | undefined;
|
|
14
18
|
abstract buttonTopLeft: Button | undefined;
|
|
15
19
|
abstract buttonTopRight: Button | undefined;
|
|
16
|
-
constructor(pInfo: IoBrokerDeviceInfo, deviceType: DeviceType);
|
|
20
|
+
protected constructor(pInfo: IoBrokerDeviceInfo, deviceType: DeviceType);
|
|
21
|
+
/** @inheritDoc */
|
|
17
22
|
persist(buttonName: string, pressType: ButtonPressType): void;
|
|
23
|
+
/** @inheritDoc */
|
|
18
24
|
update(idSplit: string[], state: ioBroker.State, initial?: boolean, pOverrride?: boolean): void;
|
|
25
|
+
/** @inheritDoc */
|
|
19
26
|
abstract getButtonAssignment(): string;
|
|
27
|
+
/** @inheritDoc */
|
|
20
28
|
pressButton(position: ButtonPosition, pressType: ButtonPressType): Error | null;
|
|
21
29
|
}
|