hoffmation-base 3.0.0-alpha.8 → 3.0.0-alpha.81

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (540) 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/base64Image.d.ts +0 -1
  26. package/lib/models/blockAutomaticSettings.d.ts +23 -0
  27. package/lib/models/blockAutomaticSettings.js +19 -0
  28. package/lib/models/command/ShutterSetLevelCommand.d.ts +9 -1
  29. package/lib/models/command/ShutterSetLevelCommand.js +9 -1
  30. package/lib/models/command/WindowRestoreDesiredPositionCommand.d.ts +7 -1
  31. package/lib/models/command/WindowRestoreDesiredPositionCommand.js +7 -1
  32. package/lib/models/command/WindowSetDesiredPositionCommand.d.ts +11 -2
  33. package/lib/models/command/WindowSetDesiredPositionCommand.js +11 -2
  34. package/lib/models/command/WindowSetRolloByWeatherStatusCommand.d.ts +7 -1
  35. package/lib/models/command/WindowSetRolloByWeatherStatusCommand.js +7 -1
  36. package/lib/models/command/actuatorSetStateCommand.d.ts +18 -3
  37. package/lib/models/command/actuatorSetStateCommand.js +15 -6
  38. package/lib/models/command/actuatorToggleCommand.d.ts +7 -2
  39. package/lib/models/command/actuatorToggleCommand.js +7 -4
  40. package/lib/models/command/actuatorWriteStateToDeviceCommand.d.ts +8 -1
  41. package/lib/models/command/actuatorWriteStateToDeviceCommand.js +12 -1
  42. package/lib/models/command/baseCommand.d.ts +23 -2
  43. package/lib/models/command/baseCommand.js +41 -1
  44. package/lib/models/command/blockAutomaticCommand.d.ts +32 -0
  45. package/lib/models/command/blockAutomaticCommand.js +40 -0
  46. package/lib/models/command/blockAutomaticLiftBlockCommand.d.ts +18 -0
  47. package/lib/models/command/blockAutomaticLiftBlockCommand.js +23 -0
  48. package/lib/models/command/blockAutomaticUntilCommand.d.ts +27 -0
  49. package/lib/models/command/blockAutomaticUntilCommand.js +32 -0
  50. package/lib/models/command/commandSource.d.ts +19 -0
  51. package/lib/models/command/commandSource.js +20 -0
  52. package/lib/models/command/commandType.d.ts +11 -0
  53. package/lib/models/command/commandType.js +11 -0
  54. package/lib/models/command/dimmerSetLightCommand.d.ts +13 -8
  55. package/lib/models/command/dimmerSetLightCommand.js +20 -14
  56. package/lib/models/command/floorSetAllShuttersCommand.d.ts +6 -5
  57. package/lib/models/command/floorSetAllShuttersCommand.js +6 -5
  58. package/lib/models/command/index.d.ts +3 -0
  59. package/lib/models/command/index.js +7 -1
  60. package/lib/models/command/lampSetLightCommand.d.ts +13 -2
  61. package/lib/models/command/lampSetLightCommand.js +15 -4
  62. package/lib/models/command/lampSetTimeBasedCommand.d.ts +15 -8
  63. package/lib/models/command/lampSetTimeBasedCommand.js +9 -11
  64. package/lib/models/command/lampToggleLightCommand.d.ts +7 -6
  65. package/lib/models/command/lampToggleLightCommand.js +7 -6
  66. package/lib/models/command/ledSetLightCommand.d.ts +21 -11
  67. package/lib/models/command/ledSetLightCommand.js +27 -17
  68. package/lib/models/command/lightGroupSwitchTimeConditionalCommand.d.ts +8 -1
  69. package/lib/models/command/lightGroupSwitchTimeConditionalCommand.js +8 -1
  70. package/lib/models/command/restoreTargetAutomaticValueCommand.d.ts +7 -2
  71. package/lib/models/command/restoreTargetAutomaticValueCommand.js +7 -4
  72. package/lib/models/command/roomRestoreLightCommand.d.ts +7 -1
  73. package/lib/models/command/roomRestoreLightCommand.js +7 -1
  74. package/lib/models/command/roomRestoreShutterPositionCommand.d.ts +8 -1
  75. package/lib/models/command/roomRestoreShutterPositionCommand.js +8 -1
  76. package/lib/models/command/roomSetLightTimeBasedCommand.d.ts +5 -4
  77. package/lib/models/command/roomSetLightTimeBasedCommand.js +5 -4
  78. package/lib/models/command/shutterSunriseUpCommand.d.ts +7 -1
  79. package/lib/models/command/shutterSunriseUpCommand.js +7 -1
  80. package/lib/models/command/shutterSunsetDownCommand.d.ts +7 -1
  81. package/lib/models/command/shutterSunsetDownCommand.js +7 -1
  82. package/lib/models/command/wledSetLightCommand.d.ts +16 -2
  83. package/lib/models/command/wledSetLightCommand.js +23 -7
  84. package/lib/models/connectionCallbacks.d.ts +4 -4
  85. package/lib/models/connectionCallbacks.js +1 -0
  86. package/lib/models/deviceConfig.d.ts +3 -3
  87. package/lib/models/deviceSettings/acSettings.d.ts +23 -5
  88. package/lib/models/deviceSettings/acSettings.js +28 -8
  89. package/lib/models/deviceSettings/actuatorSettings.d.ts +13 -4
  90. package/lib/models/deviceSettings/actuatorSettings.js +19 -9
  91. package/lib/models/deviceSettings/cameraSettings.d.ts +12 -0
  92. package/lib/models/deviceSettings/cameraSettings.js +12 -0
  93. package/lib/models/deviceSettings/dachsSettings.d.ts +23 -0
  94. package/lib/models/deviceSettings/dachsSettings.js +29 -1
  95. package/lib/models/deviceSettings/deviceSettings.d.ts +10 -0
  96. package/lib/models/deviceSettings/deviceSettings.js +16 -0
  97. package/lib/models/deviceSettings/dimmerSettings.d.ts +20 -0
  98. package/lib/models/deviceSettings/dimmerSettings.js +20 -0
  99. package/lib/models/deviceSettings/garageDoorOpenerSettings.d.ts +0 -1
  100. package/lib/models/deviceSettings/garageDoorOpenerSettings.js +0 -1
  101. package/lib/models/deviceSettings/handleSettings.d.ts +9 -0
  102. package/lib/models/deviceSettings/handleSettings.js +9 -0
  103. package/lib/models/deviceSettings/heaterSettings.d.ts +21 -9
  104. package/lib/models/deviceSettings/heaterSettings.js +21 -9
  105. package/lib/models/deviceSettings/ledSettings.d.ts +66 -0
  106. package/lib/models/deviceSettings/ledSettings.js +76 -18
  107. package/lib/models/deviceSettings/motionSensorSettings.d.ts +5 -1
  108. package/lib/models/deviceSettings/motionSensorSettings.js +5 -1
  109. package/lib/models/deviceSettings/sceneSettings.d.ts +4 -0
  110. package/lib/models/deviceSettings/shutterSettings.d.ts +11 -3
  111. package/lib/models/deviceSettings/shutterSettings.js +11 -3
  112. package/lib/models/deviceSettings/sonosDeviceSettings.d.ts +4 -0
  113. package/lib/models/deviceSettings/sonosDeviceSettings.js +4 -0
  114. package/lib/models/deviceSettings/tvSettings.d.ts +4 -0
  115. package/lib/models/deviceSettings/victronDeviceSettings.d.ts +34 -0
  116. package/lib/models/deviceSettings/victronDeviceSettings.js +34 -0
  117. package/lib/models/deviceSettings/wledSettings.d.ts +48 -0
  118. package/lib/models/deviceSettings/wledSettings.js +37 -13
  119. package/lib/models/groupSettings/heatGroupSettings.d.ts +12 -1
  120. package/lib/models/groupSettings/heatGroupSettings.js +12 -1
  121. package/lib/models/iIdHolder.d.ts +18 -0
  122. package/lib/models/index.d.ts +2 -1
  123. package/lib/models/index.js +4 -1
  124. package/lib/models/objectSettings.d.ts +5 -2
  125. package/lib/models/objectSettings.js +2 -2
  126. package/lib/models/persistence/EnergyCalculation.d.ts +27 -0
  127. package/lib/models/persistence/EnergyCalculation.js +30 -4
  128. package/lib/models/persistence/index.d.ts +0 -2
  129. package/lib/models/persistence/index.js +0 -2
  130. package/lib/models/rooms/RoomBase.d.ts +12 -1
  131. package/lib/models/rooms/RoomBase.js +17 -8
  132. package/lib/models/rooms/RoomSettings/RoomInitializationSettings.d.ts +2 -1
  133. package/lib/models/rooms/RoomSettings/RoomInitializationSettings.js +2 -2
  134. package/lib/models/rooms/RoomSettings/RoomSettingsController.d.ts +10 -1
  135. package/lib/models/rooms/RoomSettings/RoomSettingsController.js +2 -2
  136. package/lib/models/rooms/RoomSettings/iRoomDefaultSettings.d.ts +53 -3
  137. package/lib/models/rooms/RoomSettings/iRoomInitializationSettings.d.ts +10 -1
  138. package/lib/models/rooms/RoomSettings/roomDeviceAddingSettings.d.ts +4 -1
  139. package/lib/models/rooms/RoomSettings/roomDeviceAddingSettings.js +3 -0
  140. package/lib/models/rooms/RoomSettings/roomSettings.d.ts +55 -0
  141. package/lib/models/rooms/RoomSettings/roomSettings.js +55 -0
  142. package/lib/models/rooms/iRoomBase.d.ts +39 -0
  143. package/lib/models/rooms/iRoomImportEnforcer.d.ts +8 -0
  144. package/lib/models/timeCallback.d.ts +7 -0
  145. package/lib/models/timeCallback.js +16 -6
  146. package/lib/server/config/heatingMode.d.ts +2 -1
  147. package/lib/server/config/heatingMode.js +2 -1
  148. package/lib/server/config/iAsusConfig.d.ts +15 -0
  149. package/lib/server/config/iBlockAutomaticHandlerDefaults.d.ts +23 -0
  150. package/lib/server/config/iBlueIrisSettings.d.ts +14 -0
  151. package/lib/server/config/iBluetoothTrackingSettings.d.ts +9 -0
  152. package/lib/server/config/iConfig.d.ts +94 -6
  153. package/lib/server/config/iDachsSettings.d.ts +16 -0
  154. package/lib/server/config/iDaikinSettings.d.ts +17 -0
  155. package/lib/server/config/iEnergyManagerSettings.d.ts +13 -0
  156. package/lib/server/config/iEspresenseSettings.d.ts +10 -0
  157. package/lib/server/config/iGoveeSettings.d.ts +9 -0
  158. package/lib/server/config/iGoveeSettings.js +2 -0
  159. package/lib/server/config/iHeaterSettings.d.ts +8 -0
  160. package/lib/server/config/iIobrokerSettigns.d.ts +8 -0
  161. package/lib/server/config/iLogSettings.d.ts +40 -1
  162. package/lib/server/config/iMp3Settings.d.ts +10 -0
  163. package/lib/server/config/iMuellSettings.d.ts +7 -0
  164. package/lib/server/config/iNewsSettings.d.ts +13 -0
  165. package/lib/server/config/iPersistenceSettings.d.ts +10 -0
  166. package/lib/server/config/iPollySettings.d.ts +22 -0
  167. package/lib/server/config/iRestSettings.d.ts +10 -0
  168. package/lib/server/config/iSonosSettings.d.ts +14 -0
  169. package/lib/server/config/iTelegramSettings.d.ts +17 -0
  170. package/lib/server/config/iTibberSettings.d.ts +10 -0
  171. package/lib/server/config/iTimePair.d.ts +9 -0
  172. package/lib/server/config/iTimeSettings.d.ts +9 -0
  173. package/lib/server/config/iTranslationSettings.d.ts +10 -0
  174. package/lib/server/config/iUnifiConnectionOptions.d.ts +31 -0
  175. package/lib/server/config/iUnifiSettings.d.ts +8 -0
  176. package/lib/server/config/iVictronSettings.d.ts +14 -0
  177. package/lib/server/config/iWeatherSettings.d.ts +13 -0
  178. package/lib/server/config/index.d.ts +2 -0
  179. package/lib/server/devices/DeviceCapability.d.ts +1 -0
  180. package/lib/server/devices/DeviceCapability.js +1 -0
  181. package/lib/server/devices/DeviceInfo.d.ts +9 -0
  182. package/lib/server/devices/DeviceInfo.js +6 -0
  183. package/lib/server/devices/Griffe.js +1 -2
  184. package/lib/server/devices/Heizgruppen.js +2 -2
  185. package/lib/server/devices/IoBrokerBaseDevice.d.ts +34 -18
  186. package/lib/server/devices/IoBrokerBaseDevice.js +37 -21
  187. package/lib/server/devices/IoBrokerDeviceInfo.d.ts +8 -6
  188. package/lib/server/devices/IoBrokerDeviceInfo.js +50 -46
  189. package/lib/server/devices/baseDeviceInterfaces/iAcDevice.d.ts +41 -3
  190. package/lib/server/devices/baseDeviceInterfaces/iActuator.d.ts +18 -0
  191. package/lib/server/devices/baseDeviceInterfaces/iBaseDevice.d.ts +26 -1
  192. package/lib/server/devices/baseDeviceInterfaces/iBatteryDevice.d.ts +21 -4
  193. package/lib/server/devices/baseDeviceInterfaces/iBluetoothDetector.d.ts +15 -7
  194. package/lib/server/devices/baseDeviceInterfaces/iButtonSwitch.d.ts +42 -0
  195. package/lib/server/devices/baseDeviceInterfaces/iCameraDevice.d.ts +46 -3
  196. package/lib/server/devices/baseDeviceInterfaces/iDimmableLamp.d.ts +17 -2
  197. package/lib/server/devices/baseDeviceInterfaces/iEnergyManager.d.ts +36 -2
  198. package/lib/server/devices/baseDeviceInterfaces/iExcessEnergyConsumer.d.ts +30 -2
  199. package/lib/server/devices/baseDeviceInterfaces/iGarageDoorOpener.d.ts +21 -0
  200. package/lib/server/devices/baseDeviceInterfaces/iHandleSensor.d.ts +24 -0
  201. package/lib/server/devices/baseDeviceInterfaces/iHeater.d.ts +40 -5
  202. package/lib/server/devices/baseDeviceInterfaces/iHumiditySensor.d.ts +21 -2
  203. package/lib/server/devices/baseDeviceInterfaces/iIlluminationSensor.d.ts +11 -0
  204. package/lib/server/devices/baseDeviceInterfaces/iLamp.d.ts +7 -2
  205. package/lib/server/devices/baseDeviceInterfaces/iLedRgbCct.d.ts +20 -0
  206. package/lib/server/devices/baseDeviceInterfaces/iLoadMeter.d.ts +5 -0
  207. package/lib/server/devices/baseDeviceInterfaces/iMagnetSensor.d.ts +31 -0
  208. package/lib/server/devices/baseDeviceInterfaces/iMagnetSensor.js +2 -0
  209. package/lib/server/devices/baseDeviceInterfaces/iMotionSensor.d.ts +23 -3
  210. package/lib/server/devices/baseDeviceInterfaces/iRoomDevice.d.ts +6 -0
  211. package/lib/server/devices/baseDeviceInterfaces/iScene.d.ts +31 -2
  212. package/lib/server/devices/baseDeviceInterfaces/iShutter.d.ts +25 -1
  213. package/lib/server/devices/baseDeviceInterfaces/iSmokeDetectorDevice.d.ts +12 -0
  214. package/lib/server/devices/baseDeviceInterfaces/iSpeaker.d.ts +30 -0
  215. package/lib/server/devices/baseDeviceInterfaces/iTemperatureSensor.d.ts +32 -3
  216. package/lib/server/devices/baseDeviceInterfaces/iTemporaryDisableAutomatic.d.ts +13 -0
  217. package/lib/server/devices/baseDeviceInterfaces/iTvDevice.d.ts +20 -0
  218. package/lib/server/devices/baseDeviceInterfaces/iVibrationSensor.d.ts +24 -5
  219. package/lib/server/devices/baseDeviceInterfaces/index.d.ts +1 -0
  220. package/lib/server/devices/blueIris/cameraDevice.d.ts +49 -34
  221. package/lib/server/devices/blueIris/cameraDevice.js +75 -75
  222. package/lib/server/devices/button/button.d.ts +0 -1
  223. package/lib/server/devices/button/button.js +0 -4
  224. package/lib/server/devices/button/buttonCallback.d.ts +5 -0
  225. package/lib/server/devices/button/buttonCallback.js +10 -0
  226. package/lib/server/devices/button/buttonCapabilities.d.ts +12 -0
  227. package/lib/server/devices/button/buttonCapabilities.js +12 -0
  228. package/lib/server/devices/button/index.d.ts +1 -0
  229. package/lib/server/devices/button/index.js +3 -0
  230. package/lib/server/devices/dachs/dachs.d.ts +46 -11
  231. package/lib/server/devices/dachs/dachs.js +113 -23
  232. package/lib/server/devices/dachs/dachsTemperatureSensor.d.ts +22 -4
  233. package/lib/server/devices/dachs/dachsTemperatureSensor.js +23 -5
  234. package/lib/server/devices/dachs/interfaces/DachsClientOptions.d.ts +30 -0
  235. package/lib/server/devices/dachs/interfaces/KeyListEntity.d.ts +0 -8
  236. package/lib/server/devices/dachs/interfaces/KeyListEntity.js +0 -8
  237. package/lib/server/devices/dachs/interfaces/dachsInfluxDataPoint.d.ts +12 -0
  238. package/lib/server/devices/dachs/interfaces/influxDbConnectionOptions.d.ts +21 -1
  239. package/lib/server/devices/dachs/lib/dachsHttpClient.d.ts +5 -2
  240. package/lib/server/devices/dachs/lib/dachsHttpClient.js +5 -4
  241. package/lib/server/devices/device-cluster.d.ts +4 -1
  242. package/lib/server/devices/device-cluster.js +9 -4
  243. package/lib/server/devices/deviceType.d.ts +5 -0
  244. package/lib/server/devices/deviceType.js +5 -0
  245. package/lib/server/devices/deviceUpdater.d.ts +0 -3
  246. package/lib/server/devices/deviceUpdater.js +26 -4
  247. package/lib/server/devices/devices.d.ts +53 -7
  248. package/lib/server/devices/devices.js +78 -17
  249. package/lib/server/devices/espresense/detectedBluetoothDevice.d.ts +13 -0
  250. package/lib/server/devices/espresense/detectedBluetoothDevice.js +14 -1
  251. package/lib/server/devices/espresense/espresenseDevice.d.ts +31 -1
  252. package/lib/server/devices/espresense/espresenseDevice.js +28 -4
  253. package/lib/server/devices/espresense/trackedDistanceData.d.ts +12 -0
  254. package/lib/server/devices/espresense/trackedDistanceData.js +3 -0
  255. package/lib/server/devices/espresense/trilateration.d.ts +7 -0
  256. package/lib/server/devices/espresense/trilateration.js +7 -0
  257. package/lib/server/devices/espresense/trilaterationBasePoint.d.ts +6 -0
  258. package/lib/server/devices/espresense/trilaterationBasePoint.js +3 -0
  259. package/lib/server/devices/espresense/trilaterationPoint.d.ts +1 -1
  260. package/lib/server/devices/espresense/trilaterationPoint.js +3 -1
  261. package/lib/server/devices/groups/Window.d.ts +14 -3
  262. package/lib/server/devices/groups/Window.js +28 -11
  263. package/lib/server/devices/groups/base-group.d.ts +4 -0
  264. package/lib/server/devices/groups/base-group.js +3 -0
  265. package/lib/server/devices/groups/heatGroup.d.ts +8 -6
  266. package/lib/server/devices/groups/heatGroup.js +11 -11
  267. package/lib/server/devices/groups/lightGroup.d.ts +10 -2
  268. package/lib/server/devices/groups/lightGroup.js +20 -39
  269. package/lib/server/devices/groups/presenceGroup.d.ts +17 -6
  270. package/lib/server/devices/groups/presenceGroup.js +73 -63
  271. package/lib/server/devices/groups/tasterGroup.js +6 -6
  272. package/lib/server/devices/groups/windowGroup.d.ts +16 -1
  273. package/lib/server/devices/groups/windowGroup.js +22 -7
  274. package/lib/server/devices/hmIPDevices/hmIpAccessPoint.d.ts +1 -0
  275. package/lib/server/devices/hmIPDevices/hmIpAccessPoint.js +1 -0
  276. package/lib/server/devices/hmIPDevices/hmIpBewegung.d.ts +9 -6
  277. package/lib/server/devices/hmIPDevices/hmIpBewegung.js +10 -11
  278. package/lib/server/devices/hmIPDevices/hmIpDevice.d.ts +1 -2
  279. package/lib/server/devices/hmIPDevices/hmIpDevice.js +2 -3
  280. package/lib/server/devices/hmIPDevices/hmIpGriff.d.ts +36 -5
  281. package/lib/server/devices/hmIPDevices/hmIpGriff.js +76 -33
  282. package/lib/server/devices/hmIPDevices/hmIpHeizgruppe.d.ts +25 -6
  283. package/lib/server/devices/hmIPDevices/hmIpHeizgruppe.js +27 -14
  284. package/lib/server/devices/hmIPDevices/hmIpHeizung.d.ts +13 -3
  285. package/lib/server/devices/hmIPDevices/hmIpHeizung.js +33 -12
  286. package/lib/server/devices/hmIPDevices/hmIpLampe.d.ts +7 -1
  287. package/lib/server/devices/hmIPDevices/hmIpLampe.js +11 -7
  288. package/lib/server/devices/hmIPDevices/hmIpPraezenz.d.ts +19 -9
  289. package/lib/server/devices/hmIPDevices/hmIpPraezenz.js +33 -11
  290. package/lib/server/devices/hmIPDevices/hmIpRoll.d.ts +4 -2
  291. package/lib/server/devices/hmIPDevices/hmIpRoll.js +25 -23
  292. package/lib/server/devices/hmIPDevices/hmIpTaster.d.ts +28 -4
  293. package/lib/server/devices/hmIPDevices/hmIpTaster.js +37 -8
  294. package/lib/server/devices/hmIPDevices/hmIpTherm.d.ts +11 -1
  295. package/lib/server/devices/hmIPDevices/hmIpTherm.js +26 -5
  296. package/lib/server/devices/hmIPDevices/hmIpTuer.d.ts +9 -1
  297. package/lib/server/devices/hmIPDevices/hmIpTuer.js +17 -4
  298. package/lib/server/devices/hmIPDevices/hmIpWippe.d.ts +27 -0
  299. package/lib/server/devices/hmIPDevices/hmIpWippe.js +3 -0
  300. package/lib/server/devices/iDeviceUpdater.d.ts +14 -0
  301. package/lib/server/devices/index.d.ts +8 -2
  302. package/lib/server/devices/index.js +11 -2
  303. package/lib/server/devices/jsObject/jsObjectEnergyManager.d.ts +5 -1
  304. package/lib/server/devices/jsObject/jsObjectEnergyManager.js +9 -3
  305. package/lib/server/devices/nameAmountValuePair.d.ts +5 -0
  306. package/lib/server/devices/nameAmountValuePair.js +10 -0
  307. package/lib/server/devices/scene/room-scene.d.ts +23 -7
  308. package/lib/server/devices/scene/room-scene.js +18 -4
  309. package/lib/server/devices/sharedFunctions/lampUtils.d.ts +11 -2
  310. package/lib/server/devices/sharedFunctions/lampUtils.js +79 -25
  311. package/lib/server/devices/shelly/index.d.ts +1 -0
  312. package/lib/server/devices/shelly/index.js +3 -1
  313. package/lib/server/devices/shelly/shellyActuator.d.ts +33 -0
  314. package/lib/server/devices/shelly/shellyActuator.js +84 -0
  315. package/lib/server/devices/shelly/shellyDevice.d.ts +2 -1
  316. package/lib/server/devices/shelly/shellyDevice.js +2 -1
  317. package/lib/server/devices/shelly/shellyTrv.d.ts +37 -18
  318. package/lib/server/devices/shelly/shellyTrv.js +66 -45
  319. package/lib/server/devices/smartGarden/index.d.ts +6 -0
  320. package/lib/server/devices/smartGarden/index.js +22 -0
  321. package/lib/server/devices/smartGarden/smartGardenDevice.d.ts +33 -0
  322. package/lib/server/devices/smartGarden/smartGardenDevice.js +98 -0
  323. package/lib/server/devices/smartGarden/smartGardenDeviceRegistrationInfo.d.ts +9 -0
  324. package/lib/server/devices/smartGarden/smartGardenDeviceRegistrationInfo.js +13 -0
  325. package/lib/server/devices/smartGarden/smartGardenMower.d.ts +35 -0
  326. package/lib/server/devices/smartGarden/smartGardenMower.js +107 -0
  327. package/lib/server/devices/smartGarden/smartGardenSensor.d.ts +42 -0
  328. package/lib/server/devices/smartGarden/smartGardenSensor.js +119 -0
  329. package/lib/server/devices/smartGarden/smartGardenService.d.ts +7 -0
  330. package/lib/server/devices/smartGarden/smartGardenService.js +52 -0
  331. package/lib/server/devices/smartGarden/smartGardenValve.d.ts +36 -0
  332. package/lib/server/devices/smartGarden/smartGardenValve.js +105 -0
  333. package/lib/server/devices/tuya/tuyaDevice.d.ts +2 -1
  334. package/lib/server/devices/tuya/tuyaDevice.js +2 -1
  335. package/lib/server/devices/tuya/tuyaGarageOpener.d.ts +3 -0
  336. package/lib/server/devices/tuya/tuyaGarageOpener.js +3 -0
  337. package/lib/server/devices/tv/samsungTv.d.ts +1 -0
  338. package/lib/server/devices/tv/samsungTv.js +1 -0
  339. package/lib/server/devices/tv/tvDevice.d.ts +7 -1
  340. package/lib/server/devices/tv/tvDevice.js +4 -3
  341. package/lib/server/devices/velux/index.d.ts +4 -0
  342. package/lib/server/devices/velux/index.js +11 -0
  343. package/lib/server/devices/velux/veluxDevice.d.ts +13 -0
  344. package/lib/server/devices/velux/veluxDevice.js +43 -0
  345. package/lib/server/devices/velux/veluxDeviceRegistrationInfo.d.ts +9 -0
  346. package/lib/server/devices/velux/veluxDeviceRegistrationInfo.js +13 -0
  347. package/lib/server/devices/velux/veluxService.d.ts +7 -0
  348. package/lib/server/devices/velux/veluxService.js +44 -0
  349. package/lib/server/devices/velux/veluxShutter.d.ts +27 -0
  350. package/lib/server/devices/velux/veluxShutter.js +122 -0
  351. package/lib/server/devices/wledDevice.d.ts +15 -3
  352. package/lib/server/devices/wledDevice.js +42 -16
  353. package/lib/server/devices/zigbee/BaseDevices/ZigbeeActuator.d.ts +17 -4
  354. package/lib/server/devices/zigbee/BaseDevices/ZigbeeActuator.js +30 -15
  355. package/lib/server/devices/zigbee/BaseDevices/index.d.ts +1 -0
  356. package/lib/server/devices/zigbee/BaseDevices/index.js +3 -0
  357. package/lib/server/devices/zigbee/BaseDevices/zigbeeDevice.d.ts +4 -5
  358. package/lib/server/devices/zigbee/BaseDevices/zigbeeDevice.js +8 -17
  359. package/lib/server/devices/zigbee/BaseDevices/zigbeeDimmer.d.ts +10 -25
  360. package/lib/server/devices/zigbee/BaseDevices/zigbeeDimmer.js +25 -60
  361. package/lib/server/devices/zigbee/BaseDevices/zigbeeHeater.d.ts +34 -14
  362. package/lib/server/devices/zigbee/BaseDevices/zigbeeHeater.js +60 -34
  363. package/lib/server/devices/zigbee/BaseDevices/zigbeeLamp.d.ts +16 -0
  364. package/lib/server/devices/zigbee/BaseDevices/zigbeeLamp.js +35 -0
  365. package/lib/server/devices/zigbee/BaseDevices/zigbeeLedRGBCCT.d.ts +7 -7
  366. package/lib/server/devices/zigbee/BaseDevices/zigbeeLedRGBCCT.js +14 -14
  367. package/lib/server/devices/zigbee/BaseDevices/zigbeeMagnetContact.d.ts +26 -7
  368. package/lib/server/devices/zigbee/BaseDevices/zigbeeMagnetContact.js +52 -22
  369. package/lib/server/devices/zigbee/BaseDevices/zigbeeMotionSensor.d.ts +30 -15
  370. package/lib/server/devices/zigbee/BaseDevices/zigbeeMotionSensor.js +62 -38
  371. package/lib/server/devices/zigbee/BaseDevices/zigbeeShutter.d.ts +12 -4
  372. package/lib/server/devices/zigbee/BaseDevices/zigbeeShutter.js +28 -19
  373. package/lib/server/devices/zigbee/BaseDevices/zigbeeSwitch.d.ts +9 -1
  374. package/lib/server/devices/zigbee/BaseDevices/zigbeeSwitch.js +8 -1
  375. package/lib/server/devices/zigbee/zigbeeAqaraMagnetContact.d.ts +1 -0
  376. package/lib/server/devices/zigbee/zigbeeAqaraMagnetContact.js +1 -0
  377. package/lib/server/devices/zigbee/zigbeeAqaraOpple3Switch.d.ts +16 -0
  378. package/lib/server/devices/zigbee/zigbeeAqaraOpple3Switch.js +16 -0
  379. package/lib/server/devices/zigbee/zigbeeAquaraMotion.d.ts +6 -0
  380. package/lib/server/devices/zigbee/zigbeeAquaraMotion.js +7 -3
  381. package/lib/server/devices/zigbee/zigbeeAquaraVibra.d.ts +58 -11
  382. package/lib/server/devices/zigbee/zigbeeAquaraVibra.js +115 -27
  383. package/lib/server/devices/zigbee/zigbeeAquaraWater.d.ts +28 -9
  384. package/lib/server/devices/zigbee/zigbeeAquaraWater.js +54 -30
  385. package/lib/server/devices/zigbee/zigbeeBlitzShp.d.ts +15 -5
  386. package/lib/server/devices/zigbee/zigbeeBlitzShp.js +22 -14
  387. package/lib/server/devices/zigbee/zigbeeEuroHeater.d.ts +10 -4
  388. package/lib/server/devices/zigbee/zigbeeEuroHeater.js +16 -10
  389. package/lib/server/devices/zigbee/zigbeeHeimanSmoke.d.ts +34 -8
  390. package/lib/server/devices/zigbee/zigbeeHeimanSmoke.js +58 -20
  391. package/lib/server/devices/zigbee/zigbeeIkeaShutter.d.ts +1 -0
  392. package/lib/server/devices/zigbee/zigbeeIkeaShutter.js +2 -1
  393. package/lib/server/devices/zigbee/zigbeeIkeaSteckdose.d.ts +2 -0
  394. package/lib/server/devices/zigbee/zigbeeIkeaSteckdose.js +3 -1
  395. package/lib/server/devices/zigbee/zigbeeIlluActuator.d.ts +1 -2
  396. package/lib/server/devices/zigbee/zigbeeIlluActuator.js +2 -11
  397. package/lib/server/devices/zigbee/zigbeeIlluDimmer.d.ts +1 -1
  398. package/lib/server/devices/zigbee/zigbeeIlluDimmer.js +1 -1
  399. package/lib/server/devices/zigbee/zigbeeIlluLampe.d.ts +3 -10
  400. package/lib/server/devices/zigbee/zigbeeIlluLampe.js +3 -32
  401. package/lib/server/devices/zigbee/zigbeeIlluLedRGBCCT.d.ts +1 -1
  402. package/lib/server/devices/zigbee/zigbeeIlluLedRGBCCT.js +1 -1
  403. package/lib/server/devices/zigbee/zigbeeIlluShutter.d.ts +1 -0
  404. package/lib/server/devices/zigbee/zigbeeIlluShutter.js +5 -4
  405. package/lib/server/devices/zigbee/zigbeeInnr142C.d.ts +1 -1
  406. package/lib/server/devices/zigbee/zigbeeInnr142C.js +1 -1
  407. package/lib/server/devices/zigbee/zigbeeLinkindLedRgbCct.d.ts +1 -1
  408. package/lib/server/devices/zigbee/zigbeeLinkindLedRgbCct.js +1 -1
  409. package/lib/server/devices/zigbee/zigbeeOsramDimmer.d.ts +1 -1
  410. package/lib/server/devices/zigbee/zigbeeOsramDimmer.js +1 -1
  411. package/lib/server/devices/zigbee/zigbeeSMaBiTMagnetContact.d.ts +1 -0
  412. package/lib/server/devices/zigbee/zigbeeSMaBiTMagnetContact.js +1 -0
  413. package/lib/server/devices/zigbee/zigbeeSonoffMotion.d.ts +1 -0
  414. package/lib/server/devices/zigbee/zigbeeSonoffMotion.js +1 -0
  415. package/lib/server/devices/zigbee/zigbeeSonoffTemp.d.ts +34 -9
  416. package/lib/server/devices/zigbee/zigbeeSonoffTemp.js +50 -13
  417. package/lib/server/devices/zigbee/zigbeeTuyaValve.d.ts +10 -3
  418. package/lib/server/devices/zigbee/zigbeeTuyaValve.js +11 -6
  419. package/lib/server/devices/zigbee/zigbeeUbisysActuator.d.ts +9 -2
  420. package/lib/server/devices/zigbee/zigbeeUbisysActuator.js +10 -8
  421. package/lib/server/devices/zigbee/zigbeeUbisysLampe.d.ts +8 -9
  422. package/lib/server/devices/zigbee/zigbeeUbisysLampe.js +14 -24
  423. package/lib/server/devices/zigbee/zigbeeUbisysShutter.d.ts +1 -0
  424. package/lib/server/devices/zigbee/zigbeeUbisysShutter.js +2 -1
  425. package/lib/server/ioBroker/connection.d.ts +21 -22
  426. package/lib/server/ioBroker/connection.js +37 -28
  427. package/lib/server/ioBroker/ioBroker.main.d.ts +3 -0
  428. package/lib/server/ioBroker/ioBroker.main.js +12 -5
  429. package/lib/server/ioBroker/iobrokerConnectionLogging.d.ts +3 -0
  430. package/lib/server/ioBroker/iobrokerConnectionLogging.js +4 -0
  431. package/lib/server/ioBroker/socketIOConnectOptions.d.ts +2 -2
  432. package/lib/server/ioBroker/socketIOConnectOptions.js +1 -0
  433. package/lib/server/ioBroker/socketIOVisCommand.d.ts +5 -1
  434. package/lib/server/ioBroker/socketIOVisCommand.js +1 -0
  435. package/lib/server/services/ShutterService.js +7 -6
  436. package/lib/server/services/Sonos/OwnSonosDevices.d.ts +3 -0
  437. package/lib/server/services/Sonos/OwnSonosDevices.js +3 -0
  438. package/lib/server/services/Sonos/mp3-server.d.ts +3 -1
  439. package/lib/server/services/Sonos/mp3-server.js +3 -1
  440. package/lib/server/services/Sonos/own-sonos-device.d.ts +4 -1
  441. package/lib/server/services/Sonos/own-sonos-device.js +4 -4
  442. package/lib/server/services/Sonos/polly-service.d.ts +7 -1
  443. package/lib/server/services/Sonos/polly-service.js +10 -8
  444. package/lib/server/services/Sonos/sonos-service.d.ts +1 -5
  445. package/lib/server/services/Sonos/sonos-service.js +18 -17
  446. package/lib/server/services/Telegram/telegram-Commands.js +5 -5
  447. package/lib/server/services/Telegram/telegram-service.d.ts +2 -1
  448. package/lib/server/services/Telegram/telegram-service.js +8 -3
  449. package/lib/server/services/Translation/IRessourceObject.d.ts +13 -0
  450. package/lib/server/services/Translation/IRessourceObject.js +2 -0
  451. package/lib/server/services/Translation/iRessources.d.ts +1 -4
  452. package/lib/server/services/Translation/index.d.ts +1 -0
  453. package/lib/server/services/Translation/res.d.ts +34 -19
  454. package/lib/server/services/Translation/res.js +34 -19
  455. package/lib/server/services/ac/ac-device.d.ts +50 -9
  456. package/lib/server/services/ac/ac-device.js +115 -41
  457. package/lib/server/services/ac/daikin-service.js +4 -3
  458. package/lib/server/services/ac/own-ac-devices.d.ts +3 -0
  459. package/lib/server/services/ac/own-ac-devices.js +3 -0
  460. package/lib/server/services/ac/own-daikin-device.d.ts +25 -0
  461. package/lib/server/services/ac/own-daikin-device.js +40 -7
  462. package/lib/server/services/api/api-service.d.ts +118 -53
  463. package/lib/server/services/api/api-service.js +170 -80
  464. package/lib/server/services/blockAutomaticHandler.d.ts +13 -8
  465. package/lib/server/services/blockAutomaticHandler.js +34 -15
  466. package/lib/server/services/calendar/index.d.ts +1 -0
  467. package/lib/server/services/calendar/index.js +3 -0
  468. package/lib/server/services/calendar/muell-tonne.d.ts +11 -1
  469. package/lib/server/services/calendar/muell-tonne.js +10 -0
  470. package/lib/server/services/calendar/m/303/274ll-service.d.ts +23 -8
  471. package/lib/server/services/calendar/m/303/274ll-service.js +11 -5
  472. package/lib/server/services/calendar/name-date-pair.d.ts +5 -0
  473. package/lib/server/services/calendar/name-date-pair.js +10 -0
  474. package/lib/server/services/dbo/iPersist.d.ts +103 -0
  475. package/lib/server/services/dbo/postgreSqlPersist.d.ts +23 -0
  476. package/lib/server/services/dbo/postgreSqlPersist.js +28 -5
  477. package/lib/server/services/file-info.d.ts +5 -0
  478. package/lib/server/services/file-info.js +10 -0
  479. package/lib/server/services/govee/govee-device-data.d.ts +25 -0
  480. package/lib/server/services/govee/govee-device-data.js +2 -0
  481. package/lib/server/services/govee/govee-service.d.ts +7 -9
  482. package/lib/server/services/govee/govee-service.js +73 -48
  483. package/lib/server/services/govee/own-govee-device.d.ts +19 -17
  484. package/lib/server/services/govee/own-govee-device.js +58 -58
  485. package/lib/server/services/govee/own-govee-devices.d.ts +3 -0
  486. package/lib/server/services/govee/own-govee-devices.js +3 -0
  487. package/lib/server/services/https-service.d.ts +3 -2
  488. package/lib/server/services/https-service.js +4 -3
  489. package/lib/server/services/index.d.ts +1 -0
  490. package/lib/server/services/index.js +3 -0
  491. package/lib/server/services/log-service/index.d.ts +1 -0
  492. package/lib/server/services/log-service/index.js +3 -0
  493. package/lib/server/services/log-service/log-debug-type.d.ts +13 -0
  494. package/lib/server/services/log-service/log-debug-type.js +17 -0
  495. package/lib/server/services/log-service/log-filter-data.d.ts +21 -12
  496. package/lib/server/services/log-service/log-filter-data.js +6 -15
  497. package/lib/server/services/log-service/log-service.d.ts +17 -4
  498. package/lib/server/services/log-service/log-service.js +30 -17
  499. package/lib/server/services/news-service.d.ts +9 -7
  500. package/lib/server/services/news-service.js +14 -15
  501. package/lib/server/services/room-service/room-service.d.ts +20 -4
  502. package/lib/server/services/room-service/room-service.js +26 -10
  503. package/lib/server/services/settings-service.d.ts +6 -2
  504. package/lib/server/services/settings-service.js +3 -2
  505. package/lib/server/services/time-callback-service.js +1 -1
  506. package/lib/server/services/utils/RGB.d.ts +6 -0
  507. package/lib/server/services/utils/RGB.js +11 -0
  508. package/lib/server/services/utils/catchEmResult.d.ts +5 -0
  509. package/lib/server/services/utils/catchEmResult.js +10 -0
  510. package/lib/server/services/utils/energy-consumer-state-change.d.ts +6 -0
  511. package/lib/server/services/utils/energy-consumer-state-change.js +10 -0
  512. package/lib/server/services/utils/energy-manager-utils.d.ts +3 -14
  513. package/lib/server/services/utils/energy-manager-utils.js +2 -2
  514. package/lib/server/services/utils/iDisposeable.d.ts +6 -0
  515. package/lib/server/services/utils/index.d.ts +4 -1
  516. package/lib/server/services/utils/index.js +8 -1
  517. package/lib/server/services/utils/{ringstorage.d.ts → ringStorage.d.ts} +1 -1
  518. package/lib/server/services/utils/{ringstorage.js → ringStorage.js} +3 -3
  519. package/lib/server/services/utils/utils.d.ts +9 -14
  520. package/lib/server/services/victron/victron-device.d.ts +27 -10
  521. package/lib/server/services/victron/victron-device.js +94 -25
  522. package/lib/server/services/weather/index.d.ts +2 -0
  523. package/lib/server/services/weather/index.js +3 -0
  524. package/lib/server/services/weather/rain-next-minutes-info.d.ts +5 -0
  525. package/lib/server/services/weather/rain-next-minutes-info.js +10 -0
  526. package/lib/server/services/weather/weather-current.d.ts +0 -2
  527. package/lib/server/services/weather/weather-feelsLike.d.ts +15 -0
  528. package/lib/server/services/weather/weather-response.d.ts +16 -0
  529. package/lib/server/services/weather/weather-response.js +2 -0
  530. package/lib/server/services/weather/weather-service.d.ts +16 -18
  531. package/lib/server/services/weather/weather-service.js +37 -22
  532. package/lib/server/services/weather/weather-temp.d.ts +21 -0
  533. package/lib/tsconfig.tsbuildinfo +1 -1
  534. package/package.json +27 -29
  535. package/lib/models/iTemperaturDataPoint.d.ts +0 -9
  536. package/lib/models/persistence/RoomDetailInfo.d.ts +0 -6
  537. package/lib/models/persistence/RoomDetailInfo.js +0 -11
  538. package/lib/models/persistence/temperaturDataPoint.d.ts +0 -10
  539. package/lib/models/persistence/temperaturDataPoint.js +0 -14
  540. /package/lib/{models/iTemperaturDataPoint.js → server/config/iBlockAutomaticHandlerDefaults.js} +0 -0
@@ -3,50 +3,28 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.ZigbeeDimmer = void 0;
4
4
  const models_1 = require("../../../../models");
5
5
  const services_1 = require("../../../services");
6
- const index_1 = require("./index");
7
6
  const DeviceCapability_1 = require("../../DeviceCapability");
8
- const blockAutomaticHandler_1 = require("../../../services/blockAutomaticHandler");
9
7
  const sharedFunctions_1 = require("../../sharedFunctions");
10
- class ZigbeeDimmer extends index_1.ZigbeeDevice {
8
+ const zigbeeLamp_1 = require("./zigbeeLamp");
9
+ class ZigbeeDimmer extends zigbeeLamp_1.ZigbeeLamp {
11
10
  constructor(pInfo, deviceType) {
12
11
  super(pInfo, deviceType);
13
- this.queuedValue = null;
12
+ /** @inheritDoc */
14
13
  this.settings = new models_1.DimmerSettings();
15
- this.targetAutomaticState = false;
16
- this._lastPersist = 0;
17
14
  this._brightness = 0;
18
- this._lightOn = false;
19
15
  this._transitionTime = 0;
20
- this.deviceCapabilities.push(DeviceCapability_1.DeviceCapability.lamp);
21
16
  this.deviceCapabilities.push(DeviceCapability_1.DeviceCapability.dimmablelamp);
22
- this.deviceCapabilities.push(DeviceCapability_1.DeviceCapability.blockAutomatic);
23
- this.blockAutomationHandler = new blockAutomaticHandler_1.BlockAutomaticHandler(this.restoreTargetAutomaticValue.bind(this));
24
17
  }
18
+ /** @inheritDoc */
25
19
  get brightness() {
26
20
  return this._brightness;
27
21
  }
28
- get lightOn() {
29
- return this._lightOn;
30
- }
31
- get transitionTime() {
32
- return this._transitionTime;
33
- }
34
- get actuatorOn() {
35
- return this.lightOn;
36
- }
37
- restoreTargetAutomaticValue(c) {
38
- this.setActuator(new models_1.ActuatorSetStateCommand(c, this.targetAutomaticState, 'Restore targetAutomaticState due to BlockAutomaticHandler'));
39
- }
22
+ /** @inheritDoc */
40
23
  update(idSplit, state, initial = false) {
41
24
  this.queuedValue = null;
42
25
  this.log(models_1.LogLevel.DeepTrace, `Dimmer Update: ID: ${idSplit.join('.')} JSON: ${JSON.stringify(state)}`);
43
26
  super.update(idSplit, state, initial, true);
44
27
  switch (idSplit[3]) {
45
- case this._stateNameState:
46
- this.log(models_1.LogLevel.Trace, `Dimmer Update für ${this.info.customName} auf ${state.val}`);
47
- this._lightOn = state.val;
48
- this.persist();
49
- break;
50
28
  case this._stateNameBrightness:
51
29
  this.log(models_1.LogLevel.Trace, `Dimmer Helligkeit Update für ${this.info.customName} auf ${state.val}`);
52
30
  this._brightness = state.val;
@@ -58,42 +36,45 @@ class ZigbeeDimmer extends index_1.ZigbeeDevice {
58
36
  break;
59
37
  }
60
38
  }
39
+ /** @inheritDoc */
61
40
  setTimeBased(c) {
62
41
  this.setLight(models_1.DimmerSetLightCommand.byTimeBased(this.settings, c));
63
42
  }
64
- setActuator(c) {
65
- this.setLight(new models_1.DimmerSetLightCommand(c, c.on, '', c.timeout));
66
- }
67
- toggleActuator(c) {
68
- const setActuatorCommand = models_1.ActuatorSetStateCommand.byActuatorAndToggleCommand(this, c);
69
- this.setActuator(setActuatorCommand);
70
- return setActuatorCommand.on;
71
- }
72
- /**
73
- * @inheritDoc
74
- */
43
+ /** @inheritDoc */
75
44
  setLight(c) {
76
45
  var _a;
77
- if (this._stateIdState === '') {
78
- this.log(models_1.LogLevel.Error, `Keine State ID bekannt.`);
46
+ if (this._actuatorOnStateIdState === '') {
47
+ this.log(models_1.LogLevel.Error, 'Keine State ID bekannt.');
79
48
  return;
80
49
  }
81
50
  if (!this.ioConn) {
82
- this.log(models_1.LogLevel.Error, `Keine Connection bekannt.`);
51
+ this.log(models_1.LogLevel.Error, 'Keine Connection bekannt.');
83
52
  return;
84
53
  }
85
54
  const dontBlock = sharedFunctions_1.LampUtils.checkUnBlock(this, c);
86
55
  if (sharedFunctions_1.LampUtils.checkBlockActive(this, c)) {
87
56
  return;
88
57
  }
58
+ if (c.isAutomaticAction) {
59
+ // Preserve the target state for the automatic handler, as
60
+ this.targetAutomaticState = c.on;
61
+ }
62
+ if (sharedFunctions_1.LampUtils.canDimmerChangeBeSkipped(this, c)) {
63
+ return;
64
+ }
89
65
  if (c.transitionTime > -1) {
90
66
  this.setState(this._stateIdTransitionTime, c.transitionTime);
91
67
  }
92
68
  if (c.on && c.brightness <= 0 && this.brightness < 10) {
93
69
  c.brightness = 10;
94
70
  }
95
- if (c.timeout > -1 && !dontBlock) {
96
- this.blockAutomationHandler.disableAutomatic(c.timeout, models_1.CollisionSolving.overrideIfGreater);
71
+ if (!dontBlock && c.disableAutomaticCommand !== null) {
72
+ if (c.disableAutomaticCommand === undefined && c.isForceAction) {
73
+ c.disableAutomaticCommand = models_1.BlockAutomaticCommand.fromDeviceSettings(c, this.settings);
74
+ }
75
+ if (c.disableAutomaticCommand) {
76
+ this.blockAutomationHandler.disableAutomatic(c.disableAutomaticCommand);
77
+ }
97
78
  }
98
79
  if (((_a = services_1.SettingsService.settings.ioBroker) === null || _a === void 0 ? void 0 : _a.useZigbee2mqtt) && !c.on) {
99
80
  // With zigbee2mqtt to turn on only setting brighness>0 is needed, so we need state only for turning off
@@ -108,27 +89,11 @@ class ZigbeeDimmer extends index_1.ZigbeeDevice {
108
89
  }
109
90
  this.setBrightnessState(this.settings.turnOnThreshhold, () => {
110
91
  services_1.Utils.guardedTimeout(() => {
111
- this.log(models_1.LogLevel.Info, `Delayed reduced brightness on ${this.info.customName}`);
92
+ this.log(models_1.LogLevel.Info, `Delayed reduced brightness on ${this.info.customName} to ${c.brightness} for command: ${c.logMessage}`);
112
93
  this.setBrightnessState(c.brightness);
113
94
  }, 1000, this);
114
95
  });
115
96
  }
116
- persist() {
117
- var _a;
118
- const now = services_1.Utils.nowMS();
119
- if (this._lastPersist + 1000 > now) {
120
- return;
121
- }
122
- (_a = services_1.Utils.dbo) === null || _a === void 0 ? void 0 : _a.persistActuator(this);
123
- this._lastPersist = now;
124
- }
125
- toggleLight(c) {
126
- return sharedFunctions_1.LampUtils.toggleLight(this, c);
127
- }
128
- writeActuatorStateToDevice(c) {
129
- this.log(models_1.LogLevel.Debug, c.logMessage, services_1.LogDebugType.SetActuator);
130
- this.setState(this._stateIdState, c.stateValue);
131
- }
132
97
  setBrightnessState(brightness, onSuccess) {
133
98
  this.setState(this._stateIdBrightness, Math.max(0, Math.min(brightness, 100)), onSuccess);
134
99
  }
@@ -1,17 +1,15 @@
1
- /// <reference types="node" />
2
1
  import { ZigbeeDevice } from './zigbeeDevice';
3
2
  import { iBatteryDevice, iHeater } from '../../baseDeviceInterfaces';
4
- import { HeaterSettings } from '../../../../models';
3
+ import { BatteryLevelChangeAction, HeaterSettings } from '../../../../models';
5
4
  import { DeviceType } from '../../deviceType';
6
5
  import { IoBrokerDeviceInfo } from '../../IoBrokerDeviceInfo';
7
6
  import { PIDController } from '../../../../liquid-pid';
8
7
  export declare class ZigbeeHeater extends ZigbeeDevice implements iHeater, iBatteryDevice {
9
- protected _battery: number;
10
- private _lastBatteryPersist;
11
- get lastBatteryPersist(): number;
8
+ /** @inheritDoc */
12
9
  readonly persistHeaterInterval: NodeJS.Timeout;
10
+ /** @inheritDoc */
13
11
  settings: HeaterSettings;
14
- get battery(): number;
12
+ protected _battery: number;
15
13
  protected _iAutomaticInterval: NodeJS.Timeout | undefined;
16
14
  protected _initialSeasonCheckDone: boolean;
17
15
  protected _level: number;
@@ -19,28 +17,50 @@ export declare class ZigbeeHeater extends ZigbeeDevice implements iHeater, iBatt
19
17
  protected _temperatur: number;
20
18
  protected _desiredTemperatur: number;
21
19
  protected _pidController: PIDController;
22
- constructor(pInfo: IoBrokerDeviceInfo, pType: DeviceType);
23
20
  protected _seasonTurnOff: boolean;
21
+ protected _roomTemperature: number;
22
+ private _lastBatteryPersist;
23
+ private _lastBatteryLevel;
24
+ private _batteryLevelCallbacks;
25
+ constructor(pInfo: IoBrokerDeviceInfo, pType: DeviceType);
26
+ /** @inheritDoc */
27
+ get lastBatteryPersist(): number;
28
+ /** @inheritDoc */
29
+ get battery(): number;
30
+ /** @inheritDoc */
24
31
  get seasonTurnOff(): boolean;
32
+ /** @inheritDoc */
25
33
  set seasonTurnOff(value: boolean);
34
+ /** @inheritDoc */
26
35
  get desiredTemperature(): number;
36
+ /** @inheritDoc */
27
37
  set desiredTemperature(val: number);
28
- protected _humidity: number;
29
- get humidity(): number;
30
38
  get sLevel(): string;
39
+ /** @inheritDoc */
31
40
  get iLevel(): number;
32
41
  get sTemperatur(): string;
42
+ /** @inheritDoc */
33
43
  get iTemperature(): number;
34
- protected _roomTemperature: number;
44
+ /** @inheritDoc */
35
45
  get roomTemperature(): number;
36
- set roomTemperatur(val: number);
46
+ protected set roomTemperatur(val: number);
47
+ /** @inheritDoc */
48
+ addBatteryLevelCallback(pCallback: (action: BatteryLevelChangeAction) => void): void;
49
+ /** @inheritDoc */
37
50
  checkAutomaticChange(): void;
38
- stopAutomaticCheck(): void;
51
+ /** @inheritDoc */
39
52
  onTemperaturChange(newTemperatur: number): void;
40
53
  persistHeater(): void;
54
+ /** @inheritDoc */
41
55
  update(idSplit: string[], state: ioBroker.State, initial?: boolean, pOverride?: boolean): void;
42
- protected getNextPidLevel(): number;
43
- private checkSeasonTurnOff;
56
+ /** @inheritDoc */
44
57
  persistBatteryDevice(): void;
58
+ /** @inheritDoc */
45
59
  dispose(): void;
60
+ protected getNextPidLevel(): number;
61
+ private checkSeasonTurnOff;
62
+ /**
63
+ * Checks whether the battery level did change and if so fires the callbacks
64
+ */
65
+ private checkForBatteryChange;
46
66
  }
@@ -8,20 +8,15 @@ const services_1 = require("../../../services");
8
8
  const DeviceCapability_1 = require("../../DeviceCapability");
9
9
  const liquid_pid_1 = require("../../../../liquid-pid");
10
10
  class ZigbeeHeater extends zigbeeDevice_1.ZigbeeDevice {
11
- get lastBatteryPersist() {
12
- return this._lastBatteryPersist;
13
- }
14
- get battery() {
15
- return this._battery;
16
- }
17
11
  constructor(pInfo, pType) {
18
12
  super(pInfo, pType);
19
- this._battery = -99;
20
- this._lastBatteryPersist = 0;
13
+ /** @inheritDoc */
21
14
  this.persistHeaterInterval = services_1.Utils.guardedInterval(() => {
22
15
  this.persistHeater();
23
16
  }, 5 * 60 * 1000, this, false);
17
+ /** @inheritDoc */
24
18
  this.settings = new models_1.HeaterSettings();
19
+ this._battery = -99;
25
20
  this._initialSeasonCheckDone = false;
26
21
  this._level = 0;
27
22
  this._setPointTemperaturID = '';
@@ -38,8 +33,10 @@ class ZigbeeHeater extends zigbeeDevice_1.ZigbeeDevice {
38
33
  Kd: 9, // PID: Kd in 1/1000
39
34
  });
40
35
  this._seasonTurnOff = false;
41
- this._humidity = 0;
42
36
  this._roomTemperature = baseDeviceInterfaces_1.UNDEFINED_TEMP_VALUE;
37
+ this._lastBatteryPersist = 0;
38
+ this._lastBatteryLevel = -1;
39
+ this._batteryLevelCallbacks = [];
43
40
  this.deviceCapabilities.push(DeviceCapability_1.DeviceCapability.heater);
44
41
  this.deviceCapabilities.push(DeviceCapability_1.DeviceCapability.batteryDriven);
45
42
  this._iAutomaticInterval = services_1.Utils.guardedInterval(this.checkAutomaticChange, 300000, this); // Alle 5 Minuten prüfen
@@ -47,15 +44,27 @@ class ZigbeeHeater extends zigbeeDevice_1.ZigbeeDevice {
47
44
  this.checkSeasonTurnOff();
48
45
  }, 0, 2, 0));
49
46
  }
47
+ /** @inheritDoc */
48
+ get lastBatteryPersist() {
49
+ return this._lastBatteryPersist;
50
+ }
51
+ /** @inheritDoc */
52
+ get battery() {
53
+ return this._battery;
54
+ }
55
+ /** @inheritDoc */
50
56
  get seasonTurnOff() {
51
57
  return this._seasonTurnOff;
52
58
  }
59
+ /** @inheritDoc */
53
60
  set seasonTurnOff(value) {
54
61
  this._seasonTurnOff = value;
55
62
  }
63
+ /** @inheritDoc */
56
64
  get desiredTemperature() {
57
65
  return this._desiredTemperatur;
58
66
  }
67
+ /** @inheritDoc */
59
68
  set desiredTemperature(val) {
60
69
  this._desiredTemperatur = val;
61
70
  this.setState(this._setPointTemperaturID, val, () => {
@@ -64,18 +73,17 @@ class ZigbeeHeater extends zigbeeDevice_1.ZigbeeDevice {
64
73
  this.log(models_1.LogLevel.Error, `Temperaturänderung ergab Fehler ${err}.`);
65
74
  });
66
75
  }
67
- get humidity() {
68
- return this._humidity;
69
- }
70
76
  get sLevel() {
71
77
  return `${this._level * 100}%`;
72
78
  }
79
+ /** @inheritDoc */
73
80
  get iLevel() {
74
81
  return this._level;
75
82
  }
76
83
  get sTemperatur() {
77
84
  return `${this.iTemperature}°C`;
78
85
  }
86
+ /** @inheritDoc */
79
87
  get iTemperature() {
80
88
  if (this.settings.useOwnTemperatur) {
81
89
  return this._temperatur;
@@ -84,12 +92,18 @@ class ZigbeeHeater extends zigbeeDevice_1.ZigbeeDevice {
84
92
  return this._roomTemperature;
85
93
  }
86
94
  }
95
+ /** @inheritDoc */
87
96
  get roomTemperature() {
88
97
  return this._roomTemperature;
89
98
  }
90
99
  set roomTemperatur(val) {
91
100
  this._roomTemperature = val;
92
101
  }
102
+ /** @inheritDoc */
103
+ addBatteryLevelCallback(pCallback) {
104
+ this._batteryLevelCallbacks.push(pCallback);
105
+ }
106
+ /** @inheritDoc */
93
107
  checkAutomaticChange() {
94
108
  var _a;
95
109
  if (!this._initialSeasonCheckDone) {
@@ -113,12 +127,7 @@ class ZigbeeHeater extends zigbeeDevice_1.ZigbeeDevice {
113
127
  this.desiredTemperature = targetTemperature;
114
128
  }
115
129
  }
116
- stopAutomaticCheck() {
117
- if (this._iAutomaticInterval !== undefined) {
118
- clearInterval(this._iAutomaticInterval);
119
- this._iAutomaticInterval = undefined;
120
- }
121
- }
130
+ /** @inheritDoc */
122
131
  onTemperaturChange(newTemperatur) {
123
132
  this.roomTemperatur = newTemperatur;
124
133
  }
@@ -126,18 +135,41 @@ class ZigbeeHeater extends zigbeeDevice_1.ZigbeeDevice {
126
135
  var _a;
127
136
  (_a = services_1.Utils.dbo) === null || _a === void 0 ? void 0 : _a.persistHeater(this);
128
137
  }
138
+ /** @inheritDoc */
129
139
  update(idSplit, state, initial = false, pOverride = false) {
130
140
  switch (idSplit[3]) {
131
141
  case 'battery':
132
142
  this._battery = state.val;
143
+ this.checkForBatteryChange();
133
144
  this.persistBatteryDevice();
134
145
  if (this._battery < 20) {
135
- this.log(models_1.LogLevel.Warn, `Das Zigbee Gerät hat unter 20% Batterie.`);
146
+ this.log(models_1.LogLevel.Warn, 'Das Zigbee Gerät hat unter 20% Batterie.');
136
147
  }
137
148
  break;
138
149
  }
139
150
  super.update(idSplit, state, initial, pOverride);
140
151
  }
152
+ /** @inheritDoc */
153
+ persistBatteryDevice() {
154
+ var _a;
155
+ const now = services_1.Utils.nowMS();
156
+ if (this._lastBatteryPersist + 60000 > now) {
157
+ return;
158
+ }
159
+ (_a = services_1.Utils.dbo) === null || _a === void 0 ? void 0 : _a.persistBatteryDevice(this);
160
+ this._lastBatteryPersist = now;
161
+ }
162
+ /** @inheritDoc */
163
+ dispose() {
164
+ if (this.persistHeaterInterval) {
165
+ clearInterval(this.persistHeaterInterval);
166
+ }
167
+ if (this._iAutomaticInterval) {
168
+ clearInterval(this._iAutomaticInterval);
169
+ this._iAutomaticInterval = undefined;
170
+ }
171
+ super.dispose();
172
+ }
141
173
  getNextPidLevel() {
142
174
  if (this.seasonTurnOff || this._roomTemperature < 0) {
143
175
  return 0;
@@ -155,24 +187,18 @@ class ZigbeeHeater extends zigbeeDevice_1.ZigbeeDevice {
155
187
  }
156
188
  this._initialSeasonCheckDone = true;
157
189
  }
158
- persistBatteryDevice() {
159
- var _a;
160
- const now = services_1.Utils.nowMS();
161
- if (this._lastBatteryPersist + 60000 > now) {
190
+ /**
191
+ * Checks whether the battery level did change and if so fires the callbacks
192
+ */
193
+ checkForBatteryChange() {
194
+ const newLevel = this.battery;
195
+ if (newLevel == -1 || newLevel == this._lastBatteryLevel) {
162
196
  return;
163
197
  }
164
- (_a = services_1.Utils.dbo) === null || _a === void 0 ? void 0 : _a.persistBatteryDevice(this);
165
- this._lastBatteryPersist = now;
166
- }
167
- dispose() {
168
- if (this.persistHeaterInterval) {
169
- clearInterval(this.persistHeaterInterval);
170
- }
171
- if (this._iAutomaticInterval) {
172
- clearInterval(this._iAutomaticInterval);
173
- this._iAutomaticInterval = undefined;
198
+ for (const cb of this._batteryLevelCallbacks) {
199
+ cb(new models_1.BatteryLevelChangeAction(this));
174
200
  }
175
- super.dispose();
201
+ this._lastBatteryLevel = newLevel;
176
202
  }
177
203
  }
178
204
  exports.ZigbeeHeater = ZigbeeHeater;
@@ -0,0 +1,16 @@
1
+ import { ZigbeeActuator } from './ZigbeeActuator';
2
+ import { iLamp, iTemporaryDisableAutomatic } from '../../baseDeviceInterfaces';
3
+ import { LampSetLightCommand, LampSetTimeBasedCommand, LampToggleLightCommand } from '../../../../models';
4
+ import { IoBrokerDeviceInfo } from '../../IoBrokerDeviceInfo';
5
+ import { DeviceType } from '../../deviceType';
6
+ export declare abstract class ZigbeeLamp extends ZigbeeActuator implements iLamp, iTemporaryDisableAutomatic {
7
+ constructor(pInfo: IoBrokerDeviceInfo, deviceType: DeviceType);
8
+ /** @inheritDoc */
9
+ update(idSplit: string[], state: ioBroker.State, initial?: boolean, handledByChildObject?: boolean): void;
10
+ /** @inheritDoc */
11
+ setTimeBased(c: LampSetTimeBasedCommand): void;
12
+ /** @inheritdoc */
13
+ setLight(c: LampSetLightCommand): void;
14
+ /** @inheritDoc */
15
+ toggleLight(c: LampToggleLightCommand): boolean;
16
+ }
@@ -0,0 +1,35 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ZigbeeLamp = void 0;
4
+ const ZigbeeActuator_1 = require("./ZigbeeActuator");
5
+ const models_1 = require("../../../../models");
6
+ const sharedFunctions_1 = require("../../sharedFunctions");
7
+ const DeviceCapability_1 = require("../../DeviceCapability");
8
+ class ZigbeeLamp extends ZigbeeActuator_1.ZigbeeActuator {
9
+ constructor(pInfo, deviceType) {
10
+ super(pInfo, deviceType);
11
+ this.deviceCapabilities.push(DeviceCapability_1.DeviceCapability.lamp);
12
+ }
13
+ /** @inheritDoc */
14
+ update(idSplit, state, initial = false, handledByChildObject = false) {
15
+ if (!handledByChildObject) {
16
+ this.log(models_1.LogLevel.DeepTrace, `Lamp Update: ID: ${idSplit.join('.')} JSON: ${JSON.stringify(state)}`);
17
+ }
18
+ this.queuedValue = null;
19
+ this.log(models_1.LogLevel.DeepTrace, `Lamp Update: ID: ${idSplit.join('.')} JSON: ${JSON.stringify(state)}`);
20
+ super.update(idSplit, state, initial, true);
21
+ }
22
+ /** @inheritDoc */
23
+ setTimeBased(c) {
24
+ sharedFunctions_1.LampUtils.setTimeBased(this, c);
25
+ }
26
+ /** @inheritdoc */
27
+ setLight(c) {
28
+ super.setActuator(c);
29
+ }
30
+ /** @inheritDoc */
31
+ toggleLight(c) {
32
+ return sharedFunctions_1.LampUtils.toggleLight(this, c);
33
+ }
34
+ }
35
+ exports.ZigbeeLamp = ZigbeeLamp;
@@ -4,7 +4,7 @@ import { IoBrokerDeviceInfo } from '../../IoBrokerDeviceInfo';
4
4
  import { iLedRgbCct } from '../../baseDeviceInterfaces/iLedRgbCct';
5
5
  import { ZigbeeDimmer } from './zigbeeDimmer';
6
6
  export declare abstract class ZigbeeLedRGBCCT extends ZigbeeDimmer implements iLedRgbCct {
7
- static DEFAULT_COLOR_WARM: string;
7
+ /** @inheritDoc */
8
8
  settings: LedSettings;
9
9
  protected abstract readonly _stateIdColor: string;
10
10
  protected abstract readonly _stateIdColorTemp: string;
@@ -12,17 +12,17 @@ export declare abstract class ZigbeeLedRGBCCT extends ZigbeeDimmer implements iL
12
12
  protected abstract readonly _stateNameColorTemp: string;
13
13
  protected constructor(pInfo: IoBrokerDeviceInfo, deviceType: DeviceType);
14
14
  protected _color: string;
15
+ /** @inheritDoc */
15
16
  get color(): string;
16
17
  protected _colortemp: number;
18
+ /** @inheritDoc */
17
19
  get colortemp(): number;
20
+ /** @inheritDoc */
18
21
  update(idSplit: string[], state: ioBroker.State, initial?: boolean): void;
19
- /**
20
- * @inheritDoc
21
- */
22
+ /** @inheritDoc */
22
23
  setTimeBased(c: LampSetTimeBasedCommand): void;
24
+ /** @inheritDoc */
23
25
  setActuator(c: ActuatorSetStateCommand): void;
24
- /**
25
- * @inheritDoc
26
- */
26
+ /** @inheritDoc */
27
27
  setLight(c: LedSetLightCommand): void;
28
28
  }
@@ -8,19 +8,23 @@ const services_1 = require("../../../services");
8
8
  class ZigbeeLedRGBCCT extends zigbeeDimmer_1.ZigbeeDimmer {
9
9
  constructor(pInfo, deviceType) {
10
10
  super(pInfo, deviceType);
11
+ /** @inheritDoc */
11
12
  this.settings = new models_1.LedSettings();
12
13
  this._color = '#fcba32';
13
14
  this._colortemp = 500;
14
15
  this.deviceCapabilities.push(DeviceCapability_1.DeviceCapability.ledLamp);
15
16
  // this.effectID = `${this.info.fullID}.effect`;
16
17
  }
18
+ /** @inheritDoc */
17
19
  get color() {
18
20
  return this._color;
19
21
  }
22
+ /** @inheritDoc */
20
23
  get colortemp() {
21
24
  return this._colortemp;
22
25
  }
23
26
  // private effectID: string = '';
27
+ /** @inheritDoc */
24
28
  update(idSplit, state, initial = false) {
25
29
  this.log(models_1.LogLevel.DeepTrace, `LED Update: ID: ${idSplit.join('.')} JSON: ${JSON.stringify(state)}`);
26
30
  super.update(idSplit, state, initial);
@@ -35,39 +39,35 @@ class ZigbeeLedRGBCCT extends zigbeeDimmer_1.ZigbeeDimmer {
35
39
  break;
36
40
  }
37
41
  }
38
- /**
39
- * @inheritDoc
40
- */
42
+ /** @inheritDoc */
41
43
  setTimeBased(c) {
42
44
  this.setLight(models_1.LedSetLightCommand.byTimeBased(this.settings, c));
43
45
  }
46
+ /** @inheritDoc */
44
47
  setActuator(c) {
45
- this.setLight(new models_1.LedSetLightCommand(c, c.on, '', c.timeout));
48
+ this.setLight(new models_1.LedSetLightCommand(c, c.on, '', c.disableAutomaticCommand));
46
49
  }
47
- /**
48
- * @inheritDoc
49
- */
50
+ /** @inheritDoc */
50
51
  setLight(c) {
51
- if (this._stateIdState === '') {
52
- this.log(models_1.LogLevel.Error, `Keine State ID bekannt.`);
52
+ if (this._actuatorOnStateIdState === '') {
53
+ this.log(models_1.LogLevel.Error, 'Keine State ID bekannt.');
53
54
  return;
54
55
  }
55
56
  if (!this.ioConn) {
56
- this.log(models_1.LogLevel.Error, `Keine Connection bekannt.`);
57
+ this.log(models_1.LogLevel.Error, 'Keine Connection bekannt.');
57
58
  return;
58
59
  }
59
60
  if (c.on && c.brightness === -1 && this.brightness < 10) {
60
61
  c.brightness = 10;
61
62
  }
63
+ super.setLight(c);
62
64
  const formattedColor = services_1.Utils.formatHex(c.color);
63
- if (formattedColor !== null && c.on) {
65
+ if (formattedColor !== null && c.on && (c.color !== this.color || c.isForceAction)) {
64
66
  this.setState(this._stateIdColor, formattedColor);
65
67
  }
66
- if (c.colorTemp > -1 && c.on) {
68
+ if (c.colorTemp > -1 && c.on && (c.colorTemp !== this.colortemp || c.isForceAction)) {
67
69
  this.setState(this._stateIdColorTemp, c.colorTemp);
68
70
  }
69
- super.setLight(c);
70
71
  }
71
72
  }
72
73
  exports.ZigbeeLedRGBCCT = ZigbeeLedRGBCCT;
73
- ZigbeeLedRGBCCT.DEFAULT_COLOR_WARM = '#f2b200';
@@ -1,25 +1,44 @@
1
1
  import { DeviceType } from '../../deviceType';
2
+ import { BatteryLevelChangeAction } from '../../../../models';
2
3
  import { ZigbeeDevice } from './zigbeeDevice';
3
4
  import { MagnetPosition } from '../../models';
4
5
  import { IoBrokerDeviceInfo } from '../../IoBrokerDeviceInfo';
5
- import { iBatteryDevice } from '../../baseDeviceInterfaces';
6
- export declare class ZigbeeMagnetContact extends ZigbeeDevice implements iBatteryDevice {
7
- protected _battery: number;
8
- private _lastBatteryPersist;
9
- get lastBatteryPersist(): number;
10
- get battery(): number;
6
+ import { iBatteryDevice, iMagnetSensor } from '../../baseDeviceInterfaces';
7
+ export declare class ZigbeeMagnetContact extends ZigbeeDevice implements iBatteryDevice, iMagnetSensor {
8
+ /** @inheritDoc */
11
9
  position: MagnetPosition;
10
+ /** @inheritDoc */
12
11
  telegramOnOpen: boolean;
12
+ /** @inheritDoc */
13
13
  speakOnOpen: boolean;
14
+ protected _battery: number;
15
+ private _lastBatteryPersist;
16
+ private _lastBatteryLevel;
17
+ private _batteryLevelCallbacks;
14
18
  private _closedCallback;
15
19
  private _openCallback;
16
20
  private _iOpenTimeout;
17
21
  private minutesOpen;
18
22
  constructor(pInfo: IoBrokerDeviceInfo, deviceType: DeviceType);
23
+ /** @inheritDoc */
24
+ get lastBatteryPersist(): number;
25
+ /** @inheritDoc */
26
+ get battery(): number;
27
+ /** @inheritDoc */
19
28
  addOpenCallback(pCallback: (pValue: boolean) => void): void;
29
+ /** @inheritDoc */
20
30
  addClosedCallback(pCallback: (pValue: boolean) => void): void;
31
+ /** @inheritDoc */
32
+ addBatteryLevelCallback(pCallback: (action: BatteryLevelChangeAction) => void): void;
33
+ /** @inheritDoc */
21
34
  update(idSplit: string[], state: ioBroker.State, initial?: boolean, pOverrride?: boolean): void;
22
- protected updatePosition(pValue: MagnetPosition): void;
35
+ /** @inheritDoc */
23
36
  dispose(): void;
37
+ /** @inheritDoc */
24
38
  persistBatteryDevice(): void;
39
+ protected updatePosition(pValue: MagnetPosition): void;
40
+ /**
41
+ * Checks whether the battery level did change and if so fires the callbacks
42
+ */
43
+ private checkForBatteryChange;
25
44
  }