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
|
@@ -1,8 +1,30 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The settings for the polly-service (if needed).
|
|
3
|
+
* This service is used to convert text to speech.
|
|
4
|
+
*/
|
|
1
5
|
export interface iPollySettings {
|
|
6
|
+
/**
|
|
7
|
+
* The path to store the mp3 files
|
|
8
|
+
*/
|
|
2
9
|
mp3Path: string;
|
|
10
|
+
/**
|
|
11
|
+
* The region to use for the Polly service
|
|
12
|
+
*/
|
|
3
13
|
region: string;
|
|
14
|
+
/**
|
|
15
|
+
* The signature version to use for the Polly service
|
|
16
|
+
*/
|
|
4
17
|
signatureVersion: string;
|
|
18
|
+
/**
|
|
19
|
+
* Your AWS access key id
|
|
20
|
+
*/
|
|
5
21
|
accessKeyId: string;
|
|
22
|
+
/**
|
|
23
|
+
* Your AWS secret access key
|
|
24
|
+
*/
|
|
6
25
|
secretAccessKey: string;
|
|
26
|
+
/**
|
|
27
|
+
* The voice id to use for the Polly service
|
|
28
|
+
*/
|
|
7
29
|
voiceID: string;
|
|
8
30
|
}
|
|
@@ -1,4 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Interface for the REST settings.
|
|
3
|
+
* This is primarily used to configure the REST service within Hoffmation-Express.
|
|
4
|
+
*/
|
|
1
5
|
export interface iRestSettings {
|
|
6
|
+
/**
|
|
7
|
+
* Whether the REST service should be active.
|
|
8
|
+
*/
|
|
2
9
|
active: boolean;
|
|
10
|
+
/**
|
|
11
|
+
* The port the REST service should listen on.
|
|
12
|
+
*/
|
|
3
13
|
port?: number;
|
|
4
14
|
}
|
|
@@ -1,4 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The settings for the Sonos-Service (if present).
|
|
3
|
+
*/
|
|
1
4
|
export interface iSonosSettings {
|
|
5
|
+
/**
|
|
6
|
+
* Whether the Sonos service should be active.
|
|
7
|
+
*/
|
|
2
8
|
active: boolean;
|
|
9
|
+
/**
|
|
10
|
+
* Whether Room Default Callbacks should be added to start Radio on Bottom Right long button press.
|
|
11
|
+
* @warning This can collide with AC-Control (@see {@link iDaikinSettings.buttonBotRightForAc})
|
|
12
|
+
*/
|
|
3
13
|
buttonBotRightForRadio?: boolean;
|
|
4
14
|
}
|
|
@@ -1,7 +1,24 @@
|
|
|
1
1
|
import { LogLevel } from '../../models';
|
|
2
|
+
/**
|
|
3
|
+
* The settings for the telegram-service (if needed).
|
|
4
|
+
* Telegram can be used to have a communication channel to the house and to receive notifications.
|
|
5
|
+
*/
|
|
2
6
|
export interface iTelegramSettings {
|
|
7
|
+
/**
|
|
8
|
+
* The threshold for the log level to trigger a message to telegram
|
|
9
|
+
* TODO: Maybe migrate to {@link iLogSettings}
|
|
10
|
+
*/
|
|
3
11
|
logLevel: LogLevel;
|
|
12
|
+
/**
|
|
13
|
+
* The token for the telegram bot
|
|
14
|
+
*/
|
|
4
15
|
telegramToken: string;
|
|
16
|
+
/**
|
|
17
|
+
* The allowed IDs for clients interacting with the bot
|
|
18
|
+
*/
|
|
5
19
|
allowedIDs: number[];
|
|
20
|
+
/**
|
|
21
|
+
* The IDs that are subscribed to updates from us (e.g. for notifications)
|
|
22
|
+
*/
|
|
6
23
|
subscribedIDs: number[];
|
|
7
24
|
}
|
|
@@ -1,4 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The settings for the Tibber-Service (if needed).
|
|
3
|
+
* Tibber is an energy provider which can be used to have hourly energy prices.
|
|
4
|
+
*/
|
|
1
5
|
export interface iTibberSettings {
|
|
6
|
+
/**
|
|
7
|
+
* The API key for Tibber-API-Authorization
|
|
8
|
+
*/
|
|
2
9
|
apiKey: string;
|
|
10
|
+
/**
|
|
11
|
+
* The home ID for this home within the Tibber Account
|
|
12
|
+
*/
|
|
3
13
|
homeId: string;
|
|
4
14
|
}
|
|
@@ -1,5 +1,14 @@
|
|
|
1
1
|
import { iTimePair } from './iTimePair';
|
|
2
|
+
/**
|
|
3
|
+
* The settings for the time-service.
|
|
4
|
+
*/
|
|
2
5
|
export interface iTimeSettings {
|
|
6
|
+
/**
|
|
7
|
+
* The time which should be considered as the start of the night
|
|
8
|
+
*/
|
|
3
9
|
nightStart: iTimePair;
|
|
10
|
+
/**
|
|
11
|
+
* The time which should be considered as the end of the night
|
|
12
|
+
*/
|
|
4
13
|
nightEnd: iTimePair;
|
|
5
14
|
}
|
|
@@ -1,3 +1,13 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The settings for the translation-service.
|
|
3
|
+
* The translation-service is used to provide certain messages in the desired language.
|
|
4
|
+
* Currently only german and english are supported.
|
|
5
|
+
* @warning The translation-service is not yet fully implemented and only used in some cases.
|
|
6
|
+
*/
|
|
1
7
|
export interface iTranslationSettings {
|
|
8
|
+
/**
|
|
9
|
+
* The desired language for the translations
|
|
10
|
+
* @default 'en'
|
|
11
|
+
*/
|
|
2
12
|
language: string;
|
|
3
13
|
}
|
|
@@ -1,11 +1,42 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The options neded to connect to a Unifi controller
|
|
3
|
+
*/
|
|
1
4
|
export interface iUnifiConnectionOptions {
|
|
5
|
+
/**
|
|
6
|
+
* The host address of the Unifi controller (or its IP address)
|
|
7
|
+
*/
|
|
2
8
|
host?: string;
|
|
9
|
+
/**
|
|
10
|
+
* The port of the Unifi controller
|
|
11
|
+
*/
|
|
3
12
|
port?: number;
|
|
13
|
+
/**
|
|
14
|
+
* The username used to log in to the Unifi controller (if needed)
|
|
15
|
+
*/
|
|
4
16
|
username?: string;
|
|
17
|
+
/**
|
|
18
|
+
* The password used to log in to the Unifi controller (if needed)
|
|
19
|
+
*/
|
|
5
20
|
password?: string;
|
|
21
|
+
/**
|
|
22
|
+
* The 2FA token used to log in to the Unifi controller (if needed)
|
|
23
|
+
* @warning This is not recommended to be used, as after a reboot you would need a new token
|
|
24
|
+
*/
|
|
6
25
|
token2FA?: string;
|
|
26
|
+
/**
|
|
27
|
+
* The site of this house (if needed)
|
|
28
|
+
*/
|
|
7
29
|
site?: string;
|
|
30
|
+
/**
|
|
31
|
+
* Whether to verify the SSL certificate of the Unifi controller or connect anyway
|
|
32
|
+
*/
|
|
8
33
|
sslverify?: boolean;
|
|
34
|
+
/**
|
|
35
|
+
* The timeout for the connection to the Unifi controller
|
|
36
|
+
*/
|
|
9
37
|
timeout?: number;
|
|
38
|
+
/**
|
|
39
|
+
* Whether to stay logged in or to reauthenticate on each request
|
|
40
|
+
*/
|
|
10
41
|
rememberMe?: boolean;
|
|
11
42
|
}
|
|
@@ -1,4 +1,12 @@
|
|
|
1
1
|
import { iUnifiConnectionOptions } from './iUnifiConnectionOptions';
|
|
2
|
+
/**
|
|
3
|
+
* The settings for the Unifi-Service (if needed).
|
|
4
|
+
* Unifi is a network management system which can be used to monitor and control the network and devices.
|
|
5
|
+
* Within Hoffmation it is mainly used to reconnect devices if they are not reachable.
|
|
6
|
+
*/
|
|
2
7
|
export interface iUnifiSettings {
|
|
8
|
+
/**
|
|
9
|
+
* The options for connecting to the Unifi controller
|
|
10
|
+
*/
|
|
3
11
|
loginOptions: iUnifiConnectionOptions;
|
|
4
12
|
}
|
|
@@ -1,6 +1,20 @@
|
|
|
1
1
|
import { InfluxDbConnectionOptions } from 'victron-mqtt-consumer/build/models/InfluxDbConnectionOptions';
|
|
2
|
+
/**
|
|
3
|
+
* The settings for the Victron-Service (if present).
|
|
4
|
+
* Victron is a energy management system which provides solar or battery power.
|
|
5
|
+
*/
|
|
2
6
|
export interface iVictronSettings {
|
|
7
|
+
/**
|
|
8
|
+
* The address of the Victron GX device
|
|
9
|
+
*/
|
|
3
10
|
host: string;
|
|
11
|
+
/**
|
|
12
|
+
* The information to connect to the InfluxDB for storing the data
|
|
13
|
+
*/
|
|
4
14
|
influxDb: InfluxDbConnectionOptions;
|
|
15
|
+
/**
|
|
16
|
+
* Whether further information should be logged
|
|
17
|
+
* TODO: Move this to a respective {@link LogDebugType}
|
|
18
|
+
*/
|
|
5
19
|
debug: boolean;
|
|
6
20
|
}
|
|
@@ -1,5 +1,18 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The settings for the weather-service (if needed).
|
|
3
|
+
* The weather-service is used to get weather data for the house location.
|
|
4
|
+
*/
|
|
1
5
|
export interface iWeatherSettings {
|
|
6
|
+
/**
|
|
7
|
+
* The lattitude of the location
|
|
8
|
+
*/
|
|
2
9
|
lattitude: string;
|
|
10
|
+
/**
|
|
11
|
+
* The longitude of the location
|
|
12
|
+
*/
|
|
3
13
|
longitude: string;
|
|
14
|
+
/**
|
|
15
|
+
* App-ID from OpenWeatherMap
|
|
16
|
+
*/
|
|
4
17
|
appid?: string;
|
|
5
18
|
}
|
|
@@ -25,6 +25,7 @@ var DeviceCapability;
|
|
|
25
25
|
DeviceCapability[DeviceCapability["smokeSensor"] = 19] = "smokeSensor";
|
|
26
26
|
DeviceCapability[DeviceCapability["loadMetering"] = 20] = "loadMetering";
|
|
27
27
|
DeviceCapability[DeviceCapability["garageDoorOpener"] = 21] = "garageDoorOpener";
|
|
28
|
+
DeviceCapability[DeviceCapability["magnetSensor"] = 22] = "magnetSensor";
|
|
28
29
|
DeviceCapability[DeviceCapability["bluetoothDetector"] = 101] = "bluetoothDetector";
|
|
29
30
|
DeviceCapability[DeviceCapability["trackableDevice"] = 102] = "trackableDevice";
|
|
30
31
|
DeviceCapability[DeviceCapability["scene"] = 103] = "scene";
|
|
@@ -1,6 +1,15 @@
|
|
|
1
1
|
export declare class DeviceInfo {
|
|
2
|
+
/**
|
|
3
|
+
* The complete name of the device in a human readable format
|
|
4
|
+
*/
|
|
2
5
|
fullName: string;
|
|
6
|
+
/**
|
|
7
|
+
* The roomname matching {@link iRoomBase.roomName}
|
|
8
|
+
*/
|
|
3
9
|
room: string;
|
|
10
|
+
/**
|
|
11
|
+
* If present the key to access this device in {@link Devices.alLDevices}
|
|
12
|
+
*/
|
|
4
13
|
allDevicesKey?: string;
|
|
5
14
|
private _customName?;
|
|
6
15
|
get customName(): string;
|
|
@@ -3,7 +3,13 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.DeviceInfo = void 0;
|
|
4
4
|
class DeviceInfo {
|
|
5
5
|
constructor() {
|
|
6
|
+
/**
|
|
7
|
+
* The complete name of the device in a human readable format
|
|
8
|
+
*/
|
|
6
9
|
this.fullName = '';
|
|
10
|
+
/**
|
|
11
|
+
* The roomname matching {@link iRoomBase.roomName}
|
|
12
|
+
*/
|
|
7
13
|
this.room = '';
|
|
8
14
|
}
|
|
9
15
|
get customName() {
|
|
@@ -8,10 +8,9 @@ class Griffe {
|
|
|
8
8
|
static getGriffPosition() {
|
|
9
9
|
const griffe = Griffe.getAllGriffe();
|
|
10
10
|
griffe.sort((a, b) => {
|
|
11
|
-
a.position;
|
|
12
11
|
return b.position - a.position;
|
|
13
12
|
});
|
|
14
|
-
const response = [
|
|
13
|
+
const response = ['These are the current handle positions:'];
|
|
15
14
|
for (const g of griffe) {
|
|
16
15
|
response.push(`${models_1.WindowPosition[g.position]} Window: "${g.info.customName}"`);
|
|
17
16
|
}
|
|
@@ -6,8 +6,8 @@ const devices_1 = require("./devices");
|
|
|
6
6
|
class Heizgruppen {
|
|
7
7
|
static getProblems() {
|
|
8
8
|
const groups = this.getAllGruppen();
|
|
9
|
-
const response = [
|
|
10
|
-
response.push(
|
|
9
|
+
const response = ['Dies sind die bestehenden Differenzen:'];
|
|
10
|
+
response.push('Raumname\t\tIst-Temperatur\t\tGerät');
|
|
11
11
|
for (const g of groups) {
|
|
12
12
|
const heizungen = g.getBelongingHeizungen();
|
|
13
13
|
const tempProblem = [`${g.info.room}\t\t${g.iTemperature}°C\t\t${g.info.customName}`];
|
|
@@ -8,57 +8,73 @@ import { DeviceCapability } from './DeviceCapability';
|
|
|
8
8
|
export declare abstract class IoBrokerBaseDevice implements iRoomDevice {
|
|
9
9
|
protected _info: IoBrokerDeviceInfo;
|
|
10
10
|
deviceType: DeviceType;
|
|
11
|
-
|
|
11
|
+
/**
|
|
12
|
+
* The settings for adding devices to Rooms
|
|
13
|
+
*/
|
|
12
14
|
static roomAddingSettings: {
|
|
13
15
|
[id: string]: RoomDeviceAddingSettings;
|
|
14
16
|
};
|
|
17
|
+
/**
|
|
18
|
+
* @inheritDoc
|
|
19
|
+
* @default undefined (no Settings)
|
|
20
|
+
*/
|
|
21
|
+
settings: DeviceSettings | undefined;
|
|
15
22
|
private _room;
|
|
23
|
+
/** @inheritDoc */
|
|
16
24
|
readonly deviceCapabilities: DeviceCapability[];
|
|
25
|
+
protected _debounceStateDelay: number;
|
|
26
|
+
protected _lastWrite: number;
|
|
27
|
+
protected stateMap: Map<string, ioBroker.State>;
|
|
28
|
+
/** @inheritDoc */
|
|
17
29
|
get customName(): string;
|
|
30
|
+
/** @inheritDoc */
|
|
18
31
|
get room(): RoomBase;
|
|
19
32
|
protected readonly individualStateCallbacks: Map<string, Array<(val: ioBroker.StateValue) => void>>;
|
|
20
33
|
protected constructor(_info: IoBrokerDeviceInfo, deviceType: DeviceType);
|
|
34
|
+
/** @inheritDoc */
|
|
21
35
|
get id(): string;
|
|
22
36
|
/**
|
|
23
37
|
* Getter info
|
|
24
|
-
* @
|
|
38
|
+
* @returns The device info
|
|
25
39
|
*/
|
|
26
40
|
get info(): IoBrokerDeviceInfo;
|
|
27
|
-
/**
|
|
28
|
-
* Setter info
|
|
29
|
-
* @param {IoBrokerDeviceInfo} value
|
|
30
|
-
*/
|
|
31
|
-
set info(value: IoBrokerDeviceInfo);
|
|
32
|
-
/**
|
|
33
|
-
* Getter ioConn
|
|
34
|
-
* @return {IOBrokerConnection}
|
|
35
|
-
*/
|
|
36
41
|
get ioConn(): IOBrokerConnection | undefined;
|
|
37
42
|
static addRoom(shortName: string, settings: RoomDeviceAddingSettings): void;
|
|
38
43
|
static checkMissing(): void;
|
|
44
|
+
/** @inheritDoc */
|
|
39
45
|
loadDeviceSettings(): void;
|
|
40
46
|
/**
|
|
41
47
|
* Allows to react on the state change of a given state with the passed cb
|
|
42
|
-
* @param
|
|
43
|
-
* @param
|
|
48
|
+
* @param stateName - Last part of the id e.g. "available" not "zigbee.0.00158d00053d3e4b.available"
|
|
49
|
+
* @param cb - Desired Callback Action, with passed ioBroker.StateValue
|
|
44
50
|
*/
|
|
45
51
|
addIndividualStateCallback(stateName: string, cb: (val: ioBroker.StateValue) => void): void;
|
|
46
52
|
/**
|
|
47
53
|
* Returns whether a connection to ioBroker is established or not
|
|
48
|
-
* @param showError If true, an error message will be written to the log if the connection is not established
|
|
54
|
+
* @param showError - If true, an error message will be written to the log if the connection is not established
|
|
55
|
+
* @returns Whether a connection exists
|
|
49
56
|
*/
|
|
50
57
|
checkIoConnection(showError?: boolean): boolean;
|
|
58
|
+
/**
|
|
59
|
+
* Updates the state of a given data point
|
|
60
|
+
* @param {string[]} idSplit - ID of the data point
|
|
61
|
+
* @param {ioBroker.State} state - New state
|
|
62
|
+
* @param {boolean} initial - Whether this is during the initial update
|
|
63
|
+
* @param {boolean} pOverride - Whether the child class did override this method
|
|
64
|
+
*/
|
|
51
65
|
abstract update(idSplit: string[], state: ioBroker.State, initial: boolean, pOverride: boolean): void;
|
|
52
66
|
log(level: LogLevel, message: string, logDebugType?: LogDebugType): void;
|
|
67
|
+
/** @inheritDoc */
|
|
53
68
|
toJSON(): Partial<IoBrokerBaseDevice>;
|
|
69
|
+
/** @inheritDoc */
|
|
54
70
|
persistDeviceInfo(): void;
|
|
55
71
|
protected addToCorrectRoom(): void;
|
|
56
72
|
/**
|
|
57
73
|
* Sets the state of a given data point and returns true if that was successful.
|
|
58
|
-
* @param pointId Data point to write to
|
|
59
|
-
* @param state Data to write
|
|
60
|
-
* @param onSuccess Callback to run on successfully written data
|
|
61
|
-
* @param onError Callback to run if an error has occurred during writing the data
|
|
74
|
+
* @param pointId - Data point to write to
|
|
75
|
+
* @param state - Data to write
|
|
76
|
+
* @param onSuccess - Callback to run on successfully written data
|
|
77
|
+
* @param onError - Callback to run if an error has occurred during writing the data
|
|
62
78
|
*/
|
|
63
79
|
protected setState(pointId: string, state: string | number | boolean | ioBroker.State | ioBroker.SettableState | null, onSuccess?: (() => void) | undefined, onError?: ((error: Error) => void) | undefined): void;
|
|
64
80
|
}
|
|
@@ -5,9 +5,11 @@ const services_1 = require("../services");
|
|
|
5
5
|
const models_1 = require("../../models");
|
|
6
6
|
const ioBroker_1 = require("../ioBroker");
|
|
7
7
|
class IoBrokerBaseDevice {
|
|
8
|
+
/** @inheritDoc */
|
|
8
9
|
get customName() {
|
|
9
10
|
return this.info.customName;
|
|
10
11
|
}
|
|
12
|
+
/** @inheritDoc */
|
|
11
13
|
get room() {
|
|
12
14
|
if (this._room === undefined) {
|
|
13
15
|
this._room = services_1.Utils.guard(services_1.API.getRoom(this.info.room));
|
|
@@ -17,14 +19,24 @@ class IoBrokerBaseDevice {
|
|
|
17
19
|
constructor(_info, deviceType) {
|
|
18
20
|
this._info = _info;
|
|
19
21
|
this.deviceType = deviceType;
|
|
22
|
+
/**
|
|
23
|
+
* @inheritDoc
|
|
24
|
+
* @default undefined (no Settings)
|
|
25
|
+
*/
|
|
20
26
|
this.settings = undefined;
|
|
21
27
|
this._room = undefined;
|
|
28
|
+
/** @inheritDoc */
|
|
22
29
|
this.deviceCapabilities = [];
|
|
30
|
+
// If configured > 0, this indicates the minimum time between state writes in ms
|
|
31
|
+
this._debounceStateDelay = 0;
|
|
32
|
+
this._lastWrite = 0;
|
|
33
|
+
this.stateMap = new Map();
|
|
23
34
|
this.individualStateCallbacks = new Map();
|
|
24
35
|
this.addToCorrectRoom();
|
|
25
36
|
this.persistDeviceInfo();
|
|
26
37
|
services_1.Utils.guardedTimeout(this.loadDeviceSettings, 300, this);
|
|
27
38
|
}
|
|
39
|
+
/** @inheritDoc */
|
|
28
40
|
get id() {
|
|
29
41
|
const result = services_1.Utils.guard(this.info.allDevicesKey);
|
|
30
42
|
if (result === '0' || result === '1') {
|
|
@@ -34,28 +46,17 @@ class IoBrokerBaseDevice {
|
|
|
34
46
|
}
|
|
35
47
|
/**
|
|
36
48
|
* Getter info
|
|
37
|
-
* @
|
|
49
|
+
* @returns The device info
|
|
38
50
|
*/
|
|
39
51
|
get info() {
|
|
40
52
|
return this._info;
|
|
41
53
|
}
|
|
42
|
-
/**
|
|
43
|
-
* Setter info
|
|
44
|
-
* @param {IoBrokerDeviceInfo} value
|
|
45
|
-
*/
|
|
46
|
-
set info(value) {
|
|
47
|
-
this._info = value;
|
|
48
|
-
}
|
|
49
|
-
/**
|
|
50
|
-
* Getter ioConn
|
|
51
|
-
* @return {IOBrokerConnection}
|
|
52
|
-
*/
|
|
53
54
|
get ioConn() {
|
|
54
55
|
return ioBroker_1.ioBrokerMain.iOConnection;
|
|
55
56
|
}
|
|
56
57
|
static addRoom(shortName, settings) {
|
|
57
58
|
if (this.roomAddingSettings[shortName] !== undefined) {
|
|
58
|
-
services_1.ServerLogService.writeLog(models_1.LogLevel.Alert, `Es gibt bereits ein Registrat für
|
|
59
|
+
services_1.ServerLogService.writeLog(models_1.LogLevel.Alert, `Es gibt bereits ein Registrat für Roomsetings für den Raumnamen "${shortName}"`);
|
|
59
60
|
return;
|
|
60
61
|
}
|
|
61
62
|
this.roomAddingSettings[shortName] = settings;
|
|
@@ -65,14 +66,15 @@ class IoBrokerBaseDevice {
|
|
|
65
66
|
this.roomAddingSettings[rName].checkMissing();
|
|
66
67
|
}
|
|
67
68
|
}
|
|
69
|
+
/** @inheritDoc */
|
|
68
70
|
loadDeviceSettings() {
|
|
69
71
|
var _a;
|
|
70
72
|
(_a = this.settings) === null || _a === void 0 ? void 0 : _a.initializeFromDb(this);
|
|
71
73
|
}
|
|
72
74
|
/**
|
|
73
75
|
* Allows to react on the state change of a given state with the passed cb
|
|
74
|
-
* @param
|
|
75
|
-
* @param
|
|
76
|
+
* @param stateName - Last part of the id e.g. "available" not "zigbee.0.00158d00053d3e4b.available"
|
|
77
|
+
* @param cb - Desired Callback Action, with passed ioBroker.StateValue
|
|
76
78
|
*/
|
|
77
79
|
addIndividualStateCallback(stateName, cb) {
|
|
78
80
|
let arr = this.individualStateCallbacks.get(stateName);
|
|
@@ -86,7 +88,8 @@ class IoBrokerBaseDevice {
|
|
|
86
88
|
}
|
|
87
89
|
/**
|
|
88
90
|
* Returns whether a connection to ioBroker is established or not
|
|
89
|
-
* @param showError If true, an error message will be written to the log if the connection is not established
|
|
91
|
+
* @param showError - If true, an error message will be written to the log if the connection is not established
|
|
92
|
+
* @returns Whether a connection exists
|
|
90
93
|
*/
|
|
91
94
|
checkIoConnection(showError = false) {
|
|
92
95
|
if (!this.ioConn && showError) {
|
|
@@ -102,9 +105,11 @@ class IoBrokerBaseDevice {
|
|
|
102
105
|
debugType: logDebugType,
|
|
103
106
|
});
|
|
104
107
|
}
|
|
108
|
+
/** @inheritDoc */
|
|
105
109
|
toJSON() {
|
|
106
110
|
return services_1.Utils.jsonFilter(this, ['individualStateCallbacks'], ['_room']);
|
|
107
111
|
}
|
|
112
|
+
/** @inheritDoc */
|
|
108
113
|
persistDeviceInfo() {
|
|
109
114
|
services_1.Utils.guardedTimeout(() => {
|
|
110
115
|
var _a;
|
|
@@ -142,23 +147,31 @@ class IoBrokerBaseDevice {
|
|
|
142
147
|
}
|
|
143
148
|
/**
|
|
144
149
|
* Sets the state of a given data point and returns true if that was successful.
|
|
145
|
-
* @param pointId Data point to write to
|
|
146
|
-
* @param state Data to write
|
|
147
|
-
* @param onSuccess Callback to run on successfully written data
|
|
148
|
-
* @param onError Callback to run if an error has occurred during writing the data
|
|
150
|
+
* @param pointId - Data point to write to
|
|
151
|
+
* @param state - Data to write
|
|
152
|
+
* @param onSuccess - Callback to run on successfully written data
|
|
153
|
+
* @param onError - Callback to run if an error has occurred during writing the data
|
|
149
154
|
*/
|
|
150
155
|
setState(pointId, state, onSuccess = undefined, onError = undefined) {
|
|
151
156
|
var _a;
|
|
152
157
|
if (!this.checkIoConnection(true)) {
|
|
153
158
|
return;
|
|
154
159
|
}
|
|
160
|
+
if (this._debounceStateDelay > 0 && services_1.Utils.nowMS() - this._lastWrite < this._debounceStateDelay) {
|
|
161
|
+
services_1.Utils.guardedTimeout(() => {
|
|
162
|
+
this.log(models_1.LogLevel.Trace, `Debounced write for ${pointId} to ${state}`);
|
|
163
|
+
this.setState(pointId, state, onSuccess, onError);
|
|
164
|
+
}, this._debounceStateDelay, this);
|
|
165
|
+
return;
|
|
166
|
+
}
|
|
167
|
+
this._lastWrite = services_1.Utils.nowMS();
|
|
155
168
|
(_a = this.ioConn) === null || _a === void 0 ? void 0 : _a.setState(pointId, state, (err) => {
|
|
156
169
|
if (err) {
|
|
157
170
|
if (onError) {
|
|
158
171
|
onError(err);
|
|
159
172
|
}
|
|
160
173
|
else {
|
|
161
|
-
|
|
174
|
+
this.log(models_1.LogLevel.Error, `Error occured while setting state "${pointId}" to "${state}": ${err}`);
|
|
162
175
|
}
|
|
163
176
|
return;
|
|
164
177
|
}
|
|
@@ -169,4 +182,7 @@ class IoBrokerBaseDevice {
|
|
|
169
182
|
}
|
|
170
183
|
}
|
|
171
184
|
exports.IoBrokerBaseDevice = IoBrokerBaseDevice;
|
|
185
|
+
/**
|
|
186
|
+
* The settings for adding devices to Rooms
|
|
187
|
+
*/
|
|
172
188
|
IoBrokerBaseDevice.roomAddingSettings = {};
|
|
@@ -13,8 +13,8 @@ export declare class IoBrokerDeviceInfo extends DeviceInfo {
|
|
|
13
13
|
private static replaceInvalidIdChars;
|
|
14
14
|
/**
|
|
15
15
|
* Extracts the relevant infos from the passed deviceConfig and combines them in a new Info object
|
|
16
|
-
* @param
|
|
17
|
-
* @param
|
|
16
|
+
* @param pDevConf - The device Config based on the extracted devices.json from ioBroker
|
|
17
|
+
* @param isJsStateChildObject - Within JS Objects, creating devices is limited,
|
|
18
18
|
* so we name the first child state for the object creation (e.g. javascript.0.00-EnergyManager.CurrentProduction)
|
|
19
19
|
*/
|
|
20
20
|
constructor(pDevConf: deviceConfig, isJsStateChildObject?: boolean);
|
|
@@ -19,8 +19,8 @@ class IoBrokerDeviceInfo extends DeviceInfo_1.DeviceInfo {
|
|
|
19
19
|
}
|
|
20
20
|
/**
|
|
21
21
|
* Extracts the relevant infos from the passed deviceConfig and combines them in a new Info object
|
|
22
|
-
* @param
|
|
23
|
-
* @param
|
|
22
|
+
* @param pDevConf - The device Config based on the extracted devices.json from ioBroker
|
|
23
|
+
* @param isJsStateChildObject - Within JS Objects, creating devices is limited,
|
|
24
24
|
* so we name the first child state for the object creation (e.g. javascript.0.00-EnergyManager.CurrentProduction)
|
|
25
25
|
*/
|
|
26
26
|
constructor(pDevConf, isJsStateChildObject = false) {
|
|
@@ -46,7 +46,8 @@ class IoBrokerDeviceInfo extends DeviceInfo_1.DeviceInfo {
|
|
|
46
46
|
if (idSplit.length > 4) {
|
|
47
47
|
this.valueName = idSplit[4];
|
|
48
48
|
}
|
|
49
|
-
/**
|
|
49
|
+
/**
|
|
50
|
+
* Name-Split
|
|
50
51
|
* 0: Indikator own "00"
|
|
51
52
|
* 1: "HmIP"
|
|
52
53
|
* 2: Raum
|
|
@@ -60,7 +61,8 @@ class IoBrokerDeviceInfo extends DeviceInfo_1.DeviceInfo {
|
|
|
60
61
|
return;
|
|
61
62
|
}
|
|
62
63
|
else {
|
|
63
|
-
/**
|
|
64
|
+
/**
|
|
65
|
+
* Name-Split
|
|
64
66
|
* 0: Indikator own "00"
|
|
65
67
|
* 1: "EnergyManager"
|
|
66
68
|
* 2: Raum
|