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
|
@@ -15,18 +15,24 @@ const blockAutomaticHandler_1 = require("../blockAutomaticHandler");
|
|
|
15
15
|
class OwnGoveeDevice {
|
|
16
16
|
constructor(deviceId, ownDeviceName, roomName, device) {
|
|
17
17
|
this.device = device;
|
|
18
|
+
/** @inheritDoc */
|
|
18
19
|
this.settings = new models_1.LedSettings();
|
|
20
|
+
/** @inheritDoc */
|
|
19
21
|
this.deviceType = devices_1.DeviceType.GoveeLed;
|
|
22
|
+
/** @inheritDoc */
|
|
20
23
|
this.deviceCapabilities = [
|
|
21
24
|
DeviceCapability_1.DeviceCapability.ledLamp,
|
|
22
25
|
DeviceCapability_1.DeviceCapability.lamp,
|
|
23
26
|
DeviceCapability_1.DeviceCapability.dimmablelamp,
|
|
24
27
|
DeviceCapability_1.DeviceCapability.blockAutomatic,
|
|
25
28
|
];
|
|
26
|
-
|
|
29
|
+
/** @inheritDoc */
|
|
27
30
|
this.queuedValue = null;
|
|
31
|
+
/** @inheritDoc */
|
|
28
32
|
this.brightness = -1;
|
|
33
|
+
/** @inheritDoc */
|
|
29
34
|
this.targetAutomaticState = false;
|
|
35
|
+
this._actuatorOn = false;
|
|
30
36
|
this._color = '#fcba32';
|
|
31
37
|
this._colortemp = 500;
|
|
32
38
|
this._room = undefined;
|
|
@@ -38,7 +44,7 @@ class OwnGoveeDevice {
|
|
|
38
44
|
this._info.allDevicesKey = `govee-${roomName}-${deviceId}`;
|
|
39
45
|
devices_1.Devices.alLDevices[`govee-${roomName}-${deviceId}`] = this;
|
|
40
46
|
this.persistDeviceInfo();
|
|
41
|
-
this.blockAutomationHandler = new blockAutomaticHandler_1.BlockAutomaticHandler(this.restoreTargetAutomaticValue.bind(this));
|
|
47
|
+
this.blockAutomationHandler = new blockAutomaticHandler_1.BlockAutomaticHandler(this.restoreTargetAutomaticValue.bind(this), this.log.bind(this));
|
|
42
48
|
utils_1.Utils.guardedTimeout(this.loadDeviceSettings, 300, this);
|
|
43
49
|
}
|
|
44
50
|
get color() {
|
|
@@ -57,17 +63,11 @@ class OwnGoveeDevice {
|
|
|
57
63
|
return this.info.customName;
|
|
58
64
|
}
|
|
59
65
|
get actuatorOn() {
|
|
60
|
-
return this.
|
|
61
|
-
}
|
|
62
|
-
get lightOn() {
|
|
63
|
-
return this.on;
|
|
66
|
+
return this._actuatorOn;
|
|
64
67
|
}
|
|
65
68
|
get info() {
|
|
66
69
|
return this._info;
|
|
67
70
|
}
|
|
68
|
-
set info(info) {
|
|
69
|
-
this._info = info;
|
|
70
|
-
}
|
|
71
71
|
get id() {
|
|
72
72
|
var _a;
|
|
73
73
|
return (_a = this.info.allDevicesKey) !== null && _a !== void 0 ? _a : `govee-${this.info.room}-${this.info.customName}`;
|
|
@@ -77,7 +77,7 @@ class OwnGoveeDevice {
|
|
|
77
77
|
}
|
|
78
78
|
log(level, message, debugType = log_service_1.LogDebugType.None) {
|
|
79
79
|
var _a, _b;
|
|
80
|
-
log_service_1.ServerLogService.writeLog(level,
|
|
80
|
+
log_service_1.ServerLogService.writeLog(level, message, {
|
|
81
81
|
debugType: debugType,
|
|
82
82
|
room: (_b = (_a = this._room) === null || _a === void 0 ? void 0 : _a.roomName) !== null && _b !== void 0 ? _b : '',
|
|
83
83
|
deviceId: this.name,
|
|
@@ -96,20 +96,16 @@ class OwnGoveeDevice {
|
|
|
96
96
|
loadDeviceSettings() {
|
|
97
97
|
this.settings.initializeFromDb(this);
|
|
98
98
|
}
|
|
99
|
-
/**
|
|
100
|
-
* @inheritDoc
|
|
101
|
-
*/
|
|
99
|
+
/** @inheritDoc */
|
|
102
100
|
setTimeBased(c) {
|
|
103
101
|
this.setLight(models_1.LedSetLightCommand.byTimeBased(this.settings, c));
|
|
104
102
|
}
|
|
105
|
-
/**
|
|
106
|
-
* @inheritDoc
|
|
107
|
-
*/
|
|
103
|
+
/** @inheritDoc */
|
|
108
104
|
setLight(c) {
|
|
109
105
|
if (c.on && c.brightness === -1 && this.brightness < 10) {
|
|
110
106
|
c.brightness = 10;
|
|
111
107
|
}
|
|
112
|
-
this.log(models_1.LogLevel.Debug, c.logMessage);
|
|
108
|
+
this.log(models_1.LogLevel.Debug, c.logMessage, log_service_1.LogDebugType.SetActuator);
|
|
113
109
|
const formattedColor = utils_1.Utils.formatHex(c.color);
|
|
114
110
|
if (formattedColor !== null) {
|
|
115
111
|
this.setColor(c.color);
|
|
@@ -118,10 +114,15 @@ class OwnGoveeDevice {
|
|
|
118
114
|
if (devices_1.LampUtils.checkBlockActive(this, c)) {
|
|
119
115
|
return;
|
|
120
116
|
}
|
|
121
|
-
|
|
117
|
+
if (c.isAutomaticAction) {
|
|
118
|
+
// Preserve the target state for the automatic handler, as
|
|
119
|
+
this.targetAutomaticState = c.on;
|
|
120
|
+
}
|
|
121
|
+
if (devices_1.LampUtils.canDimmerChangeBeSkipped(this, c)) {
|
|
122
|
+
return;
|
|
123
|
+
}
|
|
122
124
|
if (c.brightness > -1 && c.on) {
|
|
123
125
|
this.setBrightness(c.brightness, () => {
|
|
124
|
-
this.log(models_1.LogLevel.Debug, `Brightness set to ${c.brightness}`);
|
|
125
126
|
this.turnOn();
|
|
126
127
|
});
|
|
127
128
|
}
|
|
@@ -131,16 +132,15 @@ class OwnGoveeDevice {
|
|
|
131
132
|
else {
|
|
132
133
|
this.turnOff();
|
|
133
134
|
}
|
|
134
|
-
if (c.
|
|
135
|
-
this.blockAutomationHandler.disableAutomatic(c.
|
|
135
|
+
if (c.disableAutomaticCommand && !dontBlock) {
|
|
136
|
+
this.blockAutomationHandler.disableAutomatic(c.disableAutomaticCommand);
|
|
136
137
|
}
|
|
137
138
|
}
|
|
138
139
|
setActuator(c) {
|
|
139
140
|
this.setLight(new models_1.LedSetLightCommand(c, c.on, c.reason));
|
|
140
141
|
}
|
|
141
142
|
restoreTargetAutomaticValue(c) {
|
|
142
|
-
this.
|
|
143
|
-
this.setActuator(new models_1.ActuatorSetStateCommand(c, this.targetAutomaticState, 'Restore Target Automatic value'));
|
|
143
|
+
this.setActuator(new models_1.ActuatorSetStateCommand(c, this.targetAutomaticState));
|
|
144
144
|
}
|
|
145
145
|
persist() {
|
|
146
146
|
var _a;
|
|
@@ -165,7 +165,7 @@ class OwnGoveeDevice {
|
|
|
165
165
|
}
|
|
166
166
|
update(data) {
|
|
167
167
|
this.queuedValue = null;
|
|
168
|
-
this.
|
|
168
|
+
this._actuatorOn = data.onOff === 1;
|
|
169
169
|
this.brightness = data.brightness;
|
|
170
170
|
this._color = `#${data.color.r.toString(16)}${data.color.g.toString(16)}${data.color.b.toString(16)}`;
|
|
171
171
|
this._colortemp = data.colorTemInKelvin;
|
|
@@ -196,12 +196,12 @@ class OwnGoveeDevice {
|
|
|
196
196
|
}
|
|
197
197
|
turnOn() {
|
|
198
198
|
var _a;
|
|
199
|
-
if (this.
|
|
199
|
+
if (this._actuatorOn) {
|
|
200
200
|
return;
|
|
201
201
|
}
|
|
202
202
|
this.queuedValue = true;
|
|
203
203
|
(_a = this.device) === null || _a === void 0 ? void 0 : _a.turnOn().then(() => {
|
|
204
|
-
this.log(models_1.LogLevel.Debug,
|
|
204
|
+
this.log(models_1.LogLevel.Debug, 'Govee turned on', log_service_1.LogDebugType.SetActuator);
|
|
205
205
|
}).catch((error) => {
|
|
206
206
|
this.log(models_1.LogLevel.Error, `Govee turn on resulted in error: ${error}`);
|
|
207
207
|
});
|
|
@@ -210,7 +210,7 @@ class OwnGoveeDevice {
|
|
|
210
210
|
var _a;
|
|
211
211
|
this.queuedValue = false;
|
|
212
212
|
(_a = this.device) === null || _a === void 0 ? void 0 : _a.turnOff().then(() => {
|
|
213
|
-
this.log(models_1.LogLevel.Debug,
|
|
213
|
+
this.log(models_1.LogLevel.Debug, 'Govee turned off', log_service_1.LogDebugType.SetActuator);
|
|
214
214
|
}).catch((error) => {
|
|
215
215
|
this.log(models_1.LogLevel.Error, `Govee turn off resulted in error: ${error}`);
|
|
216
216
|
});
|
|
@@ -4,8 +4,9 @@ export declare class HTTPSService {
|
|
|
4
4
|
/**
|
|
5
5
|
* Downloads a file from a given url to the given location.
|
|
6
6
|
* If the location doesn't exist, it will be created quietly.
|
|
7
|
-
* @param url URL to download file from
|
|
8
|
-
* @param filePath Path to save file to
|
|
7
|
+
* @param url - URL to download file from
|
|
8
|
+
* @param filePath - Path to save file to
|
|
9
|
+
* @returns A promise that resolves to true if the file was downloaded successfully, false otherwise
|
|
9
10
|
*/
|
|
10
11
|
static downloadFile(url: string, filePath: string): Promise<boolean>;
|
|
11
12
|
private static defaultCallback;
|
|
@@ -54,7 +54,7 @@ class HTTPSService {
|
|
|
54
54
|
}, 100);
|
|
55
55
|
}
|
|
56
56
|
else {
|
|
57
|
-
log_service_1.ServerLogService.writeLog(models_1.LogLevel.Error,
|
|
57
|
+
log_service_1.ServerLogService.writeLog(models_1.LogLevel.Error, 'HTTPS request failed after retries');
|
|
58
58
|
}
|
|
59
59
|
});
|
|
60
60
|
if (postData !== '') {
|
|
@@ -65,8 +65,9 @@ class HTTPSService {
|
|
|
65
65
|
/**
|
|
66
66
|
* Downloads a file from a given url to the given location.
|
|
67
67
|
* If the location doesn't exist, it will be created quietly.
|
|
68
|
-
* @param url URL to download file from
|
|
69
|
-
* @param filePath Path to save file to
|
|
68
|
+
* @param url - URL to download file from
|
|
69
|
+
* @param filePath - Path to save file to
|
|
70
|
+
* @returns A promise that resolves to true if the file was downloaded successfully, false otherwise
|
|
70
71
|
*/
|
|
71
72
|
static async downloadFile(url, filePath) {
|
|
72
73
|
return new Promise((resolve, reject) => {
|
|
@@ -14,6 +14,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
14
14
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
15
|
};
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
exports.FileInfo = void 0;
|
|
17
18
|
__exportStar(require("./ac/index"), exports);
|
|
18
19
|
__exportStar(require("./api/index"), exports);
|
|
19
20
|
__exportStar(require("./calendar/index"), exports);
|
|
@@ -35,3 +36,5 @@ __exportStar(require("./ShutterService"), exports);
|
|
|
35
36
|
__exportStar(require("./tibber-service"), exports);
|
|
36
37
|
__exportStar(require("./victron/index"), exports);
|
|
37
38
|
__exportStar(require("./time-callback-service"), exports);
|
|
39
|
+
var file_info_1 = require("./file-info");
|
|
40
|
+
Object.defineProperty(exports, "FileInfo", { enumerable: true, get: function () { return file_info_1.FileInfo; } });
|
|
@@ -14,6 +14,9 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
14
14
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
15
|
};
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
exports.LogDebugType = void 0;
|
|
17
18
|
__exportStar(require("./log-service"), exports);
|
|
18
19
|
__exportStar(require("./log-object"), exports);
|
|
19
20
|
__exportStar(require("./log-filter-data"), exports);
|
|
21
|
+
var log_debug_type_1 = require("./log-debug-type");
|
|
22
|
+
Object.defineProperty(exports, "LogDebugType", { enumerable: true, get: function () { return log_debug_type_1.LogDebugType; } });
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
export declare enum LogDebugType {
|
|
2
|
+
None = 0,
|
|
3
|
+
SkipUnchangedActuatorCommand = 1,
|
|
4
|
+
SkipUnchangedRolloPosition = 2,
|
|
5
|
+
SetActuator = 3,
|
|
6
|
+
ShutterPositionChange = 4,
|
|
7
|
+
NewMovementState = 5,
|
|
8
|
+
SkipUnchangedMovementState = 6,
|
|
9
|
+
DaikinSuccessfullControlInfo = 7,
|
|
10
|
+
EuroHeaterValveLogging = 8,
|
|
11
|
+
Trilateration = 9
|
|
12
|
+
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.LogDebugType = void 0;
|
|
4
|
+
var LogDebugType;
|
|
5
|
+
(function (LogDebugType) {
|
|
6
|
+
LogDebugType[LogDebugType["None"] = 0] = "None";
|
|
7
|
+
LogDebugType[LogDebugType["SkipUnchangedActuatorCommand"] = 1] = "SkipUnchangedActuatorCommand";
|
|
8
|
+
LogDebugType[LogDebugType["SkipUnchangedRolloPosition"] = 2] = "SkipUnchangedRolloPosition";
|
|
9
|
+
LogDebugType[LogDebugType["SetActuator"] = 3] = "SetActuator";
|
|
10
|
+
LogDebugType[LogDebugType["ShutterPositionChange"] = 4] = "ShutterPositionChange";
|
|
11
|
+
LogDebugType[LogDebugType["NewMovementState"] = 5] = "NewMovementState";
|
|
12
|
+
LogDebugType[LogDebugType["SkipUnchangedMovementState"] = 6] = "SkipUnchangedMovementState";
|
|
13
|
+
LogDebugType[LogDebugType["DaikinSuccessfullControlInfo"] = 7] = "DaikinSuccessfullControlInfo";
|
|
14
|
+
LogDebugType[LogDebugType["EuroHeaterValveLogging"] = 8] = "EuroHeaterValveLogging";
|
|
15
|
+
LogDebugType[LogDebugType["Trilateration"] = 9] = "Trilateration";
|
|
16
|
+
})(LogDebugType || (exports.LogDebugType = LogDebugType = {}));
|
|
@@ -1,21 +1,30 @@
|
|
|
1
1
|
import { LogSource } from '../../../models/logSource';
|
|
2
|
-
|
|
3
|
-
None = 0,
|
|
4
|
-
SkipUnchangedActuatorCommand = 1,
|
|
5
|
-
SkipUnchangedRolloPosition = 2,
|
|
6
|
-
SetActuator = 3,
|
|
7
|
-
ShutterPositionChange = 4,
|
|
8
|
-
NewMovementState = 5,
|
|
9
|
-
SkipUnchangedMovementState = 6,
|
|
10
|
-
DaikinSuccessfullControlInfo = 7,
|
|
11
|
-
EuroHeaterValveLogging = 8,
|
|
12
|
-
Trilateration = 9
|
|
13
|
-
}
|
|
2
|
+
import { LogDebugType } from './log-debug-type';
|
|
14
3
|
export declare class LogFilterData {
|
|
4
|
+
/**
|
|
5
|
+
* If given, the room this log-item is related to
|
|
6
|
+
*/
|
|
15
7
|
room?: string;
|
|
8
|
+
/**
|
|
9
|
+
* If given, the device this log-item is related to identified by its ID
|
|
10
|
+
*/
|
|
16
11
|
deviceId?: string;
|
|
12
|
+
/**
|
|
13
|
+
* If given, the name of the device this log-item is related to
|
|
14
|
+
*/
|
|
17
15
|
deviceName?: string;
|
|
16
|
+
/**
|
|
17
|
+
* If given, the group this log-item can be associated with
|
|
18
|
+
* @example WindowGroup
|
|
19
|
+
*/
|
|
18
20
|
groupType?: string;
|
|
21
|
+
/**
|
|
22
|
+
* If given, a source identifying the origin of the log-item
|
|
23
|
+
* TODO: Add further sources
|
|
24
|
+
*/
|
|
19
25
|
source?: LogSource;
|
|
26
|
+
/**
|
|
27
|
+
* If given, the debug-type which in accordance to {@link iLogSettings} might result in this being filtered out
|
|
28
|
+
*/
|
|
20
29
|
debugType?: LogDebugType;
|
|
21
30
|
}
|
|
@@ -1,22 +1,13 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.LogFilterData =
|
|
4
|
-
|
|
5
|
-
(function (LogDebugType) {
|
|
6
|
-
LogDebugType[LogDebugType["None"] = 0] = "None";
|
|
7
|
-
LogDebugType[LogDebugType["SkipUnchangedActuatorCommand"] = 1] = "SkipUnchangedActuatorCommand";
|
|
8
|
-
LogDebugType[LogDebugType["SkipUnchangedRolloPosition"] = 2] = "SkipUnchangedRolloPosition";
|
|
9
|
-
LogDebugType[LogDebugType["SetActuator"] = 3] = "SetActuator";
|
|
10
|
-
LogDebugType[LogDebugType["ShutterPositionChange"] = 4] = "ShutterPositionChange";
|
|
11
|
-
LogDebugType[LogDebugType["NewMovementState"] = 5] = "NewMovementState";
|
|
12
|
-
LogDebugType[LogDebugType["SkipUnchangedMovementState"] = 6] = "SkipUnchangedMovementState";
|
|
13
|
-
LogDebugType[LogDebugType["DaikinSuccessfullControlInfo"] = 7] = "DaikinSuccessfullControlInfo";
|
|
14
|
-
LogDebugType[LogDebugType["EuroHeaterValveLogging"] = 8] = "EuroHeaterValveLogging";
|
|
15
|
-
LogDebugType[LogDebugType["Trilateration"] = 9] = "Trilateration";
|
|
16
|
-
})(LogDebugType || (exports.LogDebugType = LogDebugType = {}));
|
|
3
|
+
exports.LogFilterData = void 0;
|
|
4
|
+
const log_debug_type_1 = require("./log-debug-type");
|
|
17
5
|
class LogFilterData {
|
|
18
6
|
constructor() {
|
|
19
|
-
|
|
7
|
+
/**
|
|
8
|
+
* If given, the debug-type which in accordance to {@link iLogSettings} might result in this being filtered out
|
|
9
|
+
*/
|
|
10
|
+
this.debugType = log_debug_type_1.LogDebugType.None;
|
|
20
11
|
}
|
|
21
12
|
}
|
|
22
13
|
exports.LogFilterData = LogFilterData;
|
|
@@ -1,13 +1,26 @@
|
|
|
1
1
|
import { LogLevel } from '../../../models';
|
|
2
2
|
import { DeviceType } from '../../devices';
|
|
3
3
|
import { iLogSettings } from '../../config';
|
|
4
|
-
import {
|
|
4
|
+
import { RingStorage } from '../utils';
|
|
5
5
|
import { LogObject } from './log-object';
|
|
6
6
|
import { LogFilterData } from './log-filter-data';
|
|
7
7
|
export declare class ServerLogService {
|
|
8
|
+
/**
|
|
9
|
+
* The level at which messages are sent to telegram
|
|
10
|
+
* @remarks defined at {@link iConfig.telegram.logLevel}
|
|
11
|
+
*/
|
|
8
12
|
static telegramLevel: number;
|
|
13
|
+
/**
|
|
14
|
+
* The threshold above which messages are stored in the ring-storage to be retrieved e.g. using {@link API.getLog}
|
|
15
|
+
*/
|
|
9
16
|
static storageLevel: number;
|
|
10
|
-
|
|
17
|
+
/**
|
|
18
|
+
* The storage for the log messages
|
|
19
|
+
*/
|
|
20
|
+
static storage: RingStorage<LogObject>;
|
|
21
|
+
/**
|
|
22
|
+
* The settings for the logging system.
|
|
23
|
+
*/
|
|
11
24
|
static settings: iLogSettings;
|
|
12
25
|
static getLog(amount?: number): LogObject[];
|
|
13
26
|
static initialize(logSettings: iLogSettings): void;
|
|
@@ -17,8 +30,8 @@ export declare class ServerLogService {
|
|
|
17
30
|
static missingRoomIndexHandling(pRoomName: string, pIndex: number, pDeviceType: DeviceType): void;
|
|
18
31
|
/**
|
|
19
32
|
* Checks if this message is of a debugtype which should be skipped according to settings
|
|
20
|
-
* @param {LogDebugType}
|
|
21
|
-
* @returns
|
|
33
|
+
* @param debugType - {LogDebugType}
|
|
34
|
+
* @returns If the Message should be skipped
|
|
22
35
|
*/
|
|
23
36
|
private static checkDebugLogSkip;
|
|
24
37
|
}
|
|
@@ -6,9 +6,9 @@ const models_1 = require("../../../models");
|
|
|
6
6
|
const devices_1 = require("../../devices");
|
|
7
7
|
const utils_1 = require("../utils");
|
|
8
8
|
const log_object_1 = require("./log-object");
|
|
9
|
-
const log_filter_data_1 = require("./log-filter-data");
|
|
10
9
|
const logSource_1 = require("../../../models/logSource");
|
|
11
10
|
const settings_service_1 = require("../settings-service");
|
|
11
|
+
const log_debug_type_1 = require("./log-debug-type");
|
|
12
12
|
class ServerLogService {
|
|
13
13
|
static getLog(amount = 5000) {
|
|
14
14
|
return this.storage.readAmount(amount);
|
|
@@ -44,7 +44,7 @@ class ServerLogService {
|
|
|
44
44
|
console.log(message);
|
|
45
45
|
if (pLevel <= ServerLogService.telegramLevel) {
|
|
46
46
|
const title = models_1.LogLevel[pLevel];
|
|
47
|
-
Telegram_1.TelegramService.
|
|
47
|
+
Telegram_1.TelegramService.sendMessageToSubscriber(`${title}: ${message}`);
|
|
48
48
|
}
|
|
49
49
|
}
|
|
50
50
|
}
|
|
@@ -60,55 +60,55 @@ class ServerLogService {
|
|
|
60
60
|
}
|
|
61
61
|
/**
|
|
62
62
|
* Checks if this message is of a debugtype which should be skipped according to settings
|
|
63
|
-
* @param {LogDebugType}
|
|
64
|
-
* @returns
|
|
63
|
+
* @param debugType - {LogDebugType}
|
|
64
|
+
* @returns If the Message should be skipped
|
|
65
65
|
*/
|
|
66
66
|
static checkDebugLogSkip(debugType) {
|
|
67
67
|
var _a, _b, _c, _d, _e, _f, _g, _h, _j;
|
|
68
68
|
switch (debugType) {
|
|
69
|
-
case
|
|
69
|
+
case log_debug_type_1.LogDebugType.None:
|
|
70
70
|
return false;
|
|
71
|
-
case
|
|
71
|
+
case log_debug_type_1.LogDebugType.SkipUnchangedActuatorCommand:
|
|
72
72
|
if (((_a = settings_service_1.SettingsService.settings.logSettings) === null || _a === void 0 ? void 0 : _a.debugUnchangedActuator) === true) {
|
|
73
73
|
return false;
|
|
74
74
|
}
|
|
75
75
|
break;
|
|
76
|
-
case
|
|
76
|
+
case log_debug_type_1.LogDebugType.SkipUnchangedRolloPosition:
|
|
77
77
|
if (((_b = settings_service_1.SettingsService.settings.logSettings) === null || _b === void 0 ? void 0 : _b.debugUchangedShutterPosition) === true) {
|
|
78
78
|
return false;
|
|
79
79
|
}
|
|
80
80
|
break;
|
|
81
|
-
case
|
|
81
|
+
case log_debug_type_1.LogDebugType.SetActuator:
|
|
82
82
|
if (((_c = settings_service_1.SettingsService.settings.logSettings) === null || _c === void 0 ? void 0 : _c.debugActuatorChange) === true) {
|
|
83
83
|
return false;
|
|
84
84
|
}
|
|
85
85
|
break;
|
|
86
|
-
case
|
|
86
|
+
case log_debug_type_1.LogDebugType.ShutterPositionChange:
|
|
87
87
|
if (((_d = settings_service_1.SettingsService.settings.logSettings) === null || _d === void 0 ? void 0 : _d.debugShutterPositionChange) === true) {
|
|
88
88
|
return false;
|
|
89
89
|
}
|
|
90
90
|
break;
|
|
91
|
-
case
|
|
91
|
+
case log_debug_type_1.LogDebugType.NewMovementState:
|
|
92
92
|
if (((_e = settings_service_1.SettingsService.settings.logSettings) === null || _e === void 0 ? void 0 : _e.debugNewMovementState) === true) {
|
|
93
93
|
return false;
|
|
94
94
|
}
|
|
95
95
|
break;
|
|
96
|
-
case
|
|
96
|
+
case log_debug_type_1.LogDebugType.SkipUnchangedMovementState:
|
|
97
97
|
if (((_f = settings_service_1.SettingsService.settings.logSettings) === null || _f === void 0 ? void 0 : _f.debugNewMovementState) === true) {
|
|
98
98
|
return false;
|
|
99
99
|
}
|
|
100
100
|
break;
|
|
101
|
-
case
|
|
101
|
+
case log_debug_type_1.LogDebugType.DaikinSuccessfullControlInfo:
|
|
102
102
|
if (((_g = settings_service_1.SettingsService.settings.logSettings) === null || _g === void 0 ? void 0 : _g.debugDaikinSuccessfullControlInfo) === true) {
|
|
103
103
|
return false;
|
|
104
104
|
}
|
|
105
105
|
break;
|
|
106
|
-
case
|
|
106
|
+
case log_debug_type_1.LogDebugType.EuroHeaterValveLogging:
|
|
107
107
|
if (((_h = settings_service_1.SettingsService.settings.logSettings) === null || _h === void 0 ? void 0 : _h.debugEuroHeaterValve) === true) {
|
|
108
108
|
return false;
|
|
109
109
|
}
|
|
110
110
|
break;
|
|
111
|
-
case
|
|
111
|
+
case log_debug_type_1.LogDebugType.Trilateration:
|
|
112
112
|
if (((_j = settings_service_1.SettingsService.settings.logSettings) === null || _j === void 0 ? void 0 : _j.debugTrilateration) === true) {
|
|
113
113
|
return false;
|
|
114
114
|
}
|
|
@@ -118,10 +118,23 @@ class ServerLogService {
|
|
|
118
118
|
}
|
|
119
119
|
}
|
|
120
120
|
exports.ServerLogService = ServerLogService;
|
|
121
|
+
/**
|
|
122
|
+
* The level at which messages are sent to telegram
|
|
123
|
+
* @remarks defined at {@link iConfig.telegram.logLevel}
|
|
124
|
+
*/
|
|
121
125
|
ServerLogService.telegramLevel = -1; // Controlled from within Config File
|
|
122
|
-
|
|
123
|
-
|
|
126
|
+
/**
|
|
127
|
+
* The threshold above which messages are stored in the ring-storage to be retrieved e.g. using {@link API.getLog}
|
|
128
|
+
*/
|
|
129
|
+
ServerLogService.storageLevel = models_1.LogLevel.Trace; // Controlled from within Config File
|
|
130
|
+
/**
|
|
131
|
+
* The storage for the log messages
|
|
132
|
+
*/
|
|
133
|
+
ServerLogService.storage = new utils_1.RingStorage(10000);
|
|
134
|
+
/**
|
|
135
|
+
* The settings for the logging system.
|
|
136
|
+
*/
|
|
124
137
|
ServerLogService.settings = {
|
|
125
|
-
logLevel:
|
|
138
|
+
logLevel: models_1.LogLevel.Debug,
|
|
126
139
|
useTimestamp: false,
|
|
127
140
|
};
|
|
@@ -1,6 +1,9 @@
|
|
|
1
1
|
import { iNewsSettings } from '../config';
|
|
2
2
|
import { iSpeaker } from '../devices';
|
|
3
3
|
export declare class NewsService {
|
|
4
|
+
/**
|
|
5
|
+
* Path to the most recently downloaded news audio file
|
|
6
|
+
*/
|
|
4
7
|
static lastNewsAudioFile: string;
|
|
5
8
|
private static readonly newsFilePrefix;
|
|
6
9
|
private static interval;
|
|
@@ -11,7 +14,7 @@ export declare class NewsService {
|
|
|
11
14
|
static initialize(config?: Partial<iNewsSettings>): void;
|
|
12
15
|
/**
|
|
13
16
|
* Stops the regular check for new news feed items.
|
|
14
|
-
* @deprecated Use stopInterval instead
|
|
17
|
+
* @deprecated Use {@link stopInterval} instead
|
|
15
18
|
*/
|
|
16
19
|
static stopHourlyInterval(): void;
|
|
17
20
|
static startInterval(): void;
|
|
@@ -25,17 +28,16 @@ export declare class NewsService {
|
|
|
25
28
|
static getLatestNews(): void;
|
|
26
29
|
/**
|
|
27
30
|
* Plays the latest news on a sonos device
|
|
28
|
-
* @param speaker Sonos device to play from
|
|
29
|
-
* @param volume volume to play at
|
|
30
|
-
* @param retries Number of times playing should be tried if there is currently no audio file available
|
|
31
|
+
* @param speaker - Sonos device to play from
|
|
32
|
+
* @param volume - volume to play at
|
|
33
|
+
* @param retries - Number of times playing should be tried if there is currently no audio file available
|
|
31
34
|
*/
|
|
32
35
|
static playLastNews(speaker: iSpeaker, volume?: number, retries?: number): void;
|
|
33
36
|
private static downloadLatestFileFromFeed;
|
|
34
37
|
/**
|
|
35
38
|
* Deletes all files in the given directory that are older than the given age.
|
|
36
|
-
* @param rootDir Directory to search in
|
|
37
|
-
* @param keepMaxAge Maximum age in minutes until a file gets deleted
|
|
38
|
-
* @private
|
|
39
|
+
* @param rootDir - Directory to search in
|
|
40
|
+
* @param keepMaxAge - Maximum age in minutes until a file gets deleted
|
|
39
41
|
*/
|
|
40
42
|
private static cleanOldFiles;
|
|
41
43
|
}
|
|
@@ -41,7 +41,7 @@ class NewsService {
|
|
|
41
41
|
static initialize(config) {
|
|
42
42
|
var _a, _b;
|
|
43
43
|
if (config === undefined) {
|
|
44
|
-
log_service_1.ServerLogService.writeLog(models_1.LogLevel.Warn,
|
|
44
|
+
log_service_1.ServerLogService.writeLog(models_1.LogLevel.Warn, 'Service disabled.', { source: logSource_1.LogSource.News });
|
|
45
45
|
return;
|
|
46
46
|
}
|
|
47
47
|
NewsService.keepMaxAge = (_a = config.keepMaxAge) !== null && _a !== void 0 ? _a : 120;
|
|
@@ -51,7 +51,7 @@ class NewsService {
|
|
|
51
51
|
}
|
|
52
52
|
/**
|
|
53
53
|
* Stops the regular check for new news feed items.
|
|
54
|
-
* @deprecated Use stopInterval instead
|
|
54
|
+
* @deprecated Use {@link stopInterval} instead
|
|
55
55
|
*/
|
|
56
56
|
static stopHourlyInterval() {
|
|
57
57
|
NewsService.stopInterval();
|
|
@@ -80,14 +80,14 @@ class NewsService {
|
|
|
80
80
|
*/
|
|
81
81
|
static getLatestNews() {
|
|
82
82
|
if (settings_service_1.SettingsService.settings.mp3Server === undefined) {
|
|
83
|
-
log_service_1.ServerLogService.writeLog(models_1.LogLevel.Warn,
|
|
83
|
+
log_service_1.ServerLogService.writeLog(models_1.LogLevel.Warn, 'Not checking for newest news file, no download directory defined.', {
|
|
84
84
|
source: logSource_1.LogSource.News,
|
|
85
85
|
});
|
|
86
86
|
return;
|
|
87
87
|
}
|
|
88
88
|
NewsService.cleanOldFiles(settings_service_1.SettingsService.settings.mp3Server.path, NewsService.keepMaxAge);
|
|
89
89
|
if (NewsService.rssUrl === undefined) {
|
|
90
|
-
log_service_1.ServerLogService.writeLog(models_1.LogLevel.Warn,
|
|
90
|
+
log_service_1.ServerLogService.writeLog(models_1.LogLevel.Warn, 'No rss feed set, not searching for new news.', {
|
|
91
91
|
source: logSource_1.LogSource.News,
|
|
92
92
|
});
|
|
93
93
|
return;
|
|
@@ -96,9 +96,9 @@ class NewsService {
|
|
|
96
96
|
}
|
|
97
97
|
/**
|
|
98
98
|
* Plays the latest news on a sonos device
|
|
99
|
-
* @param speaker Sonos device to play from
|
|
100
|
-
* @param volume volume to play at
|
|
101
|
-
* @param retries Number of times playing should be tried if there is currently no audio file available
|
|
99
|
+
* @param speaker - Sonos device to play from
|
|
100
|
+
* @param volume - volume to play at
|
|
101
|
+
* @param retries - Number of times playing should be tried if there is currently no audio file available
|
|
102
102
|
*/
|
|
103
103
|
static playLastNews(speaker, volume = 30, retries = 5) {
|
|
104
104
|
if (!NewsService.lastNewsAudioFile) {
|
|
@@ -111,7 +111,7 @@ class NewsService {
|
|
|
111
111
|
}, 1000);
|
|
112
112
|
}
|
|
113
113
|
else {
|
|
114
|
-
log_service_1.ServerLogService.writeLog(models_1.LogLevel.Error,
|
|
114
|
+
log_service_1.ServerLogService.writeLog(models_1.LogLevel.Error, 'Service not ready despite waiting --> Abort.', {
|
|
115
115
|
source: logSource_1.LogSource.News,
|
|
116
116
|
});
|
|
117
117
|
}
|
|
@@ -128,7 +128,7 @@ class NewsService {
|
|
|
128
128
|
const currentFeedItem = feed.items[0];
|
|
129
129
|
log_service_1.ServerLogService.writeLog(models_1.LogLevel.Debug, `Most recent news on ${feed.title} is "${currentFeedItem.title}"`);
|
|
130
130
|
if (currentFeedItem.enclosure === undefined) {
|
|
131
|
-
log_service_1.ServerLogService.writeLog(models_1.LogLevel.Warn,
|
|
131
|
+
log_service_1.ServerLogService.writeLog(models_1.LogLevel.Warn, "Couldn't find audio in last item of the rss feed.", {
|
|
132
132
|
source: logSource_1.LogSource.News,
|
|
133
133
|
});
|
|
134
134
|
return;
|
|
@@ -137,14 +137,14 @@ class NewsService {
|
|
|
137
137
|
// check for both path and pubdate in case the file name is always the same one
|
|
138
138
|
if (fs.existsSync(filePath) && NewsService.lastFetchedPubDate == currentFeedItem.pubDate) {
|
|
139
139
|
NewsService.lastNewsAudioFile = path_1.default.basename(filePath);
|
|
140
|
-
log_service_1.ServerLogService.writeLog(models_1.LogLevel.Debug,
|
|
140
|
+
log_service_1.ServerLogService.writeLog(models_1.LogLevel.Debug, 'Newest file already downloaded.', { source: logSource_1.LogSource.News });
|
|
141
141
|
return;
|
|
142
142
|
}
|
|
143
143
|
log_service_1.ServerLogService.writeLog(models_1.LogLevel.Debug, `Current news download Link: "${currentFeedItem.enclosure.url}"`);
|
|
144
144
|
https_service_1.HTTPSService.downloadFile(currentFeedItem.enclosure.url, filePath)
|
|
145
145
|
.then((success) => {
|
|
146
146
|
if (!success) {
|
|
147
|
-
log_service_1.ServerLogService.writeLog(models_1.LogLevel.Debug,
|
|
147
|
+
log_service_1.ServerLogService.writeLog(models_1.LogLevel.Debug, 'Error while downloading audio file.', {
|
|
148
148
|
source: logSource_1.LogSource.News,
|
|
149
149
|
});
|
|
150
150
|
return;
|
|
@@ -167,9 +167,8 @@ class NewsService {
|
|
|
167
167
|
}
|
|
168
168
|
/**
|
|
169
169
|
* Deletes all files in the given directory that are older than the given age.
|
|
170
|
-
* @param rootDir Directory to search in
|
|
171
|
-
* @param keepMaxAge Maximum age in minutes until a file gets deleted
|
|
172
|
-
* @private
|
|
170
|
+
* @param rootDir - Directory to search in
|
|
171
|
+
* @param keepMaxAge - Maximum age in minutes until a file gets deleted
|
|
173
172
|
*/
|
|
174
173
|
static cleanOldFiles(rootDir, keepMaxAge) {
|
|
175
174
|
let deleteCount = 0;
|
|
@@ -205,4 +204,4 @@ class NewsService {
|
|
|
205
204
|
}
|
|
206
205
|
exports.NewsService = NewsService;
|
|
207
206
|
// prefix for all downloaded files of the news service
|
|
208
|
-
NewsService.newsFilePrefix =
|
|
207
|
+
NewsService.newsFilePrefix = 'news$';
|