hoffmation-base 3.0.0-alpha.7 → 3.0.0-alpha.71

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.
Files changed (529) hide show
  1. package/lib/index.d.ts +5 -1
  2. package/lib/index.js +28 -25
  3. package/lib/liquid-pid.d.ts +2 -5
  4. package/lib/liquid-pid.js +3 -5
  5. package/lib/models/action/baseAction.d.ts +4 -0
  6. package/lib/models/action/baseAction.js +10 -0
  7. package/lib/models/action/batteryLevelChangeAction.d.ts +13 -0
  8. package/lib/models/action/batteryLevelChangeAction.js +14 -0
  9. package/lib/models/action/humiditySensorChangeAction.d.ts +16 -0
  10. package/lib/models/action/humiditySensorChangeAction.js +15 -0
  11. package/lib/models/action/index.d.ts +9 -0
  12. package/lib/models/action/index.js +29 -0
  13. package/lib/models/action/motionSensorAction.d.ts +16 -0
  14. package/lib/models/action/motionSensorAction.js +15 -0
  15. package/lib/models/action/presenceGroupAnyMovementAction.d.ts +7 -0
  16. package/lib/models/action/presenceGroupAnyMovementAction.js +13 -0
  17. package/lib/models/action/presenceGroupFirstEnterAction.d.ts +7 -0
  18. package/lib/models/action/presenceGroupFirstEnterAction.js +13 -0
  19. package/lib/models/action/presenceGroupLastLeftAction.d.ts +7 -0
  20. package/lib/models/action/presenceGroupLastLeftAction.js +13 -0
  21. package/lib/models/action/shutterPositionChangedAction.d.ts +13 -0
  22. package/lib/models/action/shutterPositionChangedAction.js +15 -0
  23. package/lib/models/action/temperatureSensorChangeAction.d.ts +16 -0
  24. package/lib/models/action/temperatureSensorChangeAction.js +15 -0
  25. package/lib/models/blockAutomaticSettings.d.ts +23 -0
  26. package/lib/models/blockAutomaticSettings.js +19 -0
  27. package/lib/models/command/ShutterSetLevelCommand.d.ts +9 -1
  28. package/lib/models/command/ShutterSetLevelCommand.js +9 -1
  29. package/lib/models/command/WindowRestoreDesiredPositionCommand.d.ts +7 -1
  30. package/lib/models/command/WindowRestoreDesiredPositionCommand.js +7 -1
  31. package/lib/models/command/WindowSetDesiredPositionCommand.d.ts +11 -2
  32. package/lib/models/command/WindowSetDesiredPositionCommand.js +11 -2
  33. package/lib/models/command/WindowSetRolloByWeatherStatusCommand.d.ts +7 -1
  34. package/lib/models/command/WindowSetRolloByWeatherStatusCommand.js +7 -1
  35. package/lib/models/command/actuatorSetStateCommand.d.ts +18 -3
  36. package/lib/models/command/actuatorSetStateCommand.js +15 -6
  37. package/lib/models/command/actuatorToggleCommand.d.ts +7 -2
  38. package/lib/models/command/actuatorToggleCommand.js +7 -4
  39. package/lib/models/command/actuatorWriteStateToDeviceCommand.d.ts +8 -1
  40. package/lib/models/command/actuatorWriteStateToDeviceCommand.js +12 -1
  41. package/lib/models/command/baseCommand.d.ts +23 -2
  42. package/lib/models/command/baseCommand.js +41 -1
  43. package/lib/models/command/blockAutomaticCommand.d.ts +32 -0
  44. package/lib/models/command/blockAutomaticCommand.js +40 -0
  45. package/lib/models/command/blockAutomaticLiftBlockCommand.d.ts +18 -0
  46. package/lib/models/command/blockAutomaticLiftBlockCommand.js +23 -0
  47. package/lib/models/command/blockAutomaticUntilCommand.d.ts +27 -0
  48. package/lib/models/command/blockAutomaticUntilCommand.js +32 -0
  49. package/lib/models/command/commandSource.d.ts +19 -0
  50. package/lib/models/command/commandSource.js +20 -0
  51. package/lib/models/command/commandType.d.ts +11 -0
  52. package/lib/models/command/commandType.js +11 -0
  53. package/lib/models/command/dimmerSetLightCommand.d.ts +13 -8
  54. package/lib/models/command/dimmerSetLightCommand.js +20 -14
  55. package/lib/models/command/floorSetAllShuttersCommand.d.ts +6 -5
  56. package/lib/models/command/floorSetAllShuttersCommand.js +6 -5
  57. package/lib/models/command/index.d.ts +3 -0
  58. package/lib/models/command/index.js +7 -1
  59. package/lib/models/command/lampSetLightCommand.d.ts +13 -2
  60. package/lib/models/command/lampSetLightCommand.js +15 -4
  61. package/lib/models/command/lampSetTimeBasedCommand.d.ts +15 -8
  62. package/lib/models/command/lampSetTimeBasedCommand.js +9 -11
  63. package/lib/models/command/lampToggleLightCommand.d.ts +7 -6
  64. package/lib/models/command/lampToggleLightCommand.js +7 -6
  65. package/lib/models/command/ledSetLightCommand.d.ts +21 -11
  66. package/lib/models/command/ledSetLightCommand.js +27 -17
  67. package/lib/models/command/lightGroupSwitchTimeConditionalCommand.d.ts +8 -1
  68. package/lib/models/command/lightGroupSwitchTimeConditionalCommand.js +8 -1
  69. package/lib/models/command/restoreTargetAutomaticValueCommand.d.ts +7 -2
  70. package/lib/models/command/restoreTargetAutomaticValueCommand.js +7 -4
  71. package/lib/models/command/roomRestoreLightCommand.d.ts +7 -1
  72. package/lib/models/command/roomRestoreLightCommand.js +7 -1
  73. package/lib/models/command/roomRestoreShutterPositionCommand.d.ts +8 -1
  74. package/lib/models/command/roomRestoreShutterPositionCommand.js +8 -1
  75. package/lib/models/command/roomSetLightTimeBasedCommand.d.ts +5 -4
  76. package/lib/models/command/roomSetLightTimeBasedCommand.js +5 -4
  77. package/lib/models/command/shutterSunriseUpCommand.d.ts +7 -1
  78. package/lib/models/command/shutterSunriseUpCommand.js +7 -1
  79. package/lib/models/command/shutterSunsetDownCommand.d.ts +7 -1
  80. package/lib/models/command/shutterSunsetDownCommand.js +7 -1
  81. package/lib/models/command/wledSetLightCommand.d.ts +16 -2
  82. package/lib/models/command/wledSetLightCommand.js +23 -7
  83. package/lib/models/connectionCallbacks.d.ts +4 -4
  84. package/lib/models/connectionCallbacks.js +1 -0
  85. package/lib/models/deviceConfig.d.ts +3 -3
  86. package/lib/models/deviceSettings/acSettings.d.ts +23 -5
  87. package/lib/models/deviceSettings/acSettings.js +28 -8
  88. package/lib/models/deviceSettings/actuatorSettings.d.ts +13 -4
  89. package/lib/models/deviceSettings/actuatorSettings.js +19 -9
  90. package/lib/models/deviceSettings/cameraSettings.d.ts +12 -0
  91. package/lib/models/deviceSettings/cameraSettings.js +12 -0
  92. package/lib/models/deviceSettings/dachsSettings.d.ts +23 -0
  93. package/lib/models/deviceSettings/dachsSettings.js +29 -1
  94. package/lib/models/deviceSettings/deviceSettings.d.ts +10 -0
  95. package/lib/models/deviceSettings/deviceSettings.js +16 -0
  96. package/lib/models/deviceSettings/dimmerSettings.d.ts +20 -0
  97. package/lib/models/deviceSettings/dimmerSettings.js +20 -0
  98. package/lib/models/deviceSettings/garageDoorOpenerSettings.d.ts +0 -1
  99. package/lib/models/deviceSettings/garageDoorOpenerSettings.js +0 -1
  100. package/lib/models/deviceSettings/handleSettings.d.ts +9 -0
  101. package/lib/models/deviceSettings/handleSettings.js +9 -0
  102. package/lib/models/deviceSettings/heaterSettings.d.ts +21 -9
  103. package/lib/models/deviceSettings/heaterSettings.js +21 -9
  104. package/lib/models/deviceSettings/ledSettings.d.ts +66 -0
  105. package/lib/models/deviceSettings/ledSettings.js +76 -18
  106. package/lib/models/deviceSettings/motionSensorSettings.d.ts +5 -1
  107. package/lib/models/deviceSettings/motionSensorSettings.js +5 -1
  108. package/lib/models/deviceSettings/sceneSettings.d.ts +4 -0
  109. package/lib/models/deviceSettings/shutterSettings.d.ts +11 -3
  110. package/lib/models/deviceSettings/shutterSettings.js +11 -3
  111. package/lib/models/deviceSettings/sonosDeviceSettings.d.ts +4 -0
  112. package/lib/models/deviceSettings/sonosDeviceSettings.js +4 -0
  113. package/lib/models/deviceSettings/tvSettings.d.ts +4 -0
  114. package/lib/models/deviceSettings/victronDeviceSettings.d.ts +34 -0
  115. package/lib/models/deviceSettings/victronDeviceSettings.js +34 -0
  116. package/lib/models/deviceSettings/wledSettings.d.ts +48 -0
  117. package/lib/models/deviceSettings/wledSettings.js +37 -13
  118. package/lib/models/groupSettings/heatGroupSettings.d.ts +12 -1
  119. package/lib/models/groupSettings/heatGroupSettings.js +12 -1
  120. package/lib/models/iIdHolder.d.ts +18 -0
  121. package/lib/models/index.d.ts +2 -1
  122. package/lib/models/index.js +4 -1
  123. package/lib/models/objectSettings.d.ts +5 -2
  124. package/lib/models/objectSettings.js +2 -2
  125. package/lib/models/persistence/EnergyCalculation.d.ts +27 -0
  126. package/lib/models/persistence/EnergyCalculation.js +30 -4
  127. package/lib/models/persistence/index.d.ts +0 -2
  128. package/lib/models/persistence/index.js +0 -2
  129. package/lib/models/rooms/RoomBase.d.ts +12 -1
  130. package/lib/models/rooms/RoomBase.js +16 -7
  131. package/lib/models/rooms/RoomSettings/RoomInitializationSettings.d.ts +2 -1
  132. package/lib/models/rooms/RoomSettings/RoomInitializationSettings.js +2 -2
  133. package/lib/models/rooms/RoomSettings/RoomSettingsController.d.ts +10 -1
  134. package/lib/models/rooms/RoomSettings/RoomSettingsController.js +2 -2
  135. package/lib/models/rooms/RoomSettings/iRoomDefaultSettings.d.ts +53 -3
  136. package/lib/models/rooms/RoomSettings/iRoomInitializationSettings.d.ts +10 -1
  137. package/lib/models/rooms/RoomSettings/roomDeviceAddingSettings.d.ts +4 -1
  138. package/lib/models/rooms/RoomSettings/roomDeviceAddingSettings.js +3 -0
  139. package/lib/models/rooms/RoomSettings/roomSettings.d.ts +55 -0
  140. package/lib/models/rooms/RoomSettings/roomSettings.js +55 -0
  141. package/lib/models/rooms/iRoomBase.d.ts +39 -0
  142. package/lib/models/rooms/iRoomImportEnforcer.d.ts +8 -0
  143. package/lib/models/timeCallback.d.ts +7 -0
  144. package/lib/models/timeCallback.js +16 -6
  145. package/lib/server/config/heatingMode.d.ts +2 -1
  146. package/lib/server/config/heatingMode.js +2 -1
  147. package/lib/server/config/iAsusConfig.d.ts +15 -0
  148. package/lib/server/config/iBlockAutomaticHandlerDefaults.d.ts +23 -0
  149. package/lib/server/config/iBlueIrisSettings.d.ts +14 -0
  150. package/lib/server/config/iBluetoothTrackingSettings.d.ts +9 -0
  151. package/lib/server/config/iConfig.d.ts +94 -6
  152. package/lib/server/config/iDachsSettings.d.ts +16 -0
  153. package/lib/server/config/iDaikinSettings.d.ts +17 -0
  154. package/lib/server/config/iEnergyManagerSettings.d.ts +13 -0
  155. package/lib/server/config/iEspresenseSettings.d.ts +10 -0
  156. package/lib/server/config/iGoveeSettings.d.ts +9 -0
  157. package/lib/server/config/iGoveeSettings.js +2 -0
  158. package/lib/server/config/iHeaterSettings.d.ts +8 -0
  159. package/lib/server/config/iIobrokerSettigns.d.ts +8 -0
  160. package/lib/server/config/iLogSettings.d.ts +40 -1
  161. package/lib/server/config/iMp3Settings.d.ts +10 -0
  162. package/lib/server/config/iMuellSettings.d.ts +7 -0
  163. package/lib/server/config/iNewsSettings.d.ts +13 -0
  164. package/lib/server/config/iPersistenceSettings.d.ts +10 -0
  165. package/lib/server/config/iPollySettings.d.ts +22 -0
  166. package/lib/server/config/iRestSettings.d.ts +10 -0
  167. package/lib/server/config/iSonosSettings.d.ts +14 -0
  168. package/lib/server/config/iTelegramSettings.d.ts +17 -0
  169. package/lib/server/config/iTibberSettings.d.ts +10 -0
  170. package/lib/server/config/iTimePair.d.ts +9 -0
  171. package/lib/server/config/iTimeSettings.d.ts +9 -0
  172. package/lib/server/config/iTranslationSettings.d.ts +10 -0
  173. package/lib/server/config/iUnifiConnectionOptions.d.ts +31 -0
  174. package/lib/server/config/iUnifiSettings.d.ts +8 -0
  175. package/lib/server/config/iVictronSettings.d.ts +14 -0
  176. package/lib/server/config/iWeatherSettings.d.ts +13 -0
  177. package/lib/server/config/index.d.ts +2 -0
  178. package/lib/server/devices/DeviceCapability.d.ts +1 -0
  179. package/lib/server/devices/DeviceCapability.js +1 -0
  180. package/lib/server/devices/DeviceInfo.d.ts +9 -0
  181. package/lib/server/devices/DeviceInfo.js +6 -0
  182. package/lib/server/devices/Griffe.js +1 -2
  183. package/lib/server/devices/Heizgruppen.js +2 -2
  184. package/lib/server/devices/IoBrokerBaseDevice.d.ts +34 -18
  185. package/lib/server/devices/IoBrokerBaseDevice.js +37 -21
  186. package/lib/server/devices/IoBrokerDeviceInfo.d.ts +8 -6
  187. package/lib/server/devices/IoBrokerDeviceInfo.js +50 -46
  188. package/lib/server/devices/baseDeviceInterfaces/iAcDevice.d.ts +41 -3
  189. package/lib/server/devices/baseDeviceInterfaces/iActuator.d.ts +18 -0
  190. package/lib/server/devices/baseDeviceInterfaces/iBaseDevice.d.ts +26 -1
  191. package/lib/server/devices/baseDeviceInterfaces/iBatteryDevice.d.ts +21 -4
  192. package/lib/server/devices/baseDeviceInterfaces/iBluetoothDetector.d.ts +15 -7
  193. package/lib/server/devices/baseDeviceInterfaces/iButtonSwitch.d.ts +42 -0
  194. package/lib/server/devices/baseDeviceInterfaces/iCameraDevice.d.ts +46 -3
  195. package/lib/server/devices/baseDeviceInterfaces/iDimmableLamp.d.ts +17 -2
  196. package/lib/server/devices/baseDeviceInterfaces/iEnergyManager.d.ts +36 -2
  197. package/lib/server/devices/baseDeviceInterfaces/iExcessEnergyConsumer.d.ts +30 -2
  198. package/lib/server/devices/baseDeviceInterfaces/iGarageDoorOpener.d.ts +21 -0
  199. package/lib/server/devices/baseDeviceInterfaces/iHandleSensor.d.ts +24 -0
  200. package/lib/server/devices/baseDeviceInterfaces/iHeater.d.ts +40 -4
  201. package/lib/server/devices/baseDeviceInterfaces/iHumiditySensor.d.ts +21 -1
  202. package/lib/server/devices/baseDeviceInterfaces/iIlluminationSensor.d.ts +11 -0
  203. package/lib/server/devices/baseDeviceInterfaces/iLamp.d.ts +7 -2
  204. package/lib/server/devices/baseDeviceInterfaces/iLedRgbCct.d.ts +20 -0
  205. package/lib/server/devices/baseDeviceInterfaces/iLoadMeter.d.ts +5 -0
  206. package/lib/server/devices/baseDeviceInterfaces/iMagnetSensor.d.ts +31 -0
  207. package/lib/server/devices/baseDeviceInterfaces/iMagnetSensor.js +2 -0
  208. package/lib/server/devices/baseDeviceInterfaces/iMotionSensor.d.ts +23 -3
  209. package/lib/server/devices/baseDeviceInterfaces/iRoomDevice.d.ts +6 -0
  210. package/lib/server/devices/baseDeviceInterfaces/iScene.d.ts +31 -1
  211. package/lib/server/devices/baseDeviceInterfaces/iShutter.d.ts +25 -1
  212. package/lib/server/devices/baseDeviceInterfaces/iSmokeDetectorDevice.d.ts +12 -0
  213. package/lib/server/devices/baseDeviceInterfaces/iSpeaker.d.ts +30 -0
  214. package/lib/server/devices/baseDeviceInterfaces/iTemperatureSensor.d.ts +32 -2
  215. package/lib/server/devices/baseDeviceInterfaces/iTemporaryDisableAutomatic.d.ts +13 -0
  216. package/lib/server/devices/baseDeviceInterfaces/iTvDevice.d.ts +20 -0
  217. package/lib/server/devices/baseDeviceInterfaces/iVibrationSensor.d.ts +24 -5
  218. package/lib/server/devices/baseDeviceInterfaces/index.d.ts +1 -0
  219. package/lib/server/devices/blueIris/cameraDevice.d.ts +49 -34
  220. package/lib/server/devices/blueIris/cameraDevice.js +75 -75
  221. package/lib/server/devices/button/button.d.ts +0 -1
  222. package/lib/server/devices/button/button.js +0 -4
  223. package/lib/server/devices/button/buttonCallback.d.ts +5 -0
  224. package/lib/server/devices/button/buttonCallback.js +10 -0
  225. package/lib/server/devices/button/buttonCapabilities.d.ts +12 -0
  226. package/lib/server/devices/button/buttonCapabilities.js +12 -0
  227. package/lib/server/devices/button/index.d.ts +1 -0
  228. package/lib/server/devices/button/index.js +3 -0
  229. package/lib/server/devices/dachs/dachs.d.ts +46 -11
  230. package/lib/server/devices/dachs/dachs.js +113 -23
  231. package/lib/server/devices/dachs/dachsTemperatureSensor.d.ts +22 -3
  232. package/lib/server/devices/dachs/dachsTemperatureSensor.js +23 -5
  233. package/lib/server/devices/dachs/interfaces/DachsClientOptions.d.ts +30 -0
  234. package/lib/server/devices/dachs/interfaces/KeyListEntity.d.ts +0 -8
  235. package/lib/server/devices/dachs/interfaces/KeyListEntity.js +0 -8
  236. package/lib/server/devices/dachs/interfaces/dachsInfluxDataPoint.d.ts +12 -0
  237. package/lib/server/devices/dachs/interfaces/influxDbConnectionOptions.d.ts +21 -1
  238. package/lib/server/devices/dachs/lib/dachsHttpClient.d.ts +5 -2
  239. package/lib/server/devices/dachs/lib/dachsHttpClient.js +5 -4
  240. package/lib/server/devices/device-cluster.d.ts +3 -0
  241. package/lib/server/devices/device-cluster.js +5 -4
  242. package/lib/server/devices/deviceType.d.ts +4 -0
  243. package/lib/server/devices/deviceType.js +4 -0
  244. package/lib/server/devices/deviceUpdater.d.ts +0 -3
  245. package/lib/server/devices/deviceUpdater.js +18 -4
  246. package/lib/server/devices/devices.d.ts +48 -7
  247. package/lib/server/devices/devices.js +62 -12
  248. package/lib/server/devices/espresense/detectedBluetoothDevice.d.ts +13 -0
  249. package/lib/server/devices/espresense/detectedBluetoothDevice.js +14 -1
  250. package/lib/server/devices/espresense/espresenseDevice.d.ts +31 -1
  251. package/lib/server/devices/espresense/espresenseDevice.js +28 -4
  252. package/lib/server/devices/espresense/trackedDistanceData.d.ts +12 -0
  253. package/lib/server/devices/espresense/trackedDistanceData.js +3 -0
  254. package/lib/server/devices/espresense/trilateration.d.ts +7 -0
  255. package/lib/server/devices/espresense/trilateration.js +7 -0
  256. package/lib/server/devices/espresense/trilaterationBasePoint.d.ts +6 -0
  257. package/lib/server/devices/espresense/trilaterationBasePoint.js +3 -0
  258. package/lib/server/devices/espresense/trilaterationPoint.d.ts +1 -1
  259. package/lib/server/devices/espresense/trilaterationPoint.js +3 -1
  260. package/lib/server/devices/groups/Window.d.ts +14 -3
  261. package/lib/server/devices/groups/Window.js +28 -11
  262. package/lib/server/devices/groups/base-group.d.ts +4 -0
  263. package/lib/server/devices/groups/base-group.js +3 -0
  264. package/lib/server/devices/groups/heatGroup.d.ts +8 -6
  265. package/lib/server/devices/groups/heatGroup.js +11 -11
  266. package/lib/server/devices/groups/lightGroup.d.ts +10 -2
  267. package/lib/server/devices/groups/lightGroup.js +18 -37
  268. package/lib/server/devices/groups/presenceGroup.d.ts +14 -4
  269. package/lib/server/devices/groups/presenceGroup.js +66 -63
  270. package/lib/server/devices/groups/tasterGroup.js +6 -6
  271. package/lib/server/devices/groups/windowGroup.d.ts +16 -1
  272. package/lib/server/devices/groups/windowGroup.js +22 -7
  273. package/lib/server/devices/hmIPDevices/hmIpAccessPoint.d.ts +1 -0
  274. package/lib/server/devices/hmIPDevices/hmIpAccessPoint.js +1 -0
  275. package/lib/server/devices/hmIPDevices/hmIpBewegung.d.ts +9 -6
  276. package/lib/server/devices/hmIPDevices/hmIpBewegung.js +10 -11
  277. package/lib/server/devices/hmIPDevices/hmIpDevice.d.ts +1 -2
  278. package/lib/server/devices/hmIPDevices/hmIpDevice.js +2 -3
  279. package/lib/server/devices/hmIPDevices/hmIpGriff.d.ts +36 -5
  280. package/lib/server/devices/hmIPDevices/hmIpGriff.js +76 -33
  281. package/lib/server/devices/hmIPDevices/hmIpHeizgruppe.d.ts +25 -5
  282. package/lib/server/devices/hmIPDevices/hmIpHeizgruppe.js +27 -14
  283. package/lib/server/devices/hmIPDevices/hmIpHeizung.d.ts +13 -3
  284. package/lib/server/devices/hmIPDevices/hmIpHeizung.js +33 -12
  285. package/lib/server/devices/hmIPDevices/hmIpLampe.d.ts +7 -1
  286. package/lib/server/devices/hmIPDevices/hmIpLampe.js +11 -7
  287. package/lib/server/devices/hmIPDevices/hmIpPraezenz.d.ts +19 -9
  288. package/lib/server/devices/hmIPDevices/hmIpPraezenz.js +33 -11
  289. package/lib/server/devices/hmIPDevices/hmIpRoll.d.ts +4 -2
  290. package/lib/server/devices/hmIPDevices/hmIpRoll.js +25 -23
  291. package/lib/server/devices/hmIPDevices/hmIpTaster.d.ts +28 -4
  292. package/lib/server/devices/hmIPDevices/hmIpTaster.js +37 -8
  293. package/lib/server/devices/hmIPDevices/hmIpTherm.d.ts +11 -1
  294. package/lib/server/devices/hmIPDevices/hmIpTherm.js +26 -5
  295. package/lib/server/devices/hmIPDevices/hmIpTuer.d.ts +9 -1
  296. package/lib/server/devices/hmIPDevices/hmIpTuer.js +17 -4
  297. package/lib/server/devices/hmIPDevices/hmIpWippe.d.ts +27 -0
  298. package/lib/server/devices/hmIPDevices/hmIpWippe.js +3 -0
  299. package/lib/server/devices/iDeviceUpdater.d.ts +14 -0
  300. package/lib/server/devices/index.d.ts +7 -2
  301. package/lib/server/devices/index.js +10 -2
  302. package/lib/server/devices/jsObject/jsObjectEnergyManager.d.ts +5 -1
  303. package/lib/server/devices/jsObject/jsObjectEnergyManager.js +9 -3
  304. package/lib/server/devices/nameAmountValuePair.d.ts +5 -0
  305. package/lib/server/devices/nameAmountValuePair.js +10 -0
  306. package/lib/server/devices/scene/room-scene.d.ts +23 -6
  307. package/lib/server/devices/scene/room-scene.js +18 -4
  308. package/lib/server/devices/sharedFunctions/lampUtils.d.ts +11 -2
  309. package/lib/server/devices/sharedFunctions/lampUtils.js +79 -25
  310. package/lib/server/devices/shelly/index.d.ts +1 -0
  311. package/lib/server/devices/shelly/index.js +3 -1
  312. package/lib/server/devices/shelly/shellyActuator.d.ts +33 -0
  313. package/lib/server/devices/shelly/shellyActuator.js +84 -0
  314. package/lib/server/devices/shelly/shellyDevice.d.ts +2 -1
  315. package/lib/server/devices/shelly/shellyDevice.js +2 -1
  316. package/lib/server/devices/shelly/shellyTrv.d.ts +37 -17
  317. package/lib/server/devices/shelly/shellyTrv.js +66 -45
  318. package/lib/server/devices/smartGarden/index.d.ts +6 -0
  319. package/lib/server/devices/smartGarden/index.js +22 -0
  320. package/lib/server/devices/smartGarden/smartGardenDevice.d.ts +33 -0
  321. package/lib/server/devices/smartGarden/smartGardenDevice.js +98 -0
  322. package/lib/server/devices/smartGarden/smartGardenDeviceRegistrationInfo.d.ts +9 -0
  323. package/lib/server/devices/smartGarden/smartGardenDeviceRegistrationInfo.js +13 -0
  324. package/lib/server/devices/smartGarden/smartGardenMower.d.ts +35 -0
  325. package/lib/server/devices/smartGarden/smartGardenMower.js +107 -0
  326. package/lib/server/devices/smartGarden/smartGardenSensor.d.ts +43 -0
  327. package/lib/server/devices/smartGarden/smartGardenSensor.js +119 -0
  328. package/lib/server/devices/smartGarden/smartGardenService.d.ts +7 -0
  329. package/lib/server/devices/smartGarden/smartGardenService.js +52 -0
  330. package/lib/server/devices/smartGarden/smartGardenValve.d.ts +36 -0
  331. package/lib/server/devices/smartGarden/smartGardenValve.js +105 -0
  332. package/lib/server/devices/tuya/tuyaDevice.d.ts +2 -1
  333. package/lib/server/devices/tuya/tuyaDevice.js +2 -1
  334. package/lib/server/devices/tuya/tuyaGarageOpener.d.ts +3 -0
  335. package/lib/server/devices/tuya/tuyaGarageOpener.js +3 -0
  336. package/lib/server/devices/tv/samsungTv.d.ts +1 -0
  337. package/lib/server/devices/tv/samsungTv.js +1 -0
  338. package/lib/server/devices/tv/tvDevice.d.ts +7 -1
  339. package/lib/server/devices/tv/tvDevice.js +4 -3
  340. package/lib/server/devices/wledDevice.d.ts +15 -3
  341. package/lib/server/devices/wledDevice.js +42 -16
  342. package/lib/server/devices/zigbee/BaseDevices/ZigbeeActuator.d.ts +17 -4
  343. package/lib/server/devices/zigbee/BaseDevices/ZigbeeActuator.js +30 -15
  344. package/lib/server/devices/zigbee/BaseDevices/index.d.ts +1 -0
  345. package/lib/server/devices/zigbee/BaseDevices/index.js +3 -0
  346. package/lib/server/devices/zigbee/BaseDevices/zigbeeDevice.d.ts +4 -5
  347. package/lib/server/devices/zigbee/BaseDevices/zigbeeDevice.js +8 -17
  348. package/lib/server/devices/zigbee/BaseDevices/zigbeeDimmer.d.ts +10 -25
  349. package/lib/server/devices/zigbee/BaseDevices/zigbeeDimmer.js +27 -62
  350. package/lib/server/devices/zigbee/BaseDevices/zigbeeHeater.d.ts +34 -13
  351. package/lib/server/devices/zigbee/BaseDevices/zigbeeHeater.js +60 -34
  352. package/lib/server/devices/zigbee/BaseDevices/zigbeeLamp.d.ts +16 -0
  353. package/lib/server/devices/zigbee/BaseDevices/zigbeeLamp.js +35 -0
  354. package/lib/server/devices/zigbee/BaseDevices/zigbeeLedRGBCCT.d.ts +9 -8
  355. package/lib/server/devices/zigbee/BaseDevices/zigbeeLedRGBCCT.js +16 -13
  356. package/lib/server/devices/zigbee/BaseDevices/zigbeeMagnetContact.d.ts +26 -7
  357. package/lib/server/devices/zigbee/BaseDevices/zigbeeMagnetContact.js +52 -22
  358. package/lib/server/devices/zigbee/BaseDevices/zigbeeMotionSensor.d.ts +30 -14
  359. package/lib/server/devices/zigbee/BaseDevices/zigbeeMotionSensor.js +62 -38
  360. package/lib/server/devices/zigbee/BaseDevices/zigbeeShutter.d.ts +12 -3
  361. package/lib/server/devices/zigbee/BaseDevices/zigbeeShutter.js +28 -19
  362. package/lib/server/devices/zigbee/BaseDevices/zigbeeSwitch.d.ts +9 -1
  363. package/lib/server/devices/zigbee/BaseDevices/zigbeeSwitch.js +8 -1
  364. package/lib/server/devices/zigbee/zigbeeAqaraMagnetContact.d.ts +1 -0
  365. package/lib/server/devices/zigbee/zigbeeAqaraMagnetContact.js +1 -0
  366. package/lib/server/devices/zigbee/zigbeeAqaraOpple3Switch.d.ts +16 -0
  367. package/lib/server/devices/zigbee/zigbeeAqaraOpple3Switch.js +16 -0
  368. package/lib/server/devices/zigbee/zigbeeAquaraMotion.d.ts +6 -0
  369. package/lib/server/devices/zigbee/zigbeeAquaraMotion.js +7 -3
  370. package/lib/server/devices/zigbee/zigbeeAquaraVibra.d.ts +58 -11
  371. package/lib/server/devices/zigbee/zigbeeAquaraVibra.js +115 -27
  372. package/lib/server/devices/zigbee/zigbeeAquaraWater.d.ts +28 -8
  373. package/lib/server/devices/zigbee/zigbeeAquaraWater.js +54 -30
  374. package/lib/server/devices/zigbee/zigbeeBlitzShp.d.ts +15 -5
  375. package/lib/server/devices/zigbee/zigbeeBlitzShp.js +22 -14
  376. package/lib/server/devices/zigbee/zigbeeEuroHeater.d.ts +10 -4
  377. package/lib/server/devices/zigbee/zigbeeEuroHeater.js +16 -10
  378. package/lib/server/devices/zigbee/zigbeeHeimanSmoke.d.ts +34 -7
  379. package/lib/server/devices/zigbee/zigbeeHeimanSmoke.js +58 -20
  380. package/lib/server/devices/zigbee/zigbeeIkeaShutter.d.ts +1 -0
  381. package/lib/server/devices/zigbee/zigbeeIkeaShutter.js +2 -1
  382. package/lib/server/devices/zigbee/zigbeeIkeaSteckdose.d.ts +2 -0
  383. package/lib/server/devices/zigbee/zigbeeIkeaSteckdose.js +3 -1
  384. package/lib/server/devices/zigbee/zigbeeIlluActuator.d.ts +1 -2
  385. package/lib/server/devices/zigbee/zigbeeIlluActuator.js +2 -11
  386. package/lib/server/devices/zigbee/zigbeeIlluDimmer.d.ts +1 -1
  387. package/lib/server/devices/zigbee/zigbeeIlluDimmer.js +1 -1
  388. package/lib/server/devices/zigbee/zigbeeIlluLampe.d.ts +3 -10
  389. package/lib/server/devices/zigbee/zigbeeIlluLampe.js +3 -32
  390. package/lib/server/devices/zigbee/zigbeeIlluLedRGBCCT.d.ts +1 -1
  391. package/lib/server/devices/zigbee/zigbeeIlluLedRGBCCT.js +1 -1
  392. package/lib/server/devices/zigbee/zigbeeIlluShutter.d.ts +1 -0
  393. package/lib/server/devices/zigbee/zigbeeIlluShutter.js +5 -4
  394. package/lib/server/devices/zigbee/zigbeeInnr142C.d.ts +1 -1
  395. package/lib/server/devices/zigbee/zigbeeInnr142C.js +1 -1
  396. package/lib/server/devices/zigbee/zigbeeLinkindLedRgbCct.d.ts +1 -1
  397. package/lib/server/devices/zigbee/zigbeeLinkindLedRgbCct.js +1 -1
  398. package/lib/server/devices/zigbee/zigbeeOsramDimmer.d.ts +1 -1
  399. package/lib/server/devices/zigbee/zigbeeOsramDimmer.js +1 -1
  400. package/lib/server/devices/zigbee/zigbeeSMaBiTMagnetContact.d.ts +1 -0
  401. package/lib/server/devices/zigbee/zigbeeSMaBiTMagnetContact.js +1 -0
  402. package/lib/server/devices/zigbee/zigbeeSonoffMotion.d.ts +1 -0
  403. package/lib/server/devices/zigbee/zigbeeSonoffMotion.js +1 -0
  404. package/lib/server/devices/zigbee/zigbeeSonoffTemp.d.ts +34 -8
  405. package/lib/server/devices/zigbee/zigbeeSonoffTemp.js +50 -13
  406. package/lib/server/devices/zigbee/zigbeeTuyaValve.d.ts +10 -3
  407. package/lib/server/devices/zigbee/zigbeeTuyaValve.js +11 -6
  408. package/lib/server/devices/zigbee/zigbeeUbisysActuator.d.ts +9 -2
  409. package/lib/server/devices/zigbee/zigbeeUbisysActuator.js +10 -8
  410. package/lib/server/devices/zigbee/zigbeeUbisysLampe.d.ts +8 -9
  411. package/lib/server/devices/zigbee/zigbeeUbisysLampe.js +14 -24
  412. package/lib/server/devices/zigbee/zigbeeUbisysShutter.d.ts +1 -0
  413. package/lib/server/devices/zigbee/zigbeeUbisysShutter.js +2 -1
  414. package/lib/server/ioBroker/connection.d.ts +21 -20
  415. package/lib/server/ioBroker/connection.js +37 -28
  416. package/lib/server/ioBroker/ioBroker.main.d.ts +3 -0
  417. package/lib/server/ioBroker/ioBroker.main.js +12 -5
  418. package/lib/server/ioBroker/iobrokerConnectionLogging.d.ts +3 -0
  419. package/lib/server/ioBroker/iobrokerConnectionLogging.js +4 -0
  420. package/lib/server/ioBroker/socketIOConnectOptions.d.ts +2 -2
  421. package/lib/server/ioBroker/socketIOConnectOptions.js +1 -0
  422. package/lib/server/ioBroker/socketIOVisCommand.d.ts +5 -1
  423. package/lib/server/ioBroker/socketIOVisCommand.js +1 -0
  424. package/lib/server/services/ShutterService.js +6 -6
  425. package/lib/server/services/Sonos/OwnSonosDevices.d.ts +3 -0
  426. package/lib/server/services/Sonos/OwnSonosDevices.js +3 -0
  427. package/lib/server/services/Sonos/mp3-server.d.ts +3 -1
  428. package/lib/server/services/Sonos/mp3-server.js +3 -1
  429. package/lib/server/services/Sonos/own-sonos-device.d.ts +4 -1
  430. package/lib/server/services/Sonos/own-sonos-device.js +4 -4
  431. package/lib/server/services/Sonos/polly-service.d.ts +7 -1
  432. package/lib/server/services/Sonos/polly-service.js +10 -8
  433. package/lib/server/services/Sonos/sonos-service.d.ts +1 -5
  434. package/lib/server/services/Sonos/sonos-service.js +18 -17
  435. package/lib/server/services/Telegram/telegram-Commands.js +5 -5
  436. package/lib/server/services/Telegram/telegram-service.d.ts +2 -1
  437. package/lib/server/services/Telegram/telegram-service.js +8 -3
  438. package/lib/server/services/Translation/IRessourceObject.d.ts +13 -0
  439. package/lib/server/services/Translation/IRessourceObject.js +2 -0
  440. package/lib/server/services/Translation/iRessources.d.ts +1 -4
  441. package/lib/server/services/Translation/index.d.ts +1 -0
  442. package/lib/server/services/Translation/res.d.ts +34 -19
  443. package/lib/server/services/Translation/res.js +34 -19
  444. package/lib/server/services/ac/ac-device.d.ts +49 -7
  445. package/lib/server/services/ac/ac-device.js +99 -37
  446. package/lib/server/services/ac/daikin-service.js +4 -3
  447. package/lib/server/services/ac/own-ac-devices.d.ts +3 -0
  448. package/lib/server/services/ac/own-ac-devices.js +3 -0
  449. package/lib/server/services/ac/own-daikin-device.d.ts +25 -0
  450. package/lib/server/services/ac/own-daikin-device.js +40 -7
  451. package/lib/server/services/api/api-service.d.ts +118 -53
  452. package/lib/server/services/api/api-service.js +170 -80
  453. package/lib/server/services/blockAutomaticHandler.d.ts +13 -8
  454. package/lib/server/services/blockAutomaticHandler.js +34 -15
  455. package/lib/server/services/calendar/index.d.ts +1 -0
  456. package/lib/server/services/calendar/index.js +3 -0
  457. package/lib/server/services/calendar/muell-tonne.d.ts +11 -1
  458. package/lib/server/services/calendar/muell-tonne.js +10 -0
  459. package/lib/server/services/calendar/m/303/274ll-service.d.ts +23 -8
  460. package/lib/server/services/calendar/m/303/274ll-service.js +11 -5
  461. package/lib/server/services/calendar/name-date-pair.d.ts +5 -0
  462. package/lib/server/services/calendar/name-date-pair.js +10 -0
  463. package/lib/server/services/dbo/iPersist.d.ts +103 -0
  464. package/lib/server/services/dbo/postgreSqlPersist.d.ts +23 -0
  465. package/lib/server/services/dbo/postgreSqlPersist.js +28 -5
  466. package/lib/server/services/file-info.d.ts +5 -0
  467. package/lib/server/services/file-info.js +10 -0
  468. package/lib/server/services/govee/govee-device-data.d.ts +25 -0
  469. package/lib/server/services/govee/govee-device-data.js +2 -0
  470. package/lib/server/services/govee/govee-service.d.ts +7 -9
  471. package/lib/server/services/govee/govee-service.js +73 -48
  472. package/lib/server/services/govee/own-govee-device.d.ts +19 -17
  473. package/lib/server/services/govee/own-govee-device.js +56 -53
  474. package/lib/server/services/govee/own-govee-devices.d.ts +3 -0
  475. package/lib/server/services/govee/own-govee-devices.js +3 -0
  476. package/lib/server/services/https-service.d.ts +3 -2
  477. package/lib/server/services/https-service.js +4 -3
  478. package/lib/server/services/index.d.ts +1 -0
  479. package/lib/server/services/index.js +3 -0
  480. package/lib/server/services/log-service/index.d.ts +1 -0
  481. package/lib/server/services/log-service/index.js +3 -0
  482. package/lib/server/services/log-service/log-debug-type.d.ts +13 -0
  483. package/lib/server/services/log-service/log-debug-type.js +17 -0
  484. package/lib/server/services/log-service/log-filter-data.d.ts +21 -12
  485. package/lib/server/services/log-service/log-filter-data.js +6 -15
  486. package/lib/server/services/log-service/log-service.d.ts +17 -4
  487. package/lib/server/services/log-service/log-service.js +30 -17
  488. package/lib/server/services/news-service.d.ts +9 -7
  489. package/lib/server/services/news-service.js +14 -15
  490. package/lib/server/services/room-service/room-service.d.ts +20 -4
  491. package/lib/server/services/room-service/room-service.js +26 -10
  492. package/lib/server/services/settings-service.d.ts +6 -2
  493. package/lib/server/services/settings-service.js +3 -2
  494. package/lib/server/services/time-callback-service.js +1 -1
  495. package/lib/server/services/utils/RGB.d.ts +6 -0
  496. package/lib/server/services/utils/RGB.js +11 -0
  497. package/lib/server/services/utils/catchEmResult.d.ts +5 -0
  498. package/lib/server/services/utils/catchEmResult.js +10 -0
  499. package/lib/server/services/utils/energy-consumer-state-change.d.ts +6 -0
  500. package/lib/server/services/utils/energy-consumer-state-change.js +10 -0
  501. package/lib/server/services/utils/energy-manager-utils.d.ts +3 -14
  502. package/lib/server/services/utils/energy-manager-utils.js +2 -2
  503. package/lib/server/services/utils/iDisposeable.d.ts +6 -0
  504. package/lib/server/services/utils/index.d.ts +4 -1
  505. package/lib/server/services/utils/index.js +8 -1
  506. package/lib/server/services/utils/{ringstorage.d.ts → ringStorage.d.ts} +1 -1
  507. package/lib/server/services/utils/{ringstorage.js → ringStorage.js} +3 -3
  508. package/lib/server/services/utils/utils.d.ts +9 -13
  509. package/lib/server/services/victron/victron-device.d.ts +27 -10
  510. package/lib/server/services/victron/victron-device.js +94 -25
  511. package/lib/server/services/weather/index.d.ts +2 -0
  512. package/lib/server/services/weather/index.js +3 -0
  513. package/lib/server/services/weather/rain-next-minutes-info.d.ts +5 -0
  514. package/lib/server/services/weather/rain-next-minutes-info.js +10 -0
  515. package/lib/server/services/weather/weather-current.d.ts +0 -2
  516. package/lib/server/services/weather/weather-feelsLike.d.ts +15 -0
  517. package/lib/server/services/weather/weather-response.d.ts +16 -0
  518. package/lib/server/services/weather/weather-response.js +2 -0
  519. package/lib/server/services/weather/weather-service.d.ts +16 -18
  520. package/lib/server/services/weather/weather-service.js +37 -22
  521. package/lib/server/services/weather/weather-temp.d.ts +21 -0
  522. package/lib/tsconfig.tsbuildinfo +1 -1
  523. package/package.json +6 -8
  524. package/lib/models/iTemperaturDataPoint.d.ts +0 -9
  525. package/lib/models/persistence/RoomDetailInfo.d.ts +0 -6
  526. package/lib/models/persistence/RoomDetailInfo.js +0 -11
  527. package/lib/models/persistence/temperaturDataPoint.d.ts +0 -10
  528. package/lib/models/persistence/temperaturDataPoint.js +0 -14
  529. /package/lib/{models/iTemperaturDataPoint.js → server/config/iBlockAutomaticHandlerDefaults.js} +0 -0
@@ -11,15 +11,19 @@ const DeviceCapability_1 = require("../DeviceCapability");
11
11
  class HmIpHeizgruppe extends hmIpDevice_1.HmIPDevice {
12
12
  constructor(pInfo) {
13
13
  super(pInfo, deviceType_1.DeviceType.HmIpHeizgruppe);
14
+ /** @inheritDoc */
14
15
  this.persistHeaterInterval = services_1.Utils.guardedInterval(() => {
15
16
  this.persistHeater();
16
17
  }, 5 * 60 * 1000, this, false);
18
+ /** @inheritDoc */
17
19
  this.persistTemperatureSensorInterval = services_1.Utils.guardedInterval(() => {
18
20
  this.persistTemperaturSensor();
19
21
  }, 5 * 60 * 1000, this, false);
22
+ /** @inheritDoc */
20
23
  this.persistHumiditySensorInterval = services_1.Utils.guardedInterval(() => {
21
24
  this.persistHumiditySensor();
22
25
  }, 5 * 60 * 1000, this, false);
26
+ /** @inheritDoc */
23
27
  this.settings = new models_1.HeaterSettings();
24
28
  this._initialSeasonCheckDone = false;
25
29
  this._level = 0;
@@ -40,9 +44,11 @@ class HmIpHeizgruppe extends hmIpDevice_1.HmIPDevice {
40
44
  this.checkSeasonTurnOff();
41
45
  }, 0, 2, 0));
42
46
  }
47
+ /** @inheritDoc */
43
48
  get seasonTurnOff() {
44
49
  return this._seasonTurnOff;
45
50
  }
51
+ /** @inheritDoc */
46
52
  set seasonTurnOff(value) {
47
53
  this._seasonTurnOff = value;
48
54
  if (value) {
@@ -61,21 +67,24 @@ class HmIpHeizgruppe extends hmIpDevice_1.HmIPDevice {
61
67
  set temperature(val) {
62
68
  this._temperature = val;
63
69
  for (const cb of this._temperatureCallbacks) {
64
- cb(val);
70
+ cb(new models_1.TemperatureSensorChangeAction(this, val));
65
71
  }
66
72
  }
73
+ /** @inheritDoc */
67
74
  get humidity() {
68
75
  return this._humidity;
69
76
  }
70
77
  set humidity(val) {
71
78
  this._humidity = val;
72
79
  for (const cb of this._humidityCallbacks) {
73
- cb(val);
80
+ cb(new models_1.HumiditySensorChangeAction(this, val));
74
81
  }
75
82
  }
83
+ /** @inheritDoc */
76
84
  get desiredTemperature() {
77
85
  return this._desiredTemperature;
78
86
  }
87
+ /** @inheritDoc */
79
88
  set desiredTemperature(val) {
80
89
  this.setState(this._setPointTemperatureID, this.seasonTurnOff ? 5 : val, () => {
81
90
  this.log(models_1.LogLevel.Info, `Changed temperature of to "${val}.`);
@@ -86,30 +95,33 @@ class HmIpHeizgruppe extends hmIpDevice_1.HmIPDevice {
86
95
  get sLevel() {
87
96
  return `${this._level * 100}%`;
88
97
  }
98
+ /** @inheritDoc */
89
99
  get iLevel() {
90
100
  return this._level;
91
101
  }
102
+ /** @inheritDoc */
92
103
  get sTemperature() {
93
104
  return `${this.temperature}°C`;
94
105
  }
106
+ /** @inheritDoc */
95
107
  get iTemperature() {
96
108
  return this.temperature;
97
109
  }
110
+ /** @inheritDoc */
98
111
  get roomTemperature() {
99
112
  return this._roomTemperature;
100
113
  }
101
- set roomTemperature(value) {
102
- this._roomTemperature = value;
103
- }
114
+ /** @inheritDoc */
104
115
  addHumidityCallback(pCallback) {
105
116
  this._humidityCallbacks.push(pCallback);
106
117
  if (this._humidity > 0) {
107
- pCallback(this._humidity);
118
+ pCallback(new models_1.HumiditySensorChangeAction(this, this._humidity));
108
119
  }
109
120
  }
110
121
  getBelongingHeizungen() {
111
122
  return this.room.deviceCluster.getDevicesByType(device_cluster_type_1.DeviceClusterType.Heater);
112
123
  }
124
+ /** @inheritDoc */
113
125
  update(idSplit, state, initial = false) {
114
126
  this.log(models_1.LogLevel.DeepTrace, `Heizgruppe Update: ID: ${idSplit.join('.')} JSON: ${JSON.stringify(state)}`);
115
127
  super.update(idSplit, state, initial, true);
@@ -119,12 +131,7 @@ class HmIpHeizgruppe extends hmIpDevice_1.HmIPDevice {
119
131
  break;
120
132
  }
121
133
  }
122
- stopAutomaticCheck() {
123
- if (this._iAutomaticInterval !== undefined) {
124
- clearInterval(this._iAutomaticInterval);
125
- this._iAutomaticInterval = undefined;
126
- }
127
- }
134
+ /** @inheritDoc */
128
135
  checkAutomaticChange() {
129
136
  var _a, _b, _c, _d;
130
137
  if (!this._initialSeasonCheckDone) {
@@ -144,23 +151,28 @@ class HmIpHeizgruppe extends hmIpDevice_1.HmIPDevice {
144
151
  this.desiredTemperature = targetTemp;
145
152
  }
146
153
  }
154
+ /** @inheritDoc */
147
155
  addTempChangeCallback(pCallback) {
148
156
  this._temperatureCallbacks.push(pCallback);
149
157
  if (this._temperature > baseDeviceInterfaces_1.UNDEFINED_TEMP_VALUE) {
150
- pCallback(this._temperature);
158
+ pCallback(new models_1.TemperatureSensorChangeAction(this, this._temperature));
151
159
  }
152
160
  }
161
+ /** @inheritDoc */
153
162
  onTemperaturChange(newTemperatur) {
154
- this.roomTemperature = newTemperatur;
163
+ this._roomTemperature = newTemperatur;
155
164
  }
165
+ /** @inheritDoc */
156
166
  persistTemperaturSensor() {
157
167
  var _a;
158
168
  (_a = services_1.Utils.dbo) === null || _a === void 0 ? void 0 : _a.persistTemperatureSensor(this);
159
169
  }
170
+ /** @inheritDoc */
160
171
  persistHeater() {
161
172
  var _a;
162
173
  (_a = services_1.Utils.dbo) === null || _a === void 0 ? void 0 : _a.persistHeater(this);
163
174
  }
175
+ /** @inheritDoc */
164
176
  persistHumiditySensor() {
165
177
  var _a;
166
178
  (_a = services_1.Utils.dbo) === null || _a === void 0 ? void 0 : _a.persistHumiditySensor(this);
@@ -190,6 +202,7 @@ class HmIpHeizgruppe extends hmIpDevice_1.HmIPDevice {
190
202
  }
191
203
  this._initialSeasonCheckDone = true;
192
204
  }
205
+ /** @inheritDoc */
193
206
  dispose() {
194
207
  if (this.persistTemperatureSensorInterval) {
195
208
  clearInterval(this.persistTemperatureSensorInterval);
@@ -1,3 +1,4 @@
1
+ import { BatteryLevelChangeAction } from '../../../models';
1
2
  import { HmIPDevice } from './hmIpDevice';
2
3
  import { IoBrokerDeviceInfo } from '../IoBrokerDeviceInfo';
3
4
  import { iBatteryDevice } from '../baseDeviceInterfaces';
@@ -7,14 +8,23 @@ export declare class HmIpHeizung extends HmIPDevice implements iBatteryDevice {
7
8
  private _level;
8
9
  private _adaptionState;
9
10
  private _lastBatteryPersist;
11
+ private _lastBatteryLevel;
12
+ private _batteryLevelCallbacks;
13
+ private _desiredTemperatur;
14
+ constructor(pInfo: IoBrokerDeviceInfo);
10
15
  get lastBatteryPersist(): number;
11
16
  get battery(): number;
12
- constructor(pInfo: IoBrokerDeviceInfo);
13
- private _desiredTemperatur;
14
17
  get desiredTemperatur(): number;
15
18
  get iLevel(): number;
16
19
  get iTemperatur(): number;
20
+ /** @inheritDoc */
21
+ addBatteryLevelCallback(pCallback: (action: BatteryLevelChangeAction) => void): void;
22
+ /** @inheritDoc */
17
23
  update(idSplit: string[], state: ioBroker.State, initial?: boolean): void;
18
- private updateBaseInformation;
19
24
  persistBatteryDevice(): void;
25
+ private updateBaseInformation;
26
+ /**
27
+ * Checks whether the battery level did change and if so fires the callbacks
28
+ */
29
+ private checkForBatteryChange;
20
30
  }
@@ -19,21 +19,23 @@ var HmIpHeizungAdaptionStates;
19
19
  HmIpHeizungAdaptionStates[HmIpHeizungAdaptionStates["ErrorPosition"] = 8] = "ErrorPosition";
20
20
  })(HmIpHeizungAdaptionStates || (HmIpHeizungAdaptionStates = {}));
21
21
  class HmIpHeizung extends hmIpDevice_1.HmIPDevice {
22
- get lastBatteryPersist() {
23
- return this._lastBatteryPersist;
24
- }
25
- get battery() {
26
- return this._battery;
27
- }
28
22
  constructor(pInfo) {
29
23
  super(pInfo, deviceType_1.DeviceType.HmIpHeizung);
30
24
  this._battery = -99;
31
25
  this._temperatur = 0;
32
26
  this._level = 0;
33
27
  this._lastBatteryPersist = 0;
28
+ this._lastBatteryLevel = -1;
29
+ this._batteryLevelCallbacks = [];
34
30
  this._desiredTemperatur = 0;
35
31
  this.deviceCapabilities.push(DeviceCapability_1.DeviceCapability.batteryDriven);
36
32
  }
33
+ get lastBatteryPersist() {
34
+ return this._lastBatteryPersist;
35
+ }
36
+ get battery() {
37
+ return this._battery;
38
+ }
37
39
  get desiredTemperatur() {
38
40
  return this._desiredTemperatur;
39
41
  }
@@ -43,6 +45,11 @@ class HmIpHeizung extends hmIpDevice_1.HmIPDevice {
43
45
  get iTemperatur() {
44
46
  return this._temperatur;
45
47
  }
48
+ /** @inheritDoc */
49
+ addBatteryLevelCallback(pCallback) {
50
+ this._batteryLevelCallbacks.push(pCallback);
51
+ }
52
+ /** @inheritDoc */
46
53
  update(idSplit, state, initial = false) {
47
54
  this.log(models_1.LogLevel.DeepTrace, `Heizung Update: ID: ${idSplit.join('.')} JSON: ${JSON.stringify(state)}`);
48
55
  super.update(idSplit, state, initial, true);
@@ -51,6 +58,7 @@ class HmIpHeizung extends hmIpDevice_1.HmIPDevice {
51
58
  switch (idSplit[4]) {
52
59
  case 'OPERATING_VOLTAGE':
53
60
  this._battery = 100 * ((state.val - 1.8) / 1.2);
61
+ this.checkForBatteryChange();
54
62
  this.persistBatteryDevice();
55
63
  break;
56
64
  }
@@ -60,6 +68,15 @@ class HmIpHeizung extends hmIpDevice_1.HmIPDevice {
60
68
  break;
61
69
  }
62
70
  }
71
+ persistBatteryDevice() {
72
+ var _a;
73
+ const now = services_1.Utils.nowMS();
74
+ if (this._lastBatteryPersist + 60000 > now) {
75
+ return;
76
+ }
77
+ (_a = services_1.Utils.dbo) === null || _a === void 0 ? void 0 : _a.persistBatteryDevice(this);
78
+ this._lastBatteryPersist = now;
79
+ }
63
80
  updateBaseInformation(name, state) {
64
81
  switch (name) {
65
82
  case 'ACTUAL_TEMPERATURE':
@@ -81,14 +98,18 @@ class HmIpHeizung extends hmIpDevice_1.HmIPDevice {
81
98
  break;
82
99
  }
83
100
  }
84
- persistBatteryDevice() {
85
- var _a;
86
- const now = services_1.Utils.nowMS();
87
- if (this._lastBatteryPersist + 60000 > now) {
101
+ /**
102
+ * Checks whether the battery level did change and if so fires the callbacks
103
+ */
104
+ checkForBatteryChange() {
105
+ const newLevel = this.battery;
106
+ if (newLevel == -1 || newLevel == this._lastBatteryLevel) {
88
107
  return;
89
108
  }
90
- (_a = services_1.Utils.dbo) === null || _a === void 0 ? void 0 : _a.persistBatteryDevice(this);
91
- this._lastBatteryPersist = now;
109
+ for (const cb of this._batteryLevelCallbacks) {
110
+ cb(new models_1.BatteryLevelChangeAction(this));
111
+ }
112
+ this._lastBatteryLevel = newLevel;
92
113
  }
93
114
  }
94
115
  exports.HmIpHeizung = HmIpHeizung;
@@ -4,15 +4,21 @@ import { iLamp, iTemporaryDisableAutomatic } from '../baseDeviceInterfaces';
4
4
  import { IoBrokerDeviceInfo } from '../IoBrokerDeviceInfo';
5
5
  import { BlockAutomaticHandler } from '../../services/blockAutomaticHandler';
6
6
  export declare class HmIpLampe extends HmIPDevice implements iLamp, iTemporaryDisableAutomatic {
7
- lightOn: boolean;
7
+ /** @inheritDoc */
8
+ private _actuatorOn;
9
+ /** @inheritDoc */
8
10
  settings: ActuatorSettings;
9
11
  private lightOnSwitchID;
12
+ /** @inheritDoc */
10
13
  readonly blockAutomationHandler: BlockAutomaticHandler;
14
+ /** @inheritDoc */
11
15
  queuedValue: boolean | null;
16
+ /** @inheritDoc */
12
17
  targetAutomaticState: boolean;
13
18
  constructor(pInfo: IoBrokerDeviceInfo);
14
19
  get actuatorOn(): boolean;
15
20
  restoreTargetAutomaticValue(c: RestoreTargetAutomaticValueCommand): void;
21
+ /** @inheritDoc */
16
22
  update(idSplit: string[], state: ioBroker.State, initial?: boolean): void;
17
23
  setActuator(command: ActuatorSetStateCommand): void;
18
24
  toggleActuator(c: ActuatorToggleCommand): boolean;
@@ -11,23 +11,27 @@ const sharedFunctions_1 = require("../sharedFunctions");
11
11
  class HmIpLampe extends hmIpDevice_1.HmIPDevice {
12
12
  constructor(pInfo) {
13
13
  super(pInfo, deviceType_1.DeviceType.HmIpLampe);
14
- this.lightOn = false;
14
+ /** @inheritDoc */
15
+ this._actuatorOn = false;
16
+ /** @inheritDoc */
15
17
  this.settings = new models_1.ActuatorSettings();
16
18
  this.lightOnSwitchID = '';
19
+ /** @inheritDoc */
17
20
  this.queuedValue = null;
21
+ /** @inheritDoc */
18
22
  this.targetAutomaticState = false;
19
23
  this.deviceCapabilities.push(DeviceCapability_1.DeviceCapability.lamp);
20
24
  this.deviceCapabilities.push(DeviceCapability_1.DeviceCapability.blockAutomatic);
21
25
  this.lightOnSwitchID = `${this.info.fullID}.2.STATE`;
22
- this.blockAutomationHandler = new blockAutomaticHandler_1.BlockAutomaticHandler(this.restoreTargetAutomaticValue.bind(this));
26
+ this.blockAutomationHandler = new blockAutomaticHandler_1.BlockAutomaticHandler(this.restoreTargetAutomaticValue.bind(this), this.log.bind(this));
23
27
  }
24
28
  get actuatorOn() {
25
- return this.lightOn;
29
+ return this._actuatorOn;
26
30
  }
27
31
  restoreTargetAutomaticValue(c) {
28
- this.log(models_1.LogLevel.Debug, c.logMessage);
29
- this.setLight(new models_1.LampSetLightCommand(c, this.targetAutomaticState, 'Lampen RestoreTargetAutomaticValue'));
32
+ this.setLight(new models_1.LampSetLightCommand(c, this.targetAutomaticState));
30
33
  }
34
+ /** @inheritDoc */
31
35
  update(idSplit, state, initial = false) {
32
36
  this.log(models_1.LogLevel.DeepTrace, `Lampen Update : ID: ${idSplit.join('.')} JSON: ${JSON.stringify(state)}`);
33
37
  this.queuedValue = null;
@@ -35,7 +39,7 @@ class HmIpLampe extends hmIpDevice_1.HmIPDevice {
35
39
  switch (idSplit[3]) {
36
40
  case '1':
37
41
  if (idSplit[4] === 'STATE') {
38
- this.lightOn = state.val;
42
+ this._actuatorOn = state.val;
39
43
  this.persist();
40
44
  }
41
45
  break;
@@ -52,7 +56,7 @@ class HmIpLampe extends hmIpDevice_1.HmIPDevice {
52
56
  /** @inheritdoc */
53
57
  setLight(c) {
54
58
  if (this.lightOnSwitchID === '') {
55
- this.log(models_1.LogLevel.Error, `Keine Switch ID bekannt.`);
59
+ this.log(models_1.LogLevel.Error, 'Keine Switch ID bekannt.');
56
60
  return;
57
61
  }
58
62
  sharedFunctions_1.LampUtils.setActuator(this, c);
@@ -1,31 +1,41 @@
1
1
  import { HmIPDevice } from './hmIpDevice';
2
- import { MotionSensorSettings } from '../../../models';
2
+ import { BatteryLevelChangeAction, MotionSensorAction, MotionSensorSettings } from '../../../models';
3
3
  import { iBatteryDevice, iIlluminationSensor, iMotionSensor } from '../baseDeviceInterfaces';
4
4
  import { IoBrokerDeviceInfo } from '../IoBrokerDeviceInfo';
5
5
  export declare class HmIpPraezenz extends HmIPDevice implements iIlluminationSensor, iBatteryDevice, iMotionSensor {
6
- private _battery;
7
- private _lastBatteryPersist;
8
- get lastBatteryPersist(): number;
9
6
  private static PRESENCE_DETECTION;
10
7
  private static CURRENT_ILLUMINATION;
11
- excludeFromNightAlarm: boolean;
8
+ /** @inheritDoc */
12
9
  movementDetected: boolean;
13
- get battery(): number;
10
+ /** @inheritDoc */
14
11
  settings: MotionSensorSettings;
12
+ private _battery;
13
+ private _lastBatteryPersist;
15
14
  private _movementDetectedCallback;
16
15
  private initialized;
17
16
  private _lastMotionTime;
17
+ private _detectionsToday;
18
+ private _currentIllumination;
19
+ private _lastBatteryLevel;
20
+ private _batteryLevelCallbacks;
18
21
  constructor(pInfo: IoBrokerDeviceInfo);
22
+ get lastBatteryPersist(): number;
23
+ get battery(): number;
19
24
  get timeSinceLastMotion(): number;
20
- private _detectionsToday;
21
25
  get detectionsToday(): number;
22
26
  set detectionsToday(pVal: number);
23
- private _currentIllumination;
24
27
  get currentIllumination(): number;
25
28
  private set currentIllumination(value);
26
- addMovementCallback(pCallback: (pValue: boolean) => void): void;
29
+ /** @inheritDoc */
30
+ addBatteryLevelCallback(pCallback: (action: BatteryLevelChangeAction) => void): void;
31
+ addMovementCallback(pCallback: (action: MotionSensorAction) => void): void;
32
+ /** @inheritDoc */
27
33
  update(idSplit: string[], state: ioBroker.State, initial?: boolean): void;
28
34
  updatePresence(pVal: boolean): void;
29
35
  persistMotionSensor(): void;
30
36
  persistBatteryDevice(): void;
37
+ /**
38
+ * Checks whether the battery level did change and if so fires the callbacks
39
+ */
40
+ private checkForBatteryChange;
31
41
  }
@@ -7,26 +7,23 @@ const models_1 = require("../../../models");
7
7
  const services_1 = require("../../services");
8
8
  const DeviceCapability_1 = require("../DeviceCapability");
9
9
  class HmIpPraezenz extends hmIpDevice_1.HmIPDevice {
10
- get lastBatteryPersist() {
11
- return this._lastBatteryPersist;
12
- }
13
- get battery() {
14
- return this._battery;
15
- }
16
10
  constructor(pInfo) {
17
11
  var _a;
18
12
  super(pInfo, deviceType_1.DeviceType.HmIpPraezenz);
19
- this._battery = -99;
20
- this._lastBatteryPersist = 0;
21
- this.excludeFromNightAlarm = false;
13
+ /** @inheritDoc */
22
14
  this.movementDetected = false;
15
+ /** @inheritDoc */
23
16
  this.settings = new models_1.MotionSensorSettings();
17
+ this._battery = -99;
18
+ this._lastBatteryPersist = 0;
24
19
  this._movementDetectedCallback = [];
25
20
  // private presenceStateID: string;
26
21
  this.initialized = false;
27
22
  this._lastMotionTime = 0;
28
23
  this._detectionsToday = 0;
29
24
  this._currentIllumination = -1;
25
+ this._lastBatteryLevel = -1;
26
+ this._batteryLevelCallbacks = [];
30
27
  this.deviceCapabilities.push(DeviceCapability_1.DeviceCapability.illuminationSensor);
31
28
  this.deviceCapabilities.push(DeviceCapability_1.DeviceCapability.batteryDriven);
32
29
  this.deviceCapabilities.push(DeviceCapability_1.DeviceCapability.motionSensor);
@@ -45,6 +42,12 @@ class HmIpPraezenz extends hmIpDevice_1.HmIPDevice {
45
42
  });
46
43
  }
47
44
  }
45
+ get lastBatteryPersist() {
46
+ return this._lastBatteryPersist;
47
+ }
48
+ get battery() {
49
+ return this._battery;
50
+ }
48
51
  get timeSinceLastMotion() {
49
52
  return Math.floor((services_1.Utils.nowMS() - this._lastMotionTime) / 1000);
50
53
  }
@@ -62,9 +65,14 @@ class HmIpPraezenz extends hmIpDevice_1.HmIPDevice {
62
65
  this._currentIllumination = value;
63
66
  (_a = services_1.Utils.dbo) === null || _a === void 0 ? void 0 : _a.persistIlluminationSensor(this);
64
67
  }
68
+ /** @inheritDoc */
69
+ addBatteryLevelCallback(pCallback) {
70
+ this._batteryLevelCallbacks.push(pCallback);
71
+ }
65
72
  addMovementCallback(pCallback) {
66
73
  this._movementDetectedCallback.push(pCallback);
67
74
  }
75
+ /** @inheritDoc */
68
76
  update(idSplit, state, initial = false) {
69
77
  this.log(models_1.LogLevel.DeepTrace, `Präzens Update: JSON: ${JSON.stringify(state)}ID: ${idSplit.join('.')}`);
70
78
  super.update(idSplit, state, initial, true);
@@ -73,6 +81,7 @@ class HmIpPraezenz extends hmIpDevice_1.HmIPDevice {
73
81
  switch (idSplit[4]) {
74
82
  case 'OPERATING_VOLTAGE':
75
83
  this._battery = 100 * ((state.val - 1.8) / 1.2);
84
+ this.checkForBatteryChange();
76
85
  this.persistBatteryDevice();
77
86
  break;
78
87
  }
@@ -91,7 +100,7 @@ class HmIpPraezenz extends hmIpDevice_1.HmIPDevice {
91
100
  }
92
101
  updatePresence(pVal) {
93
102
  if (!this.initialized && pVal) {
94
- this.log(models_1.LogLevel.Debug, `Präsenz erkannt aber die Initialisierung aus der DB ist noch nicht erfolgt --> verzögern`);
103
+ this.log(models_1.LogLevel.Debug, 'Präsenz erkannt aber die Initialisierung aus der DB ist noch nicht erfolgt --> verzögern');
95
104
  services_1.Utils.guardedTimeout(() => {
96
105
  this.updatePresence(pVal);
97
106
  }, 1000, this);
@@ -110,7 +119,7 @@ class HmIpPraezenz extends hmIpDevice_1.HmIPDevice {
110
119
  this.log(models_1.LogLevel.Trace, `Dies ist die ${this.detectionsToday} Bewegung `);
111
120
  }
112
121
  for (const c of this._movementDetectedCallback) {
113
- c(pVal);
122
+ c(new models_1.MotionSensorAction(this));
114
123
  }
115
124
  }
116
125
  persistMotionSensor() {
@@ -126,6 +135,19 @@ class HmIpPraezenz extends hmIpDevice_1.HmIPDevice {
126
135
  (_a = services_1.Utils.dbo) === null || _a === void 0 ? void 0 : _a.persistBatteryDevice(this);
127
136
  this._lastBatteryPersist = now;
128
137
  }
138
+ /**
139
+ * Checks whether the battery level did change and if so fires the callbacks
140
+ */
141
+ checkForBatteryChange() {
142
+ const newLevel = this.battery;
143
+ if (newLevel == -1 || newLevel == this._lastBatteryLevel) {
144
+ return;
145
+ }
146
+ for (const cb of this._batteryLevelCallbacks) {
147
+ cb(new models_1.BatteryLevelChangeAction(this));
148
+ }
149
+ this._lastBatteryLevel = newLevel;
150
+ }
129
151
  }
130
152
  exports.HmIpPraezenz = HmIpPraezenz;
131
153
  // TODO: Add iPresenceSensor
@@ -5,6 +5,7 @@ import { iShutter } from '../baseDeviceInterfaces';
5
5
  import { IoBrokerBaseDevice } from '../IoBrokerBaseDevice';
6
6
  import { IoBrokerDeviceInfo } from '../IoBrokerDeviceInfo';
7
7
  export declare class HmIpRoll extends HmIPDevice implements iShutter {
8
+ /** @inheritDoc */
8
9
  settings: ShutterSettings;
9
10
  private _setLevelSwitchID;
10
11
  private _firstCommandRecieved;
@@ -13,13 +14,14 @@ export declare class HmIpRoll extends HmIPDevice implements iShutter {
13
14
  constructor(pInfo: IoBrokerDeviceInfo);
14
15
  private _currentLevel;
15
16
  get currentLevel(): number;
16
- set currentLevel(value: number);
17
+ /** @inheritDoc */
18
+ update(idSplit: string[], state: ioBroker.State, initial?: boolean): void;
17
19
  private _window?;
18
20
  get window(): Window | undefined;
19
21
  set window(value: Window | undefined);
20
22
  get desiredWindowShutterLevel(): number;
21
23
  persist(): void;
22
- update(idSplit: string[], state: ioBroker.State, initial?: boolean): void;
24
+ private setCurrentLevel;
23
25
  setLevel(command: ShutterSetLevelCommand): void;
24
26
  toJSON(): Partial<IoBrokerBaseDevice>;
25
27
  }
@@ -15,6 +15,7 @@ class HmIpRoll extends hmIpDevice_1.HmIPDevice {
15
15
  constructor(pInfo) {
16
16
  var _a;
17
17
  super(pInfo, deviceType_1.DeviceType.HmIpRoll);
18
+ /** @inheritDoc */
18
19
  this.settings = new models_2.ShutterSettings();
19
20
  this._firstCommandRecieved = false;
20
21
  this._setLevel = -1;
@@ -36,18 +37,17 @@ class HmIpRoll extends hmIpDevice_1.HmIPDevice {
36
37
  }
37
38
  return this._currentLevel;
38
39
  }
39
- set currentLevel(value) {
40
- if (value !== this._setLevel && services_1.Utils.nowMS() - this._setLevelTime < 60 * 10000) {
41
- value = this._setLevel;
42
- }
43
- if (value !== this._currentLevel && this._window) {
44
- services_1.Utils.guardedNewThread(() => {
45
- var _a;
46
- (_a = this._window) === null || _a === void 0 ? void 0 : _a.rolloPositionChange(value);
47
- }, this);
48
- this.persist();
40
+ /** @inheritDoc */
41
+ update(idSplit, state, initial = false) {
42
+ this.log(models_2.LogLevel.DeepTrace, `Rollo Update : ID: ${idSplit.join('.')} JSON: ${JSON.stringify(state)}`);
43
+ super.update(idSplit, state, initial, true);
44
+ switch (idSplit[3]) {
45
+ case '3':
46
+ if (idSplit[4] === 'LEVEL') {
47
+ this.setCurrentLevel(state.val, true);
48
+ }
49
+ break;
49
50
  }
50
- this._currentLevel = value;
51
51
  }
52
52
  get window() {
53
53
  return this._window;
@@ -65,16 +65,18 @@ class HmIpRoll extends hmIpDevice_1.HmIPDevice {
65
65
  var _a;
66
66
  (_a = services_1.Utils.dbo) === null || _a === void 0 ? void 0 : _a.persistShutter(this);
67
67
  }
68
- update(idSplit, state, initial = false) {
69
- this.log(models_2.LogLevel.DeepTrace, `Rollo Update : ID: ${idSplit.join('.')} JSON: ${JSON.stringify(state)}`);
70
- super.update(idSplit, state, initial, true);
71
- switch (idSplit[3]) {
72
- case '3':
73
- if (idSplit[4] === 'LEVEL') {
74
- this.currentLevel = state.val;
75
- }
76
- break;
68
+ setCurrentLevel(value, initial = false) {
69
+ if (value !== this._setLevel && services_1.Utils.nowMS() - this._setLevelTime < 60 * 10000) {
70
+ value = this._setLevel;
71
+ }
72
+ if (value !== this._currentLevel && this._window && !initial) {
73
+ services_1.Utils.guardedNewThread(() => {
74
+ var _a;
75
+ (_a = this._window) === null || _a === void 0 ? void 0 : _a.rolloPositionChange(new models_2.ShutterPositionChangedAction(this, value));
76
+ }, this);
77
+ this.persist();
77
78
  }
79
+ this._currentLevel = value;
78
80
  }
79
81
  setLevel(command) {
80
82
  let targetLevel = command.level;
@@ -90,7 +92,7 @@ class HmIpRoll extends hmIpDevice_1.HmIPDevice {
90
92
  return;
91
93
  }
92
94
  if (this._setLevelSwitchID === '') {
93
- this.log(models_2.LogLevel.Error, `Keine Switch ID bekannt.`);
95
+ this.log(models_2.LogLevel.Error, 'Keine Switch ID bekannt.');
94
96
  return;
95
97
  }
96
98
  if (!this.checkIoConnection(true)) {
@@ -100,14 +102,14 @@ class HmIpRoll extends hmIpDevice_1.HmIPDevice {
100
102
  if (this._window !== undefined) {
101
103
  if (this._window.griffeInPosition(models_1.WindowPosition.offen) > 0 && command.level < 100) {
102
104
  if (!command.skipOpenWarning) {
103
- this.log(models_2.LogLevel.Alert, `Not closing the shutter, as the window is open!`);
105
+ this.log(models_2.LogLevel.Alert, 'Not closing the shutter, as the window is open!');
104
106
  }
105
107
  return;
106
108
  }
107
109
  if (this._window.griffeInPosition(models_1.WindowPosition.kipp) > 0 && targetLevel < 50) {
108
110
  targetLevel = 50;
109
111
  if (!command.skipOpenWarning) {
110
- this.log(models_2.LogLevel.Alert, `Not closing the shutter, as the window is half open!`);
112
+ this.log(models_2.LogLevel.Alert, 'Not closing the shutter, as the window is half open!');
111
113
  }
112
114
  }
113
115
  }
@@ -1,25 +1,49 @@
1
1
  import { HmIPDevice } from './hmIpDevice';
2
2
  import { iBatteryDevice, iButtonSwitch } from '../baseDeviceInterfaces';
3
3
  import { Button, ButtonPosition, ButtonPressType } from '../button';
4
+ import { BatteryLevelChangeAction } from '../../../models';
4
5
  import { IoBrokerDeviceInfo } from '../IoBrokerDeviceInfo';
5
6
  export declare class HmIpTaster extends HmIPDevice implements iButtonSwitch, iBatteryDevice {
6
- private _battery;
7
- private _lastBatteryPersist;
8
- get lastBatteryPersist(): number;
9
7
  private static readonly BUTTON_CAPABILLITIES;
8
+ /** @inheritDoc */
10
9
  buttonTopLeft: Button;
10
+ /** @inheritDoc */
11
11
  buttonMidLeft: Button;
12
+ /** @inheritDoc */
12
13
  buttonBotLeft: Button;
14
+ /** @inheritDoc */
13
15
  buttonTopRight: Button;
16
+ /** @inheritDoc */
14
17
  buttonMidRight: Button;
18
+ /** @inheritDoc */
15
19
  buttonBotRight: Button;
20
+ /**
21
+ * Not present for HM-IP-Taster
22
+ * @inheritDoc
23
+ */
16
24
  buttonBot: undefined;
25
+ /**
26
+ * Not present for HM-IP-Taster
27
+ * @inheritDoc
28
+ */
17
29
  buttonTop: undefined;
18
- get battery(): number;
30
+ private _battery;
31
+ private _lastBatteryPersist;
32
+ private _lastBatteryLevel;
33
+ private _batteryLevelCallbacks;
19
34
  constructor(pInfo: IoBrokerDeviceInfo);
35
+ get lastBatteryPersist(): number;
36
+ get battery(): number;
37
+ /** @inheritDoc */
38
+ addBatteryLevelCallback(pCallback: (action: BatteryLevelChangeAction) => void): void;
20
39
  persist(buttonName: string, pressType: ButtonPressType): void;
40
+ /** @inheritDoc */
21
41
  update(idSplit: string[], state: ioBroker.State, initial?: boolean): void;
22
42
  getButtonAssignment(): string;
23
43
  persistBatteryDevice(): void;
24
44
  pressButton(position: ButtonPosition, pressType: ButtonPressType): Error | null;
45
+ /**
46
+ * Checks whether the battery level did change and if so fires the callbacks
47
+ */
48
+ private checkForBatteryChange;
25
49
  }