hoffmation-base 3.0.0-alpha.5 → 3.0.0-alpha.51

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 (507) 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 +8 -0
  12. package/lib/models/action/index.js +27 -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/presenceGroupFirstEnterAction.d.ts +7 -0
  16. package/lib/models/action/presenceGroupFirstEnterAction.js +13 -0
  17. package/lib/models/action/presenceGroupLastLeftAction.d.ts +7 -0
  18. package/lib/models/action/presenceGroupLastLeftAction.js +13 -0
  19. package/lib/models/action/shutterPositionChangedAction.d.ts +13 -0
  20. package/lib/models/action/shutterPositionChangedAction.js +15 -0
  21. package/lib/models/action/temperatureSensorChangeAction.d.ts +16 -0
  22. package/lib/models/action/temperatureSensorChangeAction.js +15 -0
  23. package/lib/models/blockAutomaticSettings.d.ts +23 -0
  24. package/lib/models/blockAutomaticSettings.js +19 -0
  25. package/lib/models/command/ShutterSetLevelCommand.d.ts +9 -1
  26. package/lib/models/command/ShutterSetLevelCommand.js +9 -1
  27. package/lib/models/command/WindowRestoreDesiredPositionCommand.d.ts +7 -1
  28. package/lib/models/command/WindowRestoreDesiredPositionCommand.js +7 -1
  29. package/lib/models/command/WindowSetDesiredPositionCommand.d.ts +8 -1
  30. package/lib/models/command/WindowSetDesiredPositionCommand.js +8 -1
  31. package/lib/models/command/WindowSetRolloByWeatherStatusCommand.d.ts +7 -1
  32. package/lib/models/command/WindowSetRolloByWeatherStatusCommand.js +7 -1
  33. package/lib/models/command/actuatorSetStateCommand.d.ts +18 -3
  34. package/lib/models/command/actuatorSetStateCommand.js +15 -6
  35. package/lib/models/command/actuatorToggleCommand.d.ts +7 -2
  36. package/lib/models/command/actuatorToggleCommand.js +7 -4
  37. package/lib/models/command/actuatorWriteStateToDeviceCommand.d.ts +8 -1
  38. package/lib/models/command/actuatorWriteStateToDeviceCommand.js +12 -1
  39. package/lib/models/command/baseCommand.d.ts +23 -2
  40. package/lib/models/command/baseCommand.js +41 -1
  41. package/lib/models/command/blockAutomaticCommand.d.ts +32 -0
  42. package/lib/models/command/blockAutomaticCommand.js +40 -0
  43. package/lib/models/command/blockAutomaticLiftBlockCommand.d.ts +18 -0
  44. package/lib/models/command/blockAutomaticLiftBlockCommand.js +23 -0
  45. package/lib/models/command/blockAutomaticUntilCommand.d.ts +27 -0
  46. package/lib/models/command/blockAutomaticUntilCommand.js +32 -0
  47. package/lib/models/command/commandSource.d.ts +19 -0
  48. package/lib/models/command/commandSource.js +20 -0
  49. package/lib/models/command/commandType.d.ts +10 -0
  50. package/lib/models/command/commandType.js +10 -0
  51. package/lib/models/command/dimmerSetLightCommand.d.ts +13 -8
  52. package/lib/models/command/dimmerSetLightCommand.js +20 -14
  53. package/lib/models/command/floorSetAllShuttersCommand.d.ts +6 -5
  54. package/lib/models/command/floorSetAllShuttersCommand.js +6 -5
  55. package/lib/models/command/index.d.ts +3 -0
  56. package/lib/models/command/index.js +7 -1
  57. package/lib/models/command/lampSetLightCommand.d.ts +13 -2
  58. package/lib/models/command/lampSetLightCommand.js +15 -4
  59. package/lib/models/command/lampSetTimeBasedCommand.d.ts +15 -8
  60. package/lib/models/command/lampSetTimeBasedCommand.js +9 -11
  61. package/lib/models/command/lampToggleLightCommand.d.ts +7 -6
  62. package/lib/models/command/lampToggleLightCommand.js +7 -6
  63. package/lib/models/command/ledSetLightCommand.d.ts +21 -11
  64. package/lib/models/command/ledSetLightCommand.js +27 -17
  65. package/lib/models/command/lightGroupSwitchTimeConditionalCommand.d.ts +8 -1
  66. package/lib/models/command/lightGroupSwitchTimeConditionalCommand.js +8 -1
  67. package/lib/models/command/restoreTargetAutomaticValueCommand.d.ts +7 -2
  68. package/lib/models/command/restoreTargetAutomaticValueCommand.js +7 -4
  69. package/lib/models/command/roomRestoreLightCommand.d.ts +7 -1
  70. package/lib/models/command/roomRestoreLightCommand.js +7 -1
  71. package/lib/models/command/roomRestoreShutterPositionCommand.d.ts +8 -1
  72. package/lib/models/command/roomRestoreShutterPositionCommand.js +8 -1
  73. package/lib/models/command/roomSetLightTimeBasedCommand.d.ts +5 -4
  74. package/lib/models/command/roomSetLightTimeBasedCommand.js +5 -4
  75. package/lib/models/command/shutterSunriseUpCommand.d.ts +7 -1
  76. package/lib/models/command/shutterSunriseUpCommand.js +7 -1
  77. package/lib/models/command/shutterSunsetDownCommand.d.ts +7 -1
  78. package/lib/models/command/shutterSunsetDownCommand.js +7 -1
  79. package/lib/models/command/wledSetLightCommand.d.ts +16 -2
  80. package/lib/models/command/wledSetLightCommand.js +23 -7
  81. package/lib/models/connectionCallbacks.d.ts +4 -4
  82. package/lib/models/connectionCallbacks.js +1 -0
  83. package/lib/models/deviceConfig.d.ts +3 -3
  84. package/lib/models/deviceSettings/acSettings.d.ts +19 -5
  85. package/lib/models/deviceSettings/acSettings.js +23 -8
  86. package/lib/models/deviceSettings/actuatorSettings.d.ts +13 -4
  87. package/lib/models/deviceSettings/actuatorSettings.js +19 -9
  88. package/lib/models/deviceSettings/cameraSettings.d.ts +12 -0
  89. package/lib/models/deviceSettings/cameraSettings.js +12 -0
  90. package/lib/models/deviceSettings/dachsSettings.d.ts +11 -0
  91. package/lib/models/deviceSettings/dachsSettings.js +13 -1
  92. package/lib/models/deviceSettings/deviceSettings.d.ts +10 -0
  93. package/lib/models/deviceSettings/deviceSettings.js +16 -0
  94. package/lib/models/deviceSettings/dimmerSettings.d.ts +20 -0
  95. package/lib/models/deviceSettings/dimmerSettings.js +20 -0
  96. package/lib/models/deviceSettings/garageDoorOpenerSettings.d.ts +0 -1
  97. package/lib/models/deviceSettings/garageDoorOpenerSettings.js +0 -1
  98. package/lib/models/deviceSettings/handleSettings.d.ts +9 -0
  99. package/lib/models/deviceSettings/handleSettings.js +9 -0
  100. package/lib/models/deviceSettings/heaterSettings.d.ts +21 -9
  101. package/lib/models/deviceSettings/heaterSettings.js +21 -9
  102. package/lib/models/deviceSettings/ledSettings.d.ts +66 -0
  103. package/lib/models/deviceSettings/ledSettings.js +76 -18
  104. package/lib/models/deviceSettings/motionSensorSettings.d.ts +5 -1
  105. package/lib/models/deviceSettings/motionSensorSettings.js +5 -1
  106. package/lib/models/deviceSettings/sceneSettings.d.ts +4 -0
  107. package/lib/models/deviceSettings/shutterSettings.d.ts +11 -3
  108. package/lib/models/deviceSettings/shutterSettings.js +11 -3
  109. package/lib/models/deviceSettings/sonosDeviceSettings.d.ts +4 -0
  110. package/lib/models/deviceSettings/sonosDeviceSettings.js +4 -0
  111. package/lib/models/deviceSettings/tvSettings.d.ts +4 -0
  112. package/lib/models/deviceSettings/victronDeviceSettings.d.ts +34 -0
  113. package/lib/models/deviceSettings/victronDeviceSettings.js +34 -0
  114. package/lib/models/deviceSettings/wledSettings.d.ts +48 -0
  115. package/lib/models/deviceSettings/wledSettings.js +37 -13
  116. package/lib/models/groupSettings/heatGroupSettings.d.ts +12 -1
  117. package/lib/models/groupSettings/heatGroupSettings.js +12 -1
  118. package/lib/models/iIdHolder.d.ts +18 -0
  119. package/lib/models/index.d.ts +2 -1
  120. package/lib/models/index.js +4 -1
  121. package/lib/models/objectSettings.d.ts +5 -2
  122. package/lib/models/objectSettings.js +2 -2
  123. package/lib/models/persistence/EnergyCalculation.d.ts +27 -0
  124. package/lib/models/persistence/EnergyCalculation.js +30 -4
  125. package/lib/models/persistence/index.d.ts +0 -2
  126. package/lib/models/persistence/index.js +0 -2
  127. package/lib/models/rooms/RoomBase.d.ts +12 -1
  128. package/lib/models/rooms/RoomBase.js +16 -7
  129. package/lib/models/rooms/RoomSettings/RoomInitializationSettings.d.ts +2 -1
  130. package/lib/models/rooms/RoomSettings/RoomInitializationSettings.js +2 -2
  131. package/lib/models/rooms/RoomSettings/RoomSettingsController.d.ts +10 -1
  132. package/lib/models/rooms/RoomSettings/RoomSettingsController.js +2 -2
  133. package/lib/models/rooms/RoomSettings/iRoomDefaultSettings.d.ts +53 -3
  134. package/lib/models/rooms/RoomSettings/iRoomInitializationSettings.d.ts +10 -1
  135. package/lib/models/rooms/RoomSettings/roomDeviceAddingSettings.d.ts +4 -1
  136. package/lib/models/rooms/RoomSettings/roomDeviceAddingSettings.js +3 -0
  137. package/lib/models/rooms/RoomSettings/roomSettings.d.ts +55 -0
  138. package/lib/models/rooms/RoomSettings/roomSettings.js +55 -0
  139. package/lib/models/rooms/iRoomBase.d.ts +39 -0
  140. package/lib/models/rooms/iRoomImportEnforcer.d.ts +8 -0
  141. package/lib/models/timeCallback.d.ts +7 -0
  142. package/lib/models/timeCallback.js +16 -6
  143. package/lib/server/config/heatingMode.d.ts +2 -1
  144. package/lib/server/config/heatingMode.js +2 -1
  145. package/lib/server/config/iAsusConfig.d.ts +15 -0
  146. package/lib/server/config/iBlockAutomaticHandlerDefaults.d.ts +23 -0
  147. package/lib/server/config/iBlueIrisSettings.d.ts +14 -0
  148. package/lib/server/config/iBluetoothTrackingSettings.d.ts +9 -0
  149. package/lib/server/config/iConfig.d.ts +94 -6
  150. package/lib/server/config/iDachsSettings.d.ts +16 -0
  151. package/lib/server/config/iDaikinSettings.d.ts +17 -0
  152. package/lib/server/config/iEnergyManagerSettings.d.ts +13 -0
  153. package/lib/server/config/iEspresenseSettings.d.ts +10 -0
  154. package/lib/server/config/iGoveeSettings.d.ts +9 -0
  155. package/lib/server/config/iGoveeSettings.js +2 -0
  156. package/lib/server/config/iHeaterSettings.d.ts +8 -0
  157. package/lib/server/config/iIobrokerSettigns.d.ts +8 -0
  158. package/lib/server/config/iLogSettings.d.ts +40 -1
  159. package/lib/server/config/iMp3Settings.d.ts +10 -0
  160. package/lib/server/config/iMuellSettings.d.ts +7 -0
  161. package/lib/server/config/iNewsSettings.d.ts +13 -0
  162. package/lib/server/config/iPersistenceSettings.d.ts +10 -0
  163. package/lib/server/config/iPollySettings.d.ts +22 -0
  164. package/lib/server/config/iRestSettings.d.ts +10 -0
  165. package/lib/server/config/iSonosSettings.d.ts +10 -0
  166. package/lib/server/config/iTelegramSettings.d.ts +17 -0
  167. package/lib/server/config/iTibberSettings.d.ts +10 -0
  168. package/lib/server/config/iTimePair.d.ts +9 -0
  169. package/lib/server/config/iTimeSettings.d.ts +9 -0
  170. package/lib/server/config/iTranslationSettings.d.ts +10 -0
  171. package/lib/server/config/iUnifiConnectionOptions.d.ts +31 -0
  172. package/lib/server/config/iUnifiSettings.d.ts +8 -0
  173. package/lib/server/config/iVictronSettings.d.ts +14 -0
  174. package/lib/server/config/iWeatherSettings.d.ts +13 -0
  175. package/lib/server/config/index.d.ts +2 -0
  176. package/lib/server/devices/DeviceCapability.d.ts +1 -0
  177. package/lib/server/devices/DeviceCapability.js +1 -0
  178. package/lib/server/devices/DeviceInfo.d.ts +9 -0
  179. package/lib/server/devices/DeviceInfo.js +6 -0
  180. package/lib/server/devices/Griffe.js +1 -2
  181. package/lib/server/devices/Heizgruppen.js +2 -2
  182. package/lib/server/devices/IoBrokerBaseDevice.d.ts +34 -18
  183. package/lib/server/devices/IoBrokerBaseDevice.js +37 -21
  184. package/lib/server/devices/IoBrokerDeviceInfo.d.ts +2 -2
  185. package/lib/server/devices/IoBrokerDeviceInfo.js +6 -4
  186. package/lib/server/devices/baseDeviceInterfaces/iAcDevice.d.ts +41 -3
  187. package/lib/server/devices/baseDeviceInterfaces/iActuator.d.ts +18 -0
  188. package/lib/server/devices/baseDeviceInterfaces/iBaseDevice.d.ts +26 -1
  189. package/lib/server/devices/baseDeviceInterfaces/iBatteryDevice.d.ts +21 -4
  190. package/lib/server/devices/baseDeviceInterfaces/iBluetoothDetector.d.ts +15 -7
  191. package/lib/server/devices/baseDeviceInterfaces/iButtonSwitch.d.ts +42 -0
  192. package/lib/server/devices/baseDeviceInterfaces/iCameraDevice.d.ts +46 -3
  193. package/lib/server/devices/baseDeviceInterfaces/iDimmableLamp.d.ts +17 -2
  194. package/lib/server/devices/baseDeviceInterfaces/iEnergyManager.d.ts +36 -2
  195. package/lib/server/devices/baseDeviceInterfaces/iExcessEnergyConsumer.d.ts +30 -2
  196. package/lib/server/devices/baseDeviceInterfaces/iGarageDoorOpener.d.ts +21 -0
  197. package/lib/server/devices/baseDeviceInterfaces/iHandleSensor.d.ts +24 -0
  198. package/lib/server/devices/baseDeviceInterfaces/iHeater.d.ts +40 -4
  199. package/lib/server/devices/baseDeviceInterfaces/iHumiditySensor.d.ts +21 -1
  200. package/lib/server/devices/baseDeviceInterfaces/iIlluminationSensor.d.ts +11 -0
  201. package/lib/server/devices/baseDeviceInterfaces/iLamp.d.ts +7 -2
  202. package/lib/server/devices/baseDeviceInterfaces/iLedRgbCct.d.ts +20 -0
  203. package/lib/server/devices/baseDeviceInterfaces/iLoadMeter.d.ts +5 -0
  204. package/lib/server/devices/baseDeviceInterfaces/iMagnetSensor.d.ts +31 -0
  205. package/lib/server/devices/baseDeviceInterfaces/iMagnetSensor.js +2 -0
  206. package/lib/server/devices/baseDeviceInterfaces/iMotionSensor.d.ts +23 -3
  207. package/lib/server/devices/baseDeviceInterfaces/iRoomDevice.d.ts +6 -0
  208. package/lib/server/devices/baseDeviceInterfaces/iScene.d.ts +31 -1
  209. package/lib/server/devices/baseDeviceInterfaces/iShutter.d.ts +25 -1
  210. package/lib/server/devices/baseDeviceInterfaces/iSmokeDetectorDevice.d.ts +12 -0
  211. package/lib/server/devices/baseDeviceInterfaces/iSpeaker.d.ts +30 -0
  212. package/lib/server/devices/baseDeviceInterfaces/iTemperatureSensor.d.ts +32 -2
  213. package/lib/server/devices/baseDeviceInterfaces/iTemporaryDisableAutomatic.d.ts +13 -0
  214. package/lib/server/devices/baseDeviceInterfaces/iTvDevice.d.ts +20 -0
  215. package/lib/server/devices/baseDeviceInterfaces/iVibrationSensor.d.ts +24 -5
  216. package/lib/server/devices/baseDeviceInterfaces/index.d.ts +1 -0
  217. package/lib/server/devices/blueIris/cameraDevice.d.ts +49 -34
  218. package/lib/server/devices/blueIris/cameraDevice.js +75 -75
  219. package/lib/server/devices/button/button.d.ts +0 -1
  220. package/lib/server/devices/button/button.js +0 -4
  221. package/lib/server/devices/button/buttonCallback.d.ts +5 -0
  222. package/lib/server/devices/button/buttonCallback.js +10 -0
  223. package/lib/server/devices/button/buttonCapabilities.d.ts +12 -0
  224. package/lib/server/devices/button/buttonCapabilities.js +12 -0
  225. package/lib/server/devices/button/index.d.ts +1 -0
  226. package/lib/server/devices/button/index.js +3 -0
  227. package/lib/server/devices/dachs/dachs.d.ts +37 -11
  228. package/lib/server/devices/dachs/dachs.js +49 -22
  229. package/lib/server/devices/dachs/dachsTemperatureSensor.d.ts +22 -3
  230. package/lib/server/devices/dachs/dachsTemperatureSensor.js +23 -5
  231. package/lib/server/devices/dachs/interfaces/DachsClientOptions.d.ts +30 -0
  232. package/lib/server/devices/dachs/interfaces/KeyListEntity.d.ts +0 -8
  233. package/lib/server/devices/dachs/interfaces/KeyListEntity.js +0 -8
  234. package/lib/server/devices/dachs/interfaces/dachsInfluxDataPoint.d.ts +12 -0
  235. package/lib/server/devices/dachs/interfaces/influxDbConnectionOptions.d.ts +21 -1
  236. package/lib/server/devices/dachs/lib/dachsHttpClient.d.ts +5 -2
  237. package/lib/server/devices/dachs/lib/dachsHttpClient.js +5 -4
  238. package/lib/server/devices/device-cluster.d.ts +3 -0
  239. package/lib/server/devices/device-cluster.js +1 -1
  240. package/lib/server/devices/deviceUpdater.d.ts +0 -3
  241. package/lib/server/devices/deviceUpdater.js +1 -4
  242. package/lib/server/devices/devices.d.ts +43 -7
  243. package/lib/server/devices/devices.js +42 -6
  244. package/lib/server/devices/espresense/detectedBluetoothDevice.d.ts +13 -0
  245. package/lib/server/devices/espresense/detectedBluetoothDevice.js +14 -1
  246. package/lib/server/devices/espresense/espresenseDevice.d.ts +31 -1
  247. package/lib/server/devices/espresense/espresenseDevice.js +28 -4
  248. package/lib/server/devices/espresense/trackedDistanceData.d.ts +12 -0
  249. package/lib/server/devices/espresense/trackedDistanceData.js +3 -0
  250. package/lib/server/devices/espresense/trilateration.d.ts +7 -0
  251. package/lib/server/devices/espresense/trilateration.js +7 -0
  252. package/lib/server/devices/espresense/trilaterationBasePoint.d.ts +6 -0
  253. package/lib/server/devices/espresense/trilaterationBasePoint.js +3 -0
  254. package/lib/server/devices/espresense/trilaterationPoint.d.ts +1 -1
  255. package/lib/server/devices/espresense/trilaterationPoint.js +3 -1
  256. package/lib/server/devices/groups/Window.d.ts +9 -3
  257. package/lib/server/devices/groups/Window.js +19 -11
  258. package/lib/server/devices/groups/base-group.d.ts +4 -0
  259. package/lib/server/devices/groups/base-group.js +3 -0
  260. package/lib/server/devices/groups/heatGroup.d.ts +8 -6
  261. package/lib/server/devices/groups/heatGroup.js +11 -11
  262. package/lib/server/devices/groups/lightGroup.d.ts +10 -2
  263. package/lib/server/devices/groups/lightGroup.js +18 -37
  264. package/lib/server/devices/groups/presenceGroup.d.ts +11 -4
  265. package/lib/server/devices/groups/presenceGroup.js +57 -64
  266. package/lib/server/devices/groups/tasterGroup.js +6 -6
  267. package/lib/server/devices/groups/windowGroup.d.ts +11 -1
  268. package/lib/server/devices/groups/windowGroup.js +6 -6
  269. package/lib/server/devices/hmIPDevices/hmIpAccessPoint.d.ts +1 -0
  270. package/lib/server/devices/hmIPDevices/hmIpAccessPoint.js +1 -0
  271. package/lib/server/devices/hmIPDevices/hmIpBewegung.d.ts +9 -6
  272. package/lib/server/devices/hmIPDevices/hmIpBewegung.js +10 -11
  273. package/lib/server/devices/hmIPDevices/hmIpDevice.d.ts +1 -2
  274. package/lib/server/devices/hmIPDevices/hmIpDevice.js +2 -3
  275. package/lib/server/devices/hmIPDevices/hmIpGriff.d.ts +36 -5
  276. package/lib/server/devices/hmIPDevices/hmIpGriff.js +76 -33
  277. package/lib/server/devices/hmIPDevices/hmIpHeizgruppe.d.ts +25 -5
  278. package/lib/server/devices/hmIPDevices/hmIpHeizgruppe.js +27 -14
  279. package/lib/server/devices/hmIPDevices/hmIpHeizung.d.ts +13 -3
  280. package/lib/server/devices/hmIPDevices/hmIpHeizung.js +33 -12
  281. package/lib/server/devices/hmIPDevices/hmIpLampe.d.ts +7 -1
  282. package/lib/server/devices/hmIPDevices/hmIpLampe.js +11 -7
  283. package/lib/server/devices/hmIPDevices/hmIpPraezenz.d.ts +19 -9
  284. package/lib/server/devices/hmIPDevices/hmIpPraezenz.js +33 -11
  285. package/lib/server/devices/hmIPDevices/hmIpRoll.d.ts +4 -2
  286. package/lib/server/devices/hmIPDevices/hmIpRoll.js +25 -23
  287. package/lib/server/devices/hmIPDevices/hmIpTaster.d.ts +28 -4
  288. package/lib/server/devices/hmIPDevices/hmIpTaster.js +37 -8
  289. package/lib/server/devices/hmIPDevices/hmIpTherm.d.ts +11 -1
  290. package/lib/server/devices/hmIPDevices/hmIpTherm.js +26 -5
  291. package/lib/server/devices/hmIPDevices/hmIpTuer.d.ts +9 -1
  292. package/lib/server/devices/hmIPDevices/hmIpTuer.js +17 -4
  293. package/lib/server/devices/hmIPDevices/hmIpWippe.d.ts +27 -0
  294. package/lib/server/devices/hmIPDevices/hmIpWippe.js +3 -0
  295. package/lib/server/devices/iDeviceUpdater.d.ts +14 -0
  296. package/lib/server/devices/index.d.ts +5 -2
  297. package/lib/server/devices/index.js +8 -2
  298. package/lib/server/devices/jsObject/jsObjectEnergyManager.d.ts +5 -1
  299. package/lib/server/devices/jsObject/jsObjectEnergyManager.js +9 -3
  300. package/lib/server/devices/nameAmountValuePair.d.ts +5 -0
  301. package/lib/server/devices/nameAmountValuePair.js +10 -0
  302. package/lib/server/devices/scene/room-scene.d.ts +23 -6
  303. package/lib/server/devices/scene/room-scene.js +18 -4
  304. package/lib/server/devices/sharedFunctions/lampUtils.d.ts +11 -2
  305. package/lib/server/devices/sharedFunctions/lampUtils.js +79 -25
  306. package/lib/server/devices/shelly/shellyDevice.d.ts +2 -1
  307. package/lib/server/devices/shelly/shellyDevice.js +2 -1
  308. package/lib/server/devices/shelly/shellyTrv.d.ts +37 -17
  309. package/lib/server/devices/shelly/shellyTrv.js +66 -45
  310. package/lib/server/devices/tuya/tuyaDevice.d.ts +2 -1
  311. package/lib/server/devices/tuya/tuyaDevice.js +2 -1
  312. package/lib/server/devices/tuya/tuyaGarageOpener.d.ts +3 -0
  313. package/lib/server/devices/tuya/tuyaGarageOpener.js +3 -0
  314. package/lib/server/devices/tv/samsungTv.d.ts +1 -0
  315. package/lib/server/devices/tv/samsungTv.js +1 -0
  316. package/lib/server/devices/tv/tvDevice.d.ts +7 -1
  317. package/lib/server/devices/tv/tvDevice.js +4 -3
  318. package/lib/server/devices/wledDevice.d.ts +15 -3
  319. package/lib/server/devices/wledDevice.js +42 -16
  320. package/lib/server/devices/zigbee/BaseDevices/ZigbeeActuator.d.ts +17 -4
  321. package/lib/server/devices/zigbee/BaseDevices/ZigbeeActuator.js +30 -15
  322. package/lib/server/devices/zigbee/BaseDevices/index.d.ts +1 -0
  323. package/lib/server/devices/zigbee/BaseDevices/index.js +3 -0
  324. package/lib/server/devices/zigbee/BaseDevices/zigbeeDevice.d.ts +4 -5
  325. package/lib/server/devices/zigbee/BaseDevices/zigbeeDevice.js +15 -22
  326. package/lib/server/devices/zigbee/BaseDevices/zigbeeDimmer.d.ts +10 -25
  327. package/lib/server/devices/zigbee/BaseDevices/zigbeeDimmer.js +27 -62
  328. package/lib/server/devices/zigbee/BaseDevices/zigbeeHeater.d.ts +34 -13
  329. package/lib/server/devices/zigbee/BaseDevices/zigbeeHeater.js +60 -34
  330. package/lib/server/devices/zigbee/BaseDevices/zigbeeLamp.d.ts +16 -0
  331. package/lib/server/devices/zigbee/BaseDevices/zigbeeLamp.js +35 -0
  332. package/lib/server/devices/zigbee/BaseDevices/zigbeeLedRGBCCT.d.ts +9 -8
  333. package/lib/server/devices/zigbee/BaseDevices/zigbeeLedRGBCCT.js +16 -13
  334. package/lib/server/devices/zigbee/BaseDevices/zigbeeMagnetContact.d.ts +26 -7
  335. package/lib/server/devices/zigbee/BaseDevices/zigbeeMagnetContact.js +52 -22
  336. package/lib/server/devices/zigbee/BaseDevices/zigbeeMotionSensor.d.ts +30 -14
  337. package/lib/server/devices/zigbee/BaseDevices/zigbeeMotionSensor.js +62 -38
  338. package/lib/server/devices/zigbee/BaseDevices/zigbeeShutter.d.ts +12 -3
  339. package/lib/server/devices/zigbee/BaseDevices/zigbeeShutter.js +28 -19
  340. package/lib/server/devices/zigbee/BaseDevices/zigbeeSwitch.d.ts +9 -1
  341. package/lib/server/devices/zigbee/BaseDevices/zigbeeSwitch.js +8 -1
  342. package/lib/server/devices/zigbee/zigbeeAqaraMagnetContact.d.ts +1 -0
  343. package/lib/server/devices/zigbee/zigbeeAqaraMagnetContact.js +1 -0
  344. package/lib/server/devices/zigbee/zigbeeAqaraOpple3Switch.d.ts +16 -0
  345. package/lib/server/devices/zigbee/zigbeeAqaraOpple3Switch.js +16 -0
  346. package/lib/server/devices/zigbee/zigbeeAquaraMotion.d.ts +6 -0
  347. package/lib/server/devices/zigbee/zigbeeAquaraMotion.js +7 -3
  348. package/lib/server/devices/zigbee/zigbeeAquaraVibra.d.ts +58 -11
  349. package/lib/server/devices/zigbee/zigbeeAquaraVibra.js +115 -27
  350. package/lib/server/devices/zigbee/zigbeeAquaraWater.d.ts +28 -8
  351. package/lib/server/devices/zigbee/zigbeeAquaraWater.js +54 -30
  352. package/lib/server/devices/zigbee/zigbeeBlitzShp.d.ts +15 -5
  353. package/lib/server/devices/zigbee/zigbeeBlitzShp.js +22 -14
  354. package/lib/server/devices/zigbee/zigbeeEuroHeater.d.ts +10 -4
  355. package/lib/server/devices/zigbee/zigbeeEuroHeater.js +16 -10
  356. package/lib/server/devices/zigbee/zigbeeHeimanSmoke.d.ts +34 -7
  357. package/lib/server/devices/zigbee/zigbeeHeimanSmoke.js +58 -20
  358. package/lib/server/devices/zigbee/zigbeeIkeaShutter.d.ts +1 -0
  359. package/lib/server/devices/zigbee/zigbeeIkeaShutter.js +2 -1
  360. package/lib/server/devices/zigbee/zigbeeIkeaSteckdose.d.ts +2 -0
  361. package/lib/server/devices/zigbee/zigbeeIkeaSteckdose.js +3 -1
  362. package/lib/server/devices/zigbee/zigbeeIlluActuator.d.ts +1 -2
  363. package/lib/server/devices/zigbee/zigbeeIlluActuator.js +2 -11
  364. package/lib/server/devices/zigbee/zigbeeIlluDimmer.d.ts +1 -1
  365. package/lib/server/devices/zigbee/zigbeeIlluDimmer.js +1 -1
  366. package/lib/server/devices/zigbee/zigbeeIlluLampe.d.ts +3 -10
  367. package/lib/server/devices/zigbee/zigbeeIlluLampe.js +3 -32
  368. package/lib/server/devices/zigbee/zigbeeIlluLedRGBCCT.d.ts +1 -1
  369. package/lib/server/devices/zigbee/zigbeeIlluLedRGBCCT.js +1 -1
  370. package/lib/server/devices/zigbee/zigbeeIlluShutter.d.ts +1 -0
  371. package/lib/server/devices/zigbee/zigbeeIlluShutter.js +5 -4
  372. package/lib/server/devices/zigbee/zigbeeInnr142C.d.ts +1 -1
  373. package/lib/server/devices/zigbee/zigbeeInnr142C.js +1 -1
  374. package/lib/server/devices/zigbee/zigbeeLinkindLedRgbCct.d.ts +1 -1
  375. package/lib/server/devices/zigbee/zigbeeLinkindLedRgbCct.js +1 -1
  376. package/lib/server/devices/zigbee/zigbeeOsramDimmer.d.ts +1 -1
  377. package/lib/server/devices/zigbee/zigbeeOsramDimmer.js +1 -1
  378. package/lib/server/devices/zigbee/zigbeeSMaBiTMagnetContact.d.ts +1 -0
  379. package/lib/server/devices/zigbee/zigbeeSMaBiTMagnetContact.js +1 -0
  380. package/lib/server/devices/zigbee/zigbeeSonoffMotion.d.ts +1 -0
  381. package/lib/server/devices/zigbee/zigbeeSonoffMotion.js +1 -0
  382. package/lib/server/devices/zigbee/zigbeeSonoffTemp.d.ts +34 -8
  383. package/lib/server/devices/zigbee/zigbeeSonoffTemp.js +50 -13
  384. package/lib/server/devices/zigbee/zigbeeTuyaValve.d.ts +10 -3
  385. package/lib/server/devices/zigbee/zigbeeTuyaValve.js +11 -6
  386. package/lib/server/devices/zigbee/zigbeeUbisysActuator.d.ts +9 -2
  387. package/lib/server/devices/zigbee/zigbeeUbisysActuator.js +10 -8
  388. package/lib/server/devices/zigbee/zigbeeUbisysLampe.d.ts +8 -9
  389. package/lib/server/devices/zigbee/zigbeeUbisysLampe.js +14 -24
  390. package/lib/server/devices/zigbee/zigbeeUbisysShutter.d.ts +1 -0
  391. package/lib/server/devices/zigbee/zigbeeUbisysShutter.js +2 -1
  392. package/lib/server/ioBroker/connection.d.ts +21 -20
  393. package/lib/server/ioBroker/connection.js +37 -28
  394. package/lib/server/ioBroker/ioBroker.main.d.ts +3 -0
  395. package/lib/server/ioBroker/ioBroker.main.js +4 -3
  396. package/lib/server/ioBroker/iobrokerConnectionLogging.d.ts +3 -0
  397. package/lib/server/ioBroker/iobrokerConnectionLogging.js +4 -0
  398. package/lib/server/ioBroker/socketIOConnectOptions.d.ts +2 -2
  399. package/lib/server/ioBroker/socketIOConnectOptions.js +1 -0
  400. package/lib/server/ioBroker/socketIOVisCommand.d.ts +5 -1
  401. package/lib/server/ioBroker/socketIOVisCommand.js +1 -0
  402. package/lib/server/services/ShutterService.js +6 -6
  403. package/lib/server/services/Sonos/OwnSonosDevices.d.ts +3 -0
  404. package/lib/server/services/Sonos/OwnSonosDevices.js +3 -0
  405. package/lib/server/services/Sonos/mp3-server.d.ts +3 -1
  406. package/lib/server/services/Sonos/mp3-server.js +3 -1
  407. package/lib/server/services/Sonos/own-sonos-device.d.ts +4 -1
  408. package/lib/server/services/Sonos/own-sonos-device.js +4 -4
  409. package/lib/server/services/Sonos/polly-service.d.ts +7 -1
  410. package/lib/server/services/Sonos/polly-service.js +10 -8
  411. package/lib/server/services/Sonos/sonos-service.d.ts +0 -5
  412. package/lib/server/services/Sonos/sonos-service.js +6 -10
  413. package/lib/server/services/Telegram/telegram-Commands.js +5 -5
  414. package/lib/server/services/Telegram/telegram-service.d.ts +2 -1
  415. package/lib/server/services/Telegram/telegram-service.js +8 -3
  416. package/lib/server/services/Translation/IRessourceObject.d.ts +13 -0
  417. package/lib/server/services/Translation/IRessourceObject.js +2 -0
  418. package/lib/server/services/Translation/iRessources.d.ts +1 -4
  419. package/lib/server/services/Translation/index.d.ts +1 -0
  420. package/lib/server/services/Translation/res.d.ts +34 -19
  421. package/lib/server/services/Translation/res.js +34 -19
  422. package/lib/server/services/ac/ac-device.d.ts +48 -6
  423. package/lib/server/services/ac/ac-device.js +91 -36
  424. package/lib/server/services/ac/daikin-service.js +4 -3
  425. package/lib/server/services/ac/own-ac-devices.d.ts +3 -0
  426. package/lib/server/services/ac/own-ac-devices.js +3 -0
  427. package/lib/server/services/ac/own-daikin-device.d.ts +25 -0
  428. package/lib/server/services/ac/own-daikin-device.js +40 -7
  429. package/lib/server/services/api/api-service.d.ts +118 -53
  430. package/lib/server/services/api/api-service.js +170 -80
  431. package/lib/server/services/blockAutomaticHandler.d.ts +13 -8
  432. package/lib/server/services/blockAutomaticHandler.js +34 -15
  433. package/lib/server/services/calendar/index.d.ts +1 -0
  434. package/lib/server/services/calendar/index.js +3 -0
  435. package/lib/server/services/calendar/muell-tonne.d.ts +11 -1
  436. package/lib/server/services/calendar/muell-tonne.js +10 -0
  437. package/lib/server/services/calendar/m/303/274ll-service.d.ts +23 -8
  438. package/lib/server/services/calendar/m/303/274ll-service.js +11 -5
  439. package/lib/server/services/calendar/name-date-pair.d.ts +5 -0
  440. package/lib/server/services/calendar/name-date-pair.js +10 -0
  441. package/lib/server/services/dbo/iPersist.d.ts +103 -0
  442. package/lib/server/services/dbo/postgreSqlPersist.d.ts +23 -0
  443. package/lib/server/services/dbo/postgreSqlPersist.js +28 -5
  444. package/lib/server/services/file-info.d.ts +5 -0
  445. package/lib/server/services/file-info.js +10 -0
  446. package/lib/server/services/govee/govee-device-data.d.ts +25 -0
  447. package/lib/server/services/govee/govee-device-data.js +2 -0
  448. package/lib/server/services/govee/govee-service.d.ts +7 -9
  449. package/lib/server/services/govee/govee-service.js +73 -48
  450. package/lib/server/services/govee/own-govee-device.d.ts +19 -17
  451. package/lib/server/services/govee/own-govee-device.js +57 -56
  452. package/lib/server/services/govee/own-govee-devices.d.ts +3 -0
  453. package/lib/server/services/govee/own-govee-devices.js +3 -0
  454. package/lib/server/services/https-service.d.ts +3 -2
  455. package/lib/server/services/https-service.js +4 -3
  456. package/lib/server/services/index.d.ts +1 -0
  457. package/lib/server/services/index.js +3 -0
  458. package/lib/server/services/log-service/index.d.ts +1 -0
  459. package/lib/server/services/log-service/index.js +3 -0
  460. package/lib/server/services/log-service/log-debug-type.d.ts +13 -0
  461. package/lib/server/services/log-service/log-debug-type.js +17 -0
  462. package/lib/server/services/log-service/log-filter-data.d.ts +21 -12
  463. package/lib/server/services/log-service/log-filter-data.js +6 -15
  464. package/lib/server/services/log-service/log-service.d.ts +17 -4
  465. package/lib/server/services/log-service/log-service.js +30 -17
  466. package/lib/server/services/news-service.d.ts +9 -7
  467. package/lib/server/services/news-service.js +14 -15
  468. package/lib/server/services/room-service/room-service.d.ts +20 -4
  469. package/lib/server/services/room-service/room-service.js +26 -10
  470. package/lib/server/services/settings-service.d.ts +6 -2
  471. package/lib/server/services/settings-service.js +3 -2
  472. package/lib/server/services/time-callback-service.js +1 -1
  473. package/lib/server/services/utils/RGB.d.ts +6 -0
  474. package/lib/server/services/utils/RGB.js +11 -0
  475. package/lib/server/services/utils/catchEmResult.d.ts +5 -0
  476. package/lib/server/services/utils/catchEmResult.js +10 -0
  477. package/lib/server/services/utils/energy-consumer-state-change.d.ts +6 -0
  478. package/lib/server/services/utils/energy-consumer-state-change.js +10 -0
  479. package/lib/server/services/utils/energy-manager-utils.d.ts +3 -14
  480. package/lib/server/services/utils/energy-manager-utils.js +2 -2
  481. package/lib/server/services/utils/iDisposeable.d.ts +6 -0
  482. package/lib/server/services/utils/index.d.ts +4 -1
  483. package/lib/server/services/utils/index.js +8 -1
  484. package/lib/server/services/utils/{ringstorage.d.ts → ringStorage.d.ts} +1 -1
  485. package/lib/server/services/utils/{ringstorage.js → ringStorage.js} +3 -3
  486. package/lib/server/services/utils/utils.d.ts +9 -13
  487. package/lib/server/services/victron/victron-device.d.ts +27 -10
  488. package/lib/server/services/victron/victron-device.js +94 -25
  489. package/lib/server/services/weather/index.d.ts +2 -0
  490. package/lib/server/services/weather/index.js +3 -0
  491. package/lib/server/services/weather/rain-next-minutes-info.d.ts +5 -0
  492. package/lib/server/services/weather/rain-next-minutes-info.js +10 -0
  493. package/lib/server/services/weather/weather-current.d.ts +0 -2
  494. package/lib/server/services/weather/weather-feelsLike.d.ts +15 -0
  495. package/lib/server/services/weather/weather-response.d.ts +16 -0
  496. package/lib/server/services/weather/weather-response.js +2 -0
  497. package/lib/server/services/weather/weather-service.d.ts +15 -18
  498. package/lib/server/services/weather/weather-service.js +32 -22
  499. package/lib/server/services/weather/weather-temp.d.ts +21 -0
  500. package/lib/tsconfig.tsbuildinfo +1 -1
  501. package/package.json +6 -8
  502. package/lib/models/iTemperaturDataPoint.d.ts +0 -9
  503. package/lib/models/persistence/RoomDetailInfo.d.ts +0 -6
  504. package/lib/models/persistence/RoomDetailInfo.js +0 -11
  505. package/lib/models/persistence/temperaturDataPoint.d.ts +0 -10
  506. package/lib/models/persistence/temperaturDataPoint.js +0 -14
  507. /package/lib/{models/iTemperaturDataPoint.js → server/config/iBlockAutomaticHandlerDefaults.js} +0 -0
@@ -1,4 +1,27 @@
1
1
  "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
2
25
  Object.defineProperty(exports, "__esModule", { value: true });
3
26
  exports.ZigbeeAquaraVibra = void 0;
4
27
  const deviceType_1 = require("../deviceType");
@@ -6,67 +29,118 @@ const services_1 = require("../../services");
6
29
  const models_1 = require("../../../models");
7
30
  const BaseDevices_1 = require("./BaseDevices");
8
31
  const DeviceCapability_1 = require("../DeviceCapability");
32
+ const console = __importStar(require("console"));
9
33
  class ZigbeeAquaraVibra extends BaseDevices_1.ZigbeeDevice {
10
- get lastBatteryPersist() {
11
- return this._lastBatteryPersist;
12
- }
13
- get battery() {
14
- return this._battery;
15
- }
16
34
  constructor(pInfo) {
17
35
  super(pInfo, deviceType_1.DeviceType.ZigbeeAquaraVibra);
18
- this._battery = -99;
19
- this._lastBatteryPersist = 0;
36
+ /**
37
+ * The sensitivity of the vibration sensor
38
+ */
20
39
  this.sensitivity = '';
40
+ /**
41
+ * The detected tilt angle of the vibration sensor
42
+ */
21
43
  this.tiltAngle = 0;
44
+ /**
45
+ * The detected tilt angle on the x-axis of the vibration sensor
46
+ */
22
47
  this.tiltAngleX = 0;
48
+ /**
49
+ * The detected tilt angle on the x-axis of the vibration sensor
50
+ */
23
51
  this.tiltAngleXAbs = 0;
52
+ /**
53
+ * The detected tilt angle on the y-axis of the vibration sensor
54
+ */
24
55
  this.tiltAngleY = 0;
56
+ /**
57
+ * The detected tilt angle on the y-axis in absolute values of the vibration sensor
58
+ */
25
59
  this.tiltAngleYAbs = 0;
60
+ /**
61
+ * The detected tilt angle on the z-axis of the vibration sensor
62
+ */
26
63
  this.tiltAngleZ = 0;
64
+ /**
65
+ * Whether the vibration sensor is tilted
66
+ */
27
67
  this.tilt = false;
28
- this.vibration = false;
29
- this.vibrationBlockedByGriffTimeStamp = 0;
30
- this.vibrationBlockedByMotionTimeStamp = 0;
68
+ this._battery = -99;
69
+ this._lastBatteryPersist = 0;
70
+ this._vibration = false;
71
+ this._vibrationBlockedByHandleTimeStamp = 0;
72
+ this._vibrationBlockedByMotionTimeStamp = 0;
31
73
  this._idSensitivity = '';
32
- // TODO Set Sensitivity
33
74
  this._vibrationBlockedByGriff = false;
34
75
  this._vibrationBlockedByMotion = false;
76
+ this._lastBatteryLevel = -1;
77
+ this._batteryLevelCallbacks = [];
35
78
  this.deviceCapabilities.push(DeviceCapability_1.DeviceCapability.batteryDriven);
36
79
  this.deviceCapabilities.push(DeviceCapability_1.DeviceCapability.vibrationSensor);
37
80
  this._alarmMessage = services_1.Res.vibrationAlarm(this.info.customName);
38
81
  services_1.PollyService.preloadTTS(this._alarmMessage);
39
82
  this._idSensitivity = `${this.info.fullID}.sensitivity`;
40
83
  }
41
- get vibrationBlockedByGriff() {
84
+ /** @inheritDoc */
85
+ get vibration() {
86
+ return this._vibration;
87
+ }
88
+ /** @inheritDoc */
89
+ get vibrationBlockedByMotionTimeStamp() {
90
+ return this._vibrationBlockedByMotionTimeStamp;
91
+ }
92
+ /** @inheritDoc */
93
+ get vibrationBlockedByHandleTimeStamp() {
94
+ return this._vibrationBlockedByHandleTimeStamp;
95
+ }
96
+ // TODO Set Sensitivity
97
+ /** @inheritDoc */
98
+ get lastBatteryPersist() {
99
+ return this._lastBatteryPersist;
100
+ }
101
+ /** @inheritDoc */
102
+ get battery() {
103
+ return this._battery;
104
+ }
105
+ /** @inheritDoc */
106
+ get vibrationBlockedByHandle() {
42
107
  return this._vibrationBlockedByGriff;
43
108
  }
44
- set vibrationBlockedByGriff(pVal) {
109
+ /** @inheritDoc */
110
+ set vibrationBlockedByHandle(pVal) {
45
111
  this.log(models_1.LogLevel.Debug, `${pVal ? 'disa' : 'a'}rming vibration alarm for ${this.info.customName} due to handle`);
46
112
  if (pVal) {
47
- this.vibrationBlockedByGriffTimeStamp = new Date().getTime();
113
+ this._vibrationBlockedByHandleTimeStamp = new Date().getTime();
48
114
  }
49
115
  this._vibrationBlockedByGriff = pVal;
50
116
  }
117
+ /** @inheritDoc */
51
118
  get vibrationBlockedByMotion() {
52
119
  return this._vibrationBlockedByMotion;
53
120
  }
121
+ /** @inheritDoc */
54
122
  set vibrationBlockedByMotion(pVal) {
55
123
  this.log(models_1.LogLevel.Debug, `${pVal ? 'Dea' : 'A'}ktiviere Vibrationsalarm für ${this.info.customName} in Bezug auf Bewegung`);
56
124
  if (pVal) {
57
- this.vibrationBlockedByMotionTimeStamp = services_1.Utils.nowMS();
125
+ this._vibrationBlockedByMotionTimeStamp = services_1.Utils.nowMS();
58
126
  }
59
127
  this._vibrationBlockedByMotion = pVal;
60
128
  }
129
+ /** @inheritDoc */
130
+ addBatteryLevelCallback(pCallback) {
131
+ this._batteryLevelCallbacks.push(pCallback);
132
+ }
133
+ /** @inheritDoc */
61
134
  update(idSplit, state, initial = false) {
62
135
  this.log(models_1.LogLevel.DeepTrace, `Stecker Update: ID: ${idSplit.join('.')} JSON: ${JSON.stringify(state)}`);
63
136
  super.update(idSplit, state, initial, true);
64
137
  switch (idSplit[3]) {
65
138
  case 'battery':
66
139
  this._battery = state.val;
140
+ this.checkForBatteryChange();
67
141
  this.persistBatteryDevice();
68
142
  if (this._battery < 20) {
69
- this.log(models_1.LogLevel.Warn, `Das Zigbee Gerät hat unter 20% Batterie.`);
143
+ this.log(models_1.LogLevel.Warn, 'Das Zigbee Gerät hat unter 20% Batterie.');
70
144
  }
71
145
  break;
72
146
  case 'sensitivity':
@@ -87,8 +161,8 @@ class ZigbeeAquaraVibra extends BaseDevices_1.ZigbeeDevice {
87
161
  break;
88
162
  case 'vibration':
89
163
  this.log(initial ? models_1.LogLevel.DeepTrace : models_1.LogLevel.Trace, `Vibrationssensor Update für ${this.info.customName} auf Vibration erkannt: ${state.val}`);
90
- this.vibration = state.val;
91
- if (this.vibration) {
164
+ this._vibration = state.val;
165
+ if (this._vibration) {
92
166
  services_1.Utils.guardedTimeout(() => {
93
167
  this.alarmCheck();
94
168
  }, 8500, this);
@@ -123,7 +197,7 @@ class ZigbeeAquaraVibra extends BaseDevices_1.ZigbeeDevice {
123
197
  break;
124
198
  }
125
199
  if (this._idSensitivity === '') {
126
- this.log(models_1.LogLevel.Error, `Keine Switch ID bekannt.`);
200
+ this.log(models_1.LogLevel.Error, 'Keine Switch ID bekannt.');
127
201
  return;
128
202
  }
129
203
  this.log(models_1.LogLevel.Debug, `Vibration Sensitivität schalten Wert: ${result}`);
@@ -131,10 +205,20 @@ class ZigbeeAquaraVibra extends BaseDevices_1.ZigbeeDevice {
131
205
  console.log(`Stecker schalten ergab Fehler: ${err}`);
132
206
  });
133
207
  }
208
+ /** @inheritDoc */
209
+ persistBatteryDevice() {
210
+ var _a;
211
+ const now = services_1.Utils.nowMS();
212
+ if (this._lastBatteryPersist + 60000 > now) {
213
+ return;
214
+ }
215
+ (_a = services_1.Utils.dbo) === null || _a === void 0 ? void 0 : _a.persistBatteryDevice(this);
216
+ this._lastBatteryPersist = now;
217
+ }
134
218
  alarmCheck() {
135
219
  this.log(models_1.LogLevel.Debug, `Alarmcheck für ${this.info.customName} Alarmblock Wert: ${this._vibrationBlockedByGriff}`);
136
220
  if (this._vibrationBlockedByGriff) {
137
- this.log(models_1.LogLevel.Debug, `Window is open; ignoring vibration alarm.`);
221
+ this.log(models_1.LogLevel.Debug, 'Window is open; ignoring vibration alarm.');
138
222
  return;
139
223
  }
140
224
  if (this._vibrationBlockedByMotion) {
@@ -145,14 +229,18 @@ class ZigbeeAquaraVibra extends BaseDevices_1.ZigbeeDevice {
145
229
  services_1.SonosService.speakOnAll(message);
146
230
  this.log(models_1.LogLevel.Alert, message);
147
231
  }
148
- persistBatteryDevice() {
149
- var _a;
150
- const now = services_1.Utils.nowMS();
151
- if (this._lastBatteryPersist + 60000 > now) {
232
+ /**
233
+ * Checks whether the battery level did change and if so fires the callbacks
234
+ */
235
+ checkForBatteryChange() {
236
+ const newLevel = this.battery;
237
+ if (newLevel == -1 || newLevel == this._lastBatteryLevel) {
152
238
  return;
153
239
  }
154
- (_a = services_1.Utils.dbo) === null || _a === void 0 ? void 0 : _a.persistBatteryDevice(this);
155
- this._lastBatteryPersist = now;
240
+ for (const cb of this._batteryLevelCallbacks) {
241
+ cb(new models_1.BatteryLevelChangeAction(this));
242
+ }
243
+ this._lastBatteryLevel = newLevel;
156
244
  }
157
245
  }
158
246
  exports.ZigbeeAquaraVibra = ZigbeeAquaraVibra;
@@ -1,25 +1,45 @@
1
1
  /// <reference types="node" />
2
2
  import { ZigbeeDevice } from './BaseDevices';
3
+ import { BatteryLevelChangeAction } from '../../../models';
3
4
  import { IoBrokerDeviceInfo } from '../IoBrokerDeviceInfo';
4
5
  import { iBatteryDevice } from '../baseDeviceInterfaces';
5
6
  export declare class ZigbeeAquaraWater extends ZigbeeDevice implements iBatteryDevice {
6
- private _battery;
7
- private _lastBatteryPersist;
8
- get lastBatteryPersist(): number;
9
- get battery(): number;
7
+ /**
8
+ * Whether water is detected
9
+ */
10
10
  water: boolean;
11
+ /**
12
+ * The timeout for the alarm
13
+ * @default undefined (no alarm active)
14
+ */
11
15
  iAlarmTimeout: NodeJS.Timeout | undefined;
16
+ private _battery;
17
+ private _lastBatteryPersist;
18
+ private _lastBatteryLevel;
19
+ private _batteryLevelCallbacks;
12
20
  private _messageAlarmFirst;
13
21
  private _messageAlarm;
14
22
  private _messageAlarmEnd;
15
23
  private _supressAlarmTimeStamp;
16
- constructor(pInfo: IoBrokerDeviceInfo);
17
24
  private _roomName;
18
- set roomName(val: string);
25
+ constructor(pInfo: IoBrokerDeviceInfo);
26
+ /** @inheritDoc */
27
+ get lastBatteryPersist(): number;
28
+ /** @inheritDoc */
29
+ get battery(): number;
30
+ /** @inheritDoc */
31
+ addBatteryLevelCallback(pCallback: (action: BatteryLevelChangeAction) => void): void;
32
+ /** @inheritDoc */
19
33
  update(idSplit: string[], state: ioBroker.State, initial?: boolean): void;
20
34
  stopAlarm(quiet?: boolean, timeout?: number): void;
21
- private startAlarm;
22
- private alarm;
35
+ /** @inheritDoc */
23
36
  persistBatteryDevice(): void;
37
+ /** @inheritDoc */
24
38
  dispose(): void;
39
+ private startAlarm;
40
+ private alarm;
41
+ /**
42
+ * Checks whether the battery level did change and if so fires the callbacks
43
+ */
44
+ private checkForBatteryChange;
25
45
  }
@@ -6,19 +6,23 @@ const services_1 = require("../../services");
6
6
  const BaseDevices_1 = require("./BaseDevices");
7
7
  const models_1 = require("../../../models");
8
8
  const DeviceCapability_1 = require("../DeviceCapability");
9
+ // TODO: Add iWaterSensor
9
10
  class ZigbeeAquaraWater extends BaseDevices_1.ZigbeeDevice {
10
- get lastBatteryPersist() {
11
- return this._lastBatteryPersist;
12
- }
13
- get battery() {
14
- return this._battery;
15
- }
16
11
  constructor(pInfo) {
17
12
  super(pInfo, deviceType_1.DeviceType.ZigbeeAquaraWater);
18
- this._battery = -99;
19
- this._lastBatteryPersist = 0;
13
+ /**
14
+ * Whether water is detected
15
+ */
20
16
  this.water = false;
17
+ /**
18
+ * The timeout for the alarm
19
+ * @default undefined (no alarm active)
20
+ */
21
21
  this.iAlarmTimeout = undefined;
22
+ this._battery = -99;
23
+ this._lastBatteryPersist = 0;
24
+ this._lastBatteryLevel = -1;
25
+ this._batteryLevelCallbacks = [];
22
26
  this._messageAlarmFirst = '';
23
27
  this._messageAlarm = '';
24
28
  this._messageAlarmEnd = '';
@@ -29,24 +33,29 @@ class ZigbeeAquaraWater extends BaseDevices_1.ZigbeeDevice {
29
33
  this._messageAlarm = services_1.Res.waterAlarmRepeat(this.info.customName, this._roomName);
30
34
  this._messageAlarmEnd = services_1.Res.waterAlarmEnd(this._roomName);
31
35
  }
32
- set roomName(val) {
33
- this._roomName = val;
34
- this._messageAlarmFirst = services_1.Res.waterAlarmStart(this.info.customName, this._roomName);
35
- this._messageAlarm = services_1.Res.waterAlarmRepeat(this.info.customName, this._roomName);
36
- this._messageAlarmEnd = services_1.Res.waterAlarmEnd(this._roomName);
37
- services_1.PollyService.preloadTTS(this._messageAlarmFirst);
38
- services_1.PollyService.preloadTTS(this._messageAlarm);
39
- services_1.PollyService.preloadTTS(this._messageAlarmEnd);
36
+ /** @inheritDoc */
37
+ get lastBatteryPersist() {
38
+ return this._lastBatteryPersist;
39
+ }
40
+ /** @inheritDoc */
41
+ get battery() {
42
+ return this._battery;
40
43
  }
44
+ /** @inheritDoc */
45
+ addBatteryLevelCallback(pCallback) {
46
+ this._batteryLevelCallbacks.push(pCallback);
47
+ }
48
+ /** @inheritDoc */
41
49
  update(idSplit, state, initial = false) {
42
50
  this.log(models_1.LogLevel.DeepTrace, `Water Update: ID: ${idSplit.join('.')} JSON: ${JSON.stringify(state)}`);
43
51
  super.update(idSplit, state, initial, true);
44
52
  switch (idSplit[3]) {
45
53
  case 'battery':
46
54
  this._battery = state.val;
55
+ this.checkForBatteryChange();
47
56
  this.persistBatteryDevice();
48
57
  if (this._battery < 20) {
49
- this.log(models_1.LogLevel.Warn, `Das Zigbee Gerät hat unter 20% Batterie.`);
58
+ this.log(models_1.LogLevel.Warn, 'Das Zigbee Gerät hat unter 20% Batterie.');
50
59
  }
51
60
  break;
52
61
  case 'detected':
@@ -80,9 +89,27 @@ class ZigbeeAquaraWater extends BaseDevices_1.ZigbeeDevice {
80
89
  services_1.SonosService.speakOnAll(message);
81
90
  });
82
91
  }
92
+ /** @inheritDoc */
93
+ persistBatteryDevice() {
94
+ var _a;
95
+ const now = services_1.Utils.nowMS();
96
+ if (this._lastBatteryPersist + 60000 > now) {
97
+ return;
98
+ }
99
+ (_a = services_1.Utils.dbo) === null || _a === void 0 ? void 0 : _a.persistBatteryDevice(this);
100
+ this._lastBatteryPersist = now;
101
+ }
102
+ /** @inheritDoc */
103
+ dispose() {
104
+ if (this.iAlarmTimeout) {
105
+ clearInterval(this.iAlarmTimeout);
106
+ this.iAlarmTimeout = undefined;
107
+ }
108
+ super.dispose();
109
+ }
83
110
  startAlarm() {
84
111
  if (services_1.Utils.nowMS() < this._supressAlarmTimeStamp) {
85
- this.log(models_1.LogLevel.Warn, `Would start alarm, but we are supressed.`);
112
+ this.log(models_1.LogLevel.Warn, 'Would start alarm, but we are supressed.');
86
113
  return;
87
114
  }
88
115
  if (this.iAlarmTimeout !== undefined) {
@@ -102,21 +129,18 @@ class ZigbeeAquaraWater extends BaseDevices_1.ZigbeeDevice {
102
129
  services_1.SonosService.speakOnAll(message, 80);
103
130
  });
104
131
  }
105
- persistBatteryDevice() {
106
- var _a;
107
- const now = services_1.Utils.nowMS();
108
- if (this._lastBatteryPersist + 60000 > now) {
132
+ /**
133
+ * Checks whether the battery level did change and if so fires the callbacks
134
+ */
135
+ checkForBatteryChange() {
136
+ const newLevel = this.battery;
137
+ if (newLevel == -1 || newLevel == this._lastBatteryLevel) {
109
138
  return;
110
139
  }
111
- (_a = services_1.Utils.dbo) === null || _a === void 0 ? void 0 : _a.persistBatteryDevice(this);
112
- this._lastBatteryPersist = now;
113
- }
114
- dispose() {
115
- if (this.iAlarmTimeout) {
116
- clearInterval(this.iAlarmTimeout);
117
- this.iAlarmTimeout = undefined;
140
+ for (const cb of this._batteryLevelCallbacks) {
141
+ cb(new models_1.BatteryLevelChangeAction(this));
118
142
  }
119
- super.dispose();
143
+ this._lastBatteryLevel = newLevel;
120
144
  }
121
145
  }
122
146
  exports.ZigbeeAquaraWater = ZigbeeAquaraWater;
@@ -4,24 +4,34 @@ import { iExcessEnergyConsumer } from '../baseDeviceInterfaces';
4
4
  import { IoBrokerDeviceInfo } from '../IoBrokerDeviceInfo';
5
5
  import { iLoadMeter } from '../baseDeviceInterfaces/iLoadMeter';
6
6
  export declare class ZigbeeBlitzShp extends ZigbeeActuator implements iExcessEnergyConsumer, iLoadMeter {
7
+ /** @inheritDoc */
8
+ settings: ActuatorSettings;
9
+ protected readonly _actuatorOnStateIdState: string;
7
10
  private _steckerOn;
8
- get steckerOn(): boolean;
9
11
  private _current;
10
- get current(): number;
11
12
  private _energy;
12
- get energy(): number;
13
13
  private _loadPower;
14
- get loadPower(): number;
15
- settings: ActuatorSettings;
16
14
  private readonly _availableForExcessEnergy;
17
15
  private _activatedByExcessEnergy;
18
16
  constructor(pInfo: IoBrokerDeviceInfo);
17
+ get current(): number;
18
+ get energy(): number;
19
+ /** @inheritDoc */
20
+ get loadPower(): number;
21
+ /** @inheritDoc */
19
22
  get energySettings(): ExcessEnergyConsumerSettings;
23
+ /** @inheritDoc */
20
24
  get currentConsumption(): number;
25
+ /** @inheritDoc */
21
26
  get on(): boolean;
27
+ /** @inheritDoc */
22
28
  isAvailableForExcessEnergy(): boolean;
29
+ /** @inheritDoc */
23
30
  update(idSplit: string[], state: ioBroker.State, initial?: boolean): void;
31
+ /** @inheritDoc */
24
32
  turnOnForExcessEnergy(): void;
33
+ /** @inheritDoc */
25
34
  turnOffDueToMissingEnergy(): void;
35
+ /** @inheritDoc */
26
36
  wasActivatedByExcessEnergy(): boolean;
27
37
  }
@@ -6,43 +6,48 @@ const models_1 = require("../../../models");
6
6
  const BaseDevices_1 = require("./BaseDevices");
7
7
  const DeviceCapability_1 = require("../DeviceCapability");
8
8
  class ZigbeeBlitzShp extends BaseDevices_1.ZigbeeActuator {
9
- get steckerOn() {
10
- return this._steckerOn;
11
- }
12
- get current() {
13
- return this._current;
14
- }
15
- get energy() {
16
- return this._energy;
17
- }
18
- get loadPower() {
19
- return this._loadPower;
20
- }
21
9
  constructor(pInfo) {
22
- super(pInfo, deviceType_1.DeviceType.ZigbeeBlitzShp, `${pInfo.fullID}.state`);
10
+ super(pInfo, deviceType_1.DeviceType.ZigbeeBlitzShp);
11
+ /** @inheritDoc */
12
+ this.settings = new models_1.ActuatorSettings();
23
13
  this._steckerOn = false;
24
14
  this._current = 0;
25
15
  this._energy = 0;
26
16
  this._loadPower = 0;
27
- this.settings = new models_1.ActuatorSettings();
28
17
  this._availableForExcessEnergy = true;
29
18
  this._activatedByExcessEnergy = false;
19
+ this._actuatorOnStateIdState = `${pInfo.fullID}.state`;
30
20
  this.settings.energySettings = new models_1.ExcessEnergyConsumerSettings();
31
21
  this.deviceCapabilities.push(DeviceCapability_1.DeviceCapability.excessEnergyConsumer);
32
22
  this.deviceCapabilities.push(DeviceCapability_1.DeviceCapability.loadMetering);
33
23
  }
24
+ get current() {
25
+ return this._current;
26
+ }
27
+ get energy() {
28
+ return this._energy;
29
+ }
30
+ /** @inheritDoc */
31
+ get loadPower() {
32
+ return this._loadPower;
33
+ }
34
+ /** @inheritDoc */
34
35
  get energySettings() {
35
36
  return this.settings.energySettings;
36
37
  }
38
+ /** @inheritDoc */
37
39
  get currentConsumption() {
38
40
  return this._loadPower;
39
41
  }
42
+ /** @inheritDoc */
40
43
  get on() {
41
44
  return this._steckerOn;
42
45
  }
46
+ /** @inheritDoc */
43
47
  isAvailableForExcessEnergy() {
44
48
  return this._availableForExcessEnergy;
45
49
  }
50
+ /** @inheritDoc */
46
51
  update(idSplit, state, initial = false) {
47
52
  this.log(models_1.LogLevel.DeepTrace, `Stecker Update: ID: ${idSplit.join('.')} JSON: ${JSON.stringify(state)}`);
48
53
  super.update(idSplit, state, initial, true);
@@ -69,13 +74,16 @@ class ZigbeeBlitzShp extends BaseDevices_1.ZigbeeActuator {
69
74
  break;
70
75
  }
71
76
  }
77
+ /** @inheritDoc */
72
78
  turnOnForExcessEnergy() {
73
79
  this._activatedByExcessEnergy = true;
74
80
  this.setActuator(new models_1.ActuatorSetStateCommand(models_1.CommandSource.Automatic, true, 'Turn on for excess energy'));
75
81
  }
82
+ /** @inheritDoc */
76
83
  turnOffDueToMissingEnergy() {
77
84
  this.setActuator(new models_1.ActuatorSetStateCommand(models_1.CommandSource.Automatic, false, 'Turn off due to missing energy'));
78
85
  }
86
+ /** @inheritDoc */
79
87
  wasActivatedByExcessEnergy() {
80
88
  return this._activatedByExcessEnergy;
81
89
  }
@@ -12,24 +12,30 @@ export declare class ZigbeeEuroHeater extends ZigbeeHeater implements iDisposabl
12
12
  private _recalcTimeout;
13
13
  private _forcedRefreshInterval;
14
14
  constructor(pInfo: IoBrokerDeviceInfo);
15
+ /** @inheritDoc */
15
16
  get seasonTurnOff(): boolean;
17
+ /** @inheritDoc */
16
18
  set seasonTurnOff(value: boolean);
17
- set roomTemperatur(value: number);
19
+ /** @inheritDoc */
18
20
  get roomTemperature(): number;
21
+ /** @inheritDoc */
19
22
  get desiredTemperature(): number;
23
+ /** @inheritDoc */
20
24
  set desiredTemperature(val: number);
25
+ protected set roomTemperatur(value: number);
21
26
  private get tempDiff();
27
+ /** @inheritDoc */
22
28
  update(idSplit: string[], state: ioBroker.State, initial?: boolean): void;
23
29
  recalcLevel(): void;
24
30
  private checkTempDiff;
25
31
  private setLocalDiff;
26
32
  private setTargetTemperatur;
33
+ /** @inheritDoc */
27
34
  dispose(): void;
28
35
  private setValve;
29
36
  /**
30
- * Sets the mode (1 = manual valve, 2 = automatic temp based)
31
- * @param {1 | 2} targetMode
32
- * @private
37
+ * Sets the mode
38
+ * @param targetMode - (1 = manual valve, 2 = automatic temp based)
33
39
  */
34
40
  private setMode;
35
41
  }
@@ -23,9 +23,11 @@ class ZigbeeEuroHeater extends BaseDevices_1.ZigbeeHeater {
23
23
  this.setMode(this.settings.controlByPid || this.seasonTurnOff ? 1 : 2);
24
24
  }, 6 * 60 * 60 * 1000, this);
25
25
  }
26
+ /** @inheritDoc */
26
27
  get seasonTurnOff() {
27
28
  return this._seasonTurnOff;
28
29
  }
30
+ /** @inheritDoc */
29
31
  set seasonTurnOff(value) {
30
32
  this._seasonTurnOff = value;
31
33
  if (value) {
@@ -35,23 +37,26 @@ class ZigbeeEuroHeater extends BaseDevices_1.ZigbeeHeater {
35
37
  }
36
38
  this.setMode(this.settings.controlByPid ? 1 : 2);
37
39
  }
38
- set roomTemperatur(value) {
39
- this._roomTemperature = value;
40
- if (this.settings.useOwnTemperatur) {
41
- return;
42
- }
43
- this.recalcLevel();
44
- }
40
+ /** @inheritDoc */
45
41
  get roomTemperature() {
46
42
  return this._roomTemperature;
47
43
  }
44
+ /** @inheritDoc */
48
45
  get desiredTemperature() {
49
46
  return this._desiredTemperatur;
50
47
  }
48
+ /** @inheritDoc */
51
49
  set desiredTemperature(val) {
52
50
  this._desiredTemperatur = val;
53
51
  this.recalcLevel();
54
52
  }
53
+ set roomTemperatur(value) {
54
+ this._roomTemperature = value;
55
+ if (this.settings.useOwnTemperatur) {
56
+ return;
57
+ }
58
+ this.recalcLevel();
59
+ }
55
60
  get tempDiff() {
56
61
  var _a, _b, _c, _d;
57
62
  const tempChangeMs = (_b = (_a = this.stateMap.get('local_temp')) === null || _a === void 0 ? void 0 : _a.lc) !== null && _b !== void 0 ? _b : 0;
@@ -63,6 +68,7 @@ class ZigbeeEuroHeater extends BaseDevices_1.ZigbeeHeater {
63
68
  return this._targetTempVal - this._temperatur;
64
69
  }
65
70
  }
71
+ /** @inheritDoc */
66
72
  update(idSplit, state, initial = false) {
67
73
  switch (idSplit[3]) {
68
74
  case 'valve_position':
@@ -154,6 +160,7 @@ class ZigbeeEuroHeater extends BaseDevices_1.ZigbeeHeater {
154
160
  this.log(models_1.LogLevel.Debug, `Setting new Target Temp (${targetTemp}) for Euro Valve`);
155
161
  this.setState(this._setPointTemperaturID, targetTemp);
156
162
  }
163
+ /** @inheritDoc */
157
164
  dispose() {
158
165
  clearInterval(this._forcedRefreshInterval);
159
166
  }
@@ -169,9 +176,8 @@ class ZigbeeEuroHeater extends BaseDevices_1.ZigbeeHeater {
169
176
  }, 10000, this);
170
177
  }
171
178
  /**
172
- * Sets the mode (1 = manual valve, 2 = automatic temp based)
173
- * @param {1 | 2} targetMode
174
- * @private
179
+ * Sets the mode
180
+ * @param targetMode - (1 = manual valve, 2 = automatic temp based)
175
181
  */
176
182
  setMode(targetMode) {
177
183
  this.setState(this._setModeId, targetMode);