hoffmation-base 3.0.0-alpha.4 → 3.0.0-alpha.40

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 (501) hide show
  1. package/lib/index.d.ts +5 -1
  2. package/lib/index.js +20 -20
  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/humiditySensorChangeAction.d.ts +16 -0
  8. package/lib/models/action/humiditySensorChangeAction.js +15 -0
  9. package/lib/models/action/index.d.ts +7 -0
  10. package/lib/models/action/index.js +25 -0
  11. package/lib/models/action/motionSensorAction.d.ts +16 -0
  12. package/lib/models/action/motionSensorAction.js +15 -0
  13. package/lib/models/action/presenceGroupFirstEnterAction.d.ts +7 -0
  14. package/lib/models/action/presenceGroupFirstEnterAction.js +13 -0
  15. package/lib/models/action/presenceGroupLastLeftAction.d.ts +7 -0
  16. package/lib/models/action/presenceGroupLastLeftAction.js +13 -0
  17. package/lib/models/action/shutterPositionChangedAction.d.ts +13 -0
  18. package/lib/models/action/shutterPositionChangedAction.js +15 -0
  19. package/lib/models/action/temperatureSensorChangeAction.d.ts +16 -0
  20. package/lib/models/action/temperatureSensorChangeAction.js +15 -0
  21. package/lib/models/blockAutomaticSettings.d.ts +23 -0
  22. package/lib/models/blockAutomaticSettings.js +19 -0
  23. package/lib/models/command/ShutterSetLevelCommand.d.ts +9 -1
  24. package/lib/models/command/ShutterSetLevelCommand.js +9 -1
  25. package/lib/models/command/WindowRestoreDesiredPositionCommand.d.ts +7 -1
  26. package/lib/models/command/WindowRestoreDesiredPositionCommand.js +7 -1
  27. package/lib/models/command/WindowSetDesiredPositionCommand.d.ts +8 -1
  28. package/lib/models/command/WindowSetDesiredPositionCommand.js +8 -1
  29. package/lib/models/command/WindowSetRolloByWeatherStatusCommand.d.ts +7 -1
  30. package/lib/models/command/WindowSetRolloByWeatherStatusCommand.js +7 -1
  31. package/lib/models/command/actuatorSetStateCommand.d.ts +18 -3
  32. package/lib/models/command/actuatorSetStateCommand.js +15 -6
  33. package/lib/models/command/actuatorToggleCommand.d.ts +7 -2
  34. package/lib/models/command/actuatorToggleCommand.js +7 -4
  35. package/lib/models/command/actuatorWriteStateToDeviceCommand.d.ts +9 -2
  36. package/lib/models/command/actuatorWriteStateToDeviceCommand.js +13 -2
  37. package/lib/models/command/baseCommand.d.ts +23 -2
  38. package/lib/models/command/baseCommand.js +41 -1
  39. package/lib/models/command/blockAutomaticCommand.d.ts +32 -0
  40. package/lib/models/command/blockAutomaticCommand.js +40 -0
  41. package/lib/models/command/blockAutomaticLiftBlockCommand.d.ts +18 -0
  42. package/lib/models/command/blockAutomaticLiftBlockCommand.js +23 -0
  43. package/lib/models/command/blockAutomaticUntilCommand.d.ts +27 -0
  44. package/lib/models/command/blockAutomaticUntilCommand.js +32 -0
  45. package/lib/models/command/commandSource.d.ts +19 -0
  46. package/lib/models/command/commandSource.js +20 -0
  47. package/lib/models/command/commandType.d.ts +9 -0
  48. package/lib/models/command/commandType.js +9 -0
  49. package/lib/models/command/dimmerSetLightCommand.d.ts +13 -8
  50. package/lib/models/command/dimmerSetLightCommand.js +20 -14
  51. package/lib/models/command/floorSetAllShuttersCommand.d.ts +6 -5
  52. package/lib/models/command/floorSetAllShuttersCommand.js +6 -5
  53. package/lib/models/command/index.d.ts +3 -0
  54. package/lib/models/command/index.js +7 -1
  55. package/lib/models/command/lampSetLightCommand.d.ts +13 -2
  56. package/lib/models/command/lampSetLightCommand.js +15 -4
  57. package/lib/models/command/lampSetTimeBasedCommand.d.ts +15 -8
  58. package/lib/models/command/lampSetTimeBasedCommand.js +9 -11
  59. package/lib/models/command/lampToggleLightCommand.d.ts +7 -6
  60. package/lib/models/command/lampToggleLightCommand.js +7 -6
  61. package/lib/models/command/ledSetLightCommand.d.ts +21 -11
  62. package/lib/models/command/ledSetLightCommand.js +27 -17
  63. package/lib/models/command/lightGroupSwitchTimeConditionalCommand.d.ts +8 -1
  64. package/lib/models/command/lightGroupSwitchTimeConditionalCommand.js +8 -1
  65. package/lib/models/command/restoreTargetAutomaticValueCommand.d.ts +7 -2
  66. package/lib/models/command/restoreTargetAutomaticValueCommand.js +7 -4
  67. package/lib/models/command/roomRestoreLightCommand.d.ts +7 -1
  68. package/lib/models/command/roomRestoreLightCommand.js +7 -1
  69. package/lib/models/command/roomRestoreShutterPositionCommand.d.ts +8 -1
  70. package/lib/models/command/roomRestoreShutterPositionCommand.js +8 -1
  71. package/lib/models/command/roomSetLightTimeBasedCommand.d.ts +5 -4
  72. package/lib/models/command/roomSetLightTimeBasedCommand.js +5 -4
  73. package/lib/models/command/shutterSunriseUpCommand.d.ts +7 -1
  74. package/lib/models/command/shutterSunriseUpCommand.js +7 -1
  75. package/lib/models/command/shutterSunsetDownCommand.d.ts +7 -1
  76. package/lib/models/command/shutterSunsetDownCommand.js +7 -1
  77. package/lib/models/command/wledSetLightCommand.d.ts +16 -2
  78. package/lib/models/command/wledSetLightCommand.js +23 -7
  79. package/lib/models/connectionCallbacks.d.ts +4 -4
  80. package/lib/models/connectionCallbacks.js +1 -0
  81. package/lib/models/deviceConfig.d.ts +3 -3
  82. package/lib/models/deviceSettings/acSettings.d.ts +19 -5
  83. package/lib/models/deviceSettings/acSettings.js +23 -8
  84. package/lib/models/deviceSettings/actuatorSettings.d.ts +13 -4
  85. package/lib/models/deviceSettings/actuatorSettings.js +19 -9
  86. package/lib/models/deviceSettings/cameraSettings.d.ts +12 -0
  87. package/lib/models/deviceSettings/cameraSettings.js +12 -0
  88. package/lib/models/deviceSettings/dachsSettings.d.ts +3 -0
  89. package/lib/models/deviceSettings/dachsSettings.js +3 -0
  90. package/lib/models/deviceSettings/deviceSettings.d.ts +10 -0
  91. package/lib/models/deviceSettings/deviceSettings.js +16 -0
  92. package/lib/models/deviceSettings/dimmerSettings.d.ts +20 -0
  93. package/lib/models/deviceSettings/dimmerSettings.js +20 -0
  94. package/lib/models/deviceSettings/garageDoorOpenerSettings.d.ts +0 -1
  95. package/lib/models/deviceSettings/garageDoorOpenerSettings.js +0 -1
  96. package/lib/models/deviceSettings/handleSettings.d.ts +9 -0
  97. package/lib/models/deviceSettings/handleSettings.js +9 -0
  98. package/lib/models/deviceSettings/heaterSettings.d.ts +21 -9
  99. package/lib/models/deviceSettings/heaterSettings.js +21 -9
  100. package/lib/models/deviceSettings/ledSettings.d.ts +66 -0
  101. package/lib/models/deviceSettings/ledSettings.js +76 -18
  102. package/lib/models/deviceSettings/motionSensorSettings.d.ts +5 -1
  103. package/lib/models/deviceSettings/motionSensorSettings.js +5 -1
  104. package/lib/models/deviceSettings/sceneSettings.d.ts +4 -0
  105. package/lib/models/deviceSettings/shutterSettings.d.ts +11 -3
  106. package/lib/models/deviceSettings/shutterSettings.js +11 -3
  107. package/lib/models/deviceSettings/sonosDeviceSettings.d.ts +4 -0
  108. package/lib/models/deviceSettings/sonosDeviceSettings.js +4 -0
  109. package/lib/models/deviceSettings/tvSettings.d.ts +4 -0
  110. package/lib/models/deviceSettings/victronDeviceSettings.d.ts +34 -0
  111. package/lib/models/deviceSettings/victronDeviceSettings.js +34 -0
  112. package/lib/models/deviceSettings/wledSettings.d.ts +48 -0
  113. package/lib/models/deviceSettings/wledSettings.js +37 -13
  114. package/lib/models/groupSettings/heatGroupSettings.d.ts +12 -1
  115. package/lib/models/groupSettings/heatGroupSettings.js +12 -1
  116. package/lib/models/iIdHolder.d.ts +18 -0
  117. package/lib/models/index.d.ts +2 -1
  118. package/lib/models/index.js +4 -1
  119. package/lib/models/objectSettings.d.ts +5 -2
  120. package/lib/models/objectSettings.js +2 -2
  121. package/lib/models/persistence/EnergyCalculation.d.ts +27 -0
  122. package/lib/models/persistence/EnergyCalculation.js +30 -4
  123. package/lib/models/persistence/index.d.ts +0 -2
  124. package/lib/models/persistence/index.js +0 -2
  125. package/lib/models/rooms/RoomBase.d.ts +12 -1
  126. package/lib/models/rooms/RoomBase.js +17 -8
  127. package/lib/models/rooms/RoomSettings/RoomInitializationSettings.d.ts +2 -1
  128. package/lib/models/rooms/RoomSettings/RoomInitializationSettings.js +2 -2
  129. package/lib/models/rooms/RoomSettings/RoomSettingsController.d.ts +10 -1
  130. package/lib/models/rooms/RoomSettings/RoomSettingsController.js +2 -2
  131. package/lib/models/rooms/RoomSettings/iRoomDefaultSettings.d.ts +53 -3
  132. package/lib/models/rooms/RoomSettings/iRoomInitializationSettings.d.ts +10 -1
  133. package/lib/models/rooms/RoomSettings/roomDeviceAddingSettings.d.ts +4 -1
  134. package/lib/models/rooms/RoomSettings/roomDeviceAddingSettings.js +3 -0
  135. package/lib/models/rooms/RoomSettings/roomSettings.d.ts +55 -0
  136. package/lib/models/rooms/RoomSettings/roomSettings.js +55 -0
  137. package/lib/models/rooms/iRoomBase.d.ts +39 -0
  138. package/lib/models/rooms/iRoomImportEnforcer.d.ts +8 -0
  139. package/lib/models/timeCallback.d.ts +7 -0
  140. package/lib/models/timeCallback.js +16 -6
  141. package/lib/server/config/heatingMode.d.ts +2 -1
  142. package/lib/server/config/heatingMode.js +2 -1
  143. package/lib/server/config/iAsusConfig.d.ts +15 -0
  144. package/lib/server/config/iBlockAutomaticHandlerDefaults.d.ts +23 -0
  145. package/lib/server/config/iBlueIrisSettings.d.ts +14 -0
  146. package/lib/server/config/iBluetoothTrackingSettings.d.ts +9 -0
  147. package/lib/server/config/iConfig.d.ts +92 -5
  148. package/lib/server/config/iDachsSettings.d.ts +16 -0
  149. package/lib/server/config/iDaikinSettings.d.ts +17 -0
  150. package/lib/server/config/iEnergyManagerSettings.d.ts +13 -0
  151. package/lib/server/config/iEspresenseSettings.d.ts +10 -0
  152. package/lib/server/config/iHeaterSettings.d.ts +8 -0
  153. package/lib/server/config/iIobrokerSettigns.d.ts +8 -0
  154. package/lib/server/config/iLogSettings.d.ts +36 -1
  155. package/lib/server/config/iMp3Settings.d.ts +10 -0
  156. package/lib/server/config/iMuellSettings.d.ts +7 -0
  157. package/lib/server/config/iNewsSettings.d.ts +13 -0
  158. package/lib/server/config/iPersistenceSettings.d.ts +10 -0
  159. package/lib/server/config/iPollySettings.d.ts +22 -0
  160. package/lib/server/config/iRestSettings.d.ts +10 -0
  161. package/lib/server/config/iSonosSettings.d.ts +10 -0
  162. package/lib/server/config/iTelegramSettings.d.ts +17 -0
  163. package/lib/server/config/iTibberSettings.d.ts +10 -0
  164. package/lib/server/config/iTimePair.d.ts +9 -0
  165. package/lib/server/config/iTimeSettings.d.ts +9 -0
  166. package/lib/server/config/iTranslationSettings.d.ts +10 -0
  167. package/lib/server/config/iUnifiConnectionOptions.d.ts +31 -0
  168. package/lib/server/config/iUnifiSettings.d.ts +8 -0
  169. package/lib/server/config/iVictronSettings.d.ts +14 -0
  170. package/lib/server/config/iWeatherSettings.d.ts +13 -0
  171. package/lib/server/config/index.d.ts +1 -0
  172. package/lib/server/devices/DeviceCapability.d.ts +1 -0
  173. package/lib/server/devices/DeviceCapability.js +1 -0
  174. package/lib/server/devices/DeviceInfo.d.ts +9 -0
  175. package/lib/server/devices/DeviceInfo.js +6 -0
  176. package/lib/server/devices/Griffe.js +1 -2
  177. package/lib/server/devices/Heizgruppen.js +2 -2
  178. package/lib/server/devices/IoBrokerBaseDevice.d.ts +34 -18
  179. package/lib/server/devices/IoBrokerBaseDevice.js +37 -21
  180. package/lib/server/devices/IoBrokerDeviceInfo.d.ts +2 -2
  181. package/lib/server/devices/IoBrokerDeviceInfo.js +6 -4
  182. package/lib/server/devices/baseDeviceInterfaces/iAcDevice.d.ts +41 -3
  183. package/lib/server/devices/baseDeviceInterfaces/iActuator.d.ts +18 -0
  184. package/lib/server/devices/baseDeviceInterfaces/iBaseDevice.d.ts +26 -1
  185. package/lib/server/devices/baseDeviceInterfaces/iBatteryDevice.d.ts +12 -1
  186. package/lib/server/devices/baseDeviceInterfaces/iBluetoothDetector.d.ts +15 -7
  187. package/lib/server/devices/baseDeviceInterfaces/iButtonSwitch.d.ts +42 -0
  188. package/lib/server/devices/baseDeviceInterfaces/iCameraDevice.d.ts +46 -3
  189. package/lib/server/devices/baseDeviceInterfaces/iDimmableLamp.d.ts +17 -2
  190. package/lib/server/devices/baseDeviceInterfaces/iEnergyManager.d.ts +32 -2
  191. package/lib/server/devices/baseDeviceInterfaces/iExcessEnergyConsumer.d.ts +30 -2
  192. package/lib/server/devices/baseDeviceInterfaces/iGarageDoorOpener.d.ts +21 -0
  193. package/lib/server/devices/baseDeviceInterfaces/iHandleSensor.d.ts +24 -0
  194. package/lib/server/devices/baseDeviceInterfaces/iHeater.d.ts +40 -4
  195. package/lib/server/devices/baseDeviceInterfaces/iHumiditySensor.d.ts +21 -1
  196. package/lib/server/devices/baseDeviceInterfaces/iIlluminationSensor.d.ts +11 -0
  197. package/lib/server/devices/baseDeviceInterfaces/iLamp.d.ts +7 -2
  198. package/lib/server/devices/baseDeviceInterfaces/iLedRgbCct.d.ts +20 -0
  199. package/lib/server/devices/baseDeviceInterfaces/iLoadMeter.d.ts +5 -0
  200. package/lib/server/devices/baseDeviceInterfaces/iMagnetSensor.d.ts +31 -0
  201. package/lib/server/devices/baseDeviceInterfaces/iMagnetSensor.js +2 -0
  202. package/lib/server/devices/baseDeviceInterfaces/iMotionSensor.d.ts +23 -3
  203. package/lib/server/devices/baseDeviceInterfaces/iRoomDevice.d.ts +6 -0
  204. package/lib/server/devices/baseDeviceInterfaces/iScene.d.ts +31 -1
  205. package/lib/server/devices/baseDeviceInterfaces/iShutter.d.ts +25 -1
  206. package/lib/server/devices/baseDeviceInterfaces/iSmokeDetectorDevice.d.ts +12 -0
  207. package/lib/server/devices/baseDeviceInterfaces/iSpeaker.d.ts +30 -0
  208. package/lib/server/devices/baseDeviceInterfaces/iTemperatureSensor.d.ts +32 -2
  209. package/lib/server/devices/baseDeviceInterfaces/iTemporaryDisableAutomatic.d.ts +13 -0
  210. package/lib/server/devices/baseDeviceInterfaces/iTvDevice.d.ts +20 -0
  211. package/lib/server/devices/baseDeviceInterfaces/iVibrationSensor.d.ts +24 -5
  212. package/lib/server/devices/baseDeviceInterfaces/index.d.ts +1 -0
  213. package/lib/server/devices/blueIris/cameraDevice.d.ts +49 -34
  214. package/lib/server/devices/blueIris/cameraDevice.js +75 -75
  215. package/lib/server/devices/button/button.d.ts +0 -1
  216. package/lib/server/devices/button/button.js +0 -4
  217. package/lib/server/devices/button/buttonCallback.d.ts +5 -0
  218. package/lib/server/devices/button/buttonCallback.js +10 -0
  219. package/lib/server/devices/button/buttonCapabilities.d.ts +12 -0
  220. package/lib/server/devices/button/buttonCapabilities.js +12 -0
  221. package/lib/server/devices/button/index.d.ts +1 -0
  222. package/lib/server/devices/button/index.js +3 -0
  223. package/lib/server/devices/dachs/dachs.d.ts +31 -9
  224. package/lib/server/devices/dachs/dachs.js +28 -18
  225. package/lib/server/devices/dachs/dachsTemperatureSensor.d.ts +22 -3
  226. package/lib/server/devices/dachs/dachsTemperatureSensor.js +23 -5
  227. package/lib/server/devices/dachs/interfaces/DachsClientOptions.d.ts +30 -0
  228. package/lib/server/devices/dachs/interfaces/KeyListEntity.d.ts +0 -8
  229. package/lib/server/devices/dachs/interfaces/KeyListEntity.js +0 -8
  230. package/lib/server/devices/dachs/interfaces/dachsInfluxDataPoint.d.ts +12 -0
  231. package/lib/server/devices/dachs/interfaces/influxDbConnectionOptions.d.ts +21 -1
  232. package/lib/server/devices/dachs/lib/dachsHttpClient.d.ts +1 -1
  233. package/lib/server/devices/dachs/lib/dachsHttpClient.js +2 -2
  234. package/lib/server/devices/device-cluster.d.ts +3 -0
  235. package/lib/server/devices/device-cluster.js +1 -1
  236. package/lib/server/devices/deviceUpdater.d.ts +0 -3
  237. package/lib/server/devices/deviceUpdater.js +1 -4
  238. package/lib/server/devices/devices.d.ts +43 -7
  239. package/lib/server/devices/devices.js +42 -6
  240. package/lib/server/devices/espresense/detectedBluetoothDevice.d.ts +13 -0
  241. package/lib/server/devices/espresense/detectedBluetoothDevice.js +14 -1
  242. package/lib/server/devices/espresense/espresenseDevice.d.ts +31 -1
  243. package/lib/server/devices/espresense/espresenseDevice.js +28 -4
  244. package/lib/server/devices/espresense/trackedDistanceData.d.ts +12 -0
  245. package/lib/server/devices/espresense/trackedDistanceData.js +3 -0
  246. package/lib/server/devices/espresense/trilateration.d.ts +7 -0
  247. package/lib/server/devices/espresense/trilateration.js +7 -0
  248. package/lib/server/devices/espresense/trilaterationBasePoint.d.ts +6 -0
  249. package/lib/server/devices/espresense/trilaterationBasePoint.js +3 -0
  250. package/lib/server/devices/espresense/trilaterationPoint.d.ts +1 -1
  251. package/lib/server/devices/espresense/trilaterationPoint.js +3 -1
  252. package/lib/server/devices/groups/Window.d.ts +9 -3
  253. package/lib/server/devices/groups/Window.js +19 -11
  254. package/lib/server/devices/groups/base-group.d.ts +4 -0
  255. package/lib/server/devices/groups/base-group.js +3 -0
  256. package/lib/server/devices/groups/heatGroup.d.ts +8 -6
  257. package/lib/server/devices/groups/heatGroup.js +11 -11
  258. package/lib/server/devices/groups/lightGroup.d.ts +10 -2
  259. package/lib/server/devices/groups/lightGroup.js +16 -34
  260. package/lib/server/devices/groups/presenceGroup.d.ts +11 -4
  261. package/lib/server/devices/groups/presenceGroup.js +52 -62
  262. package/lib/server/devices/groups/tasterGroup.js +6 -6
  263. package/lib/server/devices/groups/windowGroup.d.ts +11 -1
  264. package/lib/server/devices/groups/windowGroup.js +6 -6
  265. package/lib/server/devices/hmIPDevices/hmIpAccessPoint.d.ts +1 -0
  266. package/lib/server/devices/hmIPDevices/hmIpAccessPoint.js +1 -0
  267. package/lib/server/devices/hmIPDevices/hmIpBewegung.d.ts +9 -6
  268. package/lib/server/devices/hmIPDevices/hmIpBewegung.js +10 -11
  269. package/lib/server/devices/hmIPDevices/hmIpDevice.d.ts +1 -2
  270. package/lib/server/devices/hmIPDevices/hmIpDevice.js +2 -3
  271. package/lib/server/devices/hmIPDevices/hmIpGriff.d.ts +27 -5
  272. package/lib/server/devices/hmIPDevices/hmIpGriff.js +59 -37
  273. package/lib/server/devices/hmIPDevices/hmIpHeizgruppe.d.ts +25 -5
  274. package/lib/server/devices/hmIPDevices/hmIpHeizgruppe.js +27 -14
  275. package/lib/server/devices/hmIPDevices/hmIpHeizung.d.ts +1 -0
  276. package/lib/server/devices/hmIPDevices/hmIpHeizung.js +1 -0
  277. package/lib/server/devices/hmIPDevices/hmIpLampe.d.ts +7 -1
  278. package/lib/server/devices/hmIPDevices/hmIpLampe.js +11 -7
  279. package/lib/server/devices/hmIPDevices/hmIpPraezenz.d.ts +11 -9
  280. package/lib/server/devices/hmIPDevices/hmIpPraezenz.js +13 -11
  281. package/lib/server/devices/hmIPDevices/hmIpRoll.d.ts +4 -2
  282. package/lib/server/devices/hmIPDevices/hmIpRoll.js +25 -23
  283. package/lib/server/devices/hmIPDevices/hmIpTaster.d.ts +15 -0
  284. package/lib/server/devices/hmIPDevices/hmIpTaster.js +9 -0
  285. package/lib/server/devices/hmIPDevices/hmIpTherm.d.ts +1 -0
  286. package/lib/server/devices/hmIPDevices/hmIpTherm.js +1 -0
  287. package/lib/server/devices/hmIPDevices/hmIpTuer.d.ts +9 -1
  288. package/lib/server/devices/hmIPDevices/hmIpTuer.js +17 -4
  289. package/lib/server/devices/hmIPDevices/hmIpWippe.d.ts +27 -0
  290. package/lib/server/devices/hmIPDevices/hmIpWippe.js +3 -0
  291. package/lib/server/devices/iDeviceUpdater.d.ts +14 -0
  292. package/lib/server/devices/index.d.ts +5 -2
  293. package/lib/server/devices/index.js +8 -2
  294. package/lib/server/devices/jsObject/jsObjectEnergyManager.d.ts +3 -1
  295. package/lib/server/devices/jsObject/jsObjectEnergyManager.js +5 -3
  296. package/lib/server/devices/nameAmountValuePair.d.ts +5 -0
  297. package/lib/server/devices/nameAmountValuePair.js +10 -0
  298. package/lib/server/devices/scene/room-scene.d.ts +23 -6
  299. package/lib/server/devices/scene/room-scene.js +18 -4
  300. package/lib/server/devices/sharedFunctions/lampUtils.d.ts +11 -2
  301. package/lib/server/devices/sharedFunctions/lampUtils.js +80 -26
  302. package/lib/server/devices/shelly/shellyDevice.d.ts +2 -1
  303. package/lib/server/devices/shelly/shellyDevice.js +2 -1
  304. package/lib/server/devices/shelly/shellyTrv.d.ts +28 -16
  305. package/lib/server/devices/shelly/shellyTrv.js +46 -45
  306. package/lib/server/devices/tuya/tuyaDevice.d.ts +2 -1
  307. package/lib/server/devices/tuya/tuyaDevice.js +2 -1
  308. package/lib/server/devices/tuya/tuyaGarageOpener.d.ts +3 -0
  309. package/lib/server/devices/tuya/tuyaGarageOpener.js +3 -0
  310. package/lib/server/devices/tv/samsungTv.d.ts +1 -0
  311. package/lib/server/devices/tv/samsungTv.js +1 -0
  312. package/lib/server/devices/tv/tvDevice.d.ts +7 -1
  313. package/lib/server/devices/tv/tvDevice.js +4 -3
  314. package/lib/server/devices/wledDevice.d.ts +15 -3
  315. package/lib/server/devices/wledDevice.js +42 -16
  316. package/lib/server/devices/zigbee/BaseDevices/ZigbeeActuator.d.ts +17 -4
  317. package/lib/server/devices/zigbee/BaseDevices/ZigbeeActuator.js +30 -15
  318. package/lib/server/devices/zigbee/BaseDevices/index.d.ts +1 -0
  319. package/lib/server/devices/zigbee/BaseDevices/index.js +3 -0
  320. package/lib/server/devices/zigbee/BaseDevices/zigbeeDevice.d.ts +4 -5
  321. package/lib/server/devices/zigbee/BaseDevices/zigbeeDevice.js +15 -22
  322. package/lib/server/devices/zigbee/BaseDevices/zigbeeDimmer.d.ts +10 -25
  323. package/lib/server/devices/zigbee/BaseDevices/zigbeeDimmer.js +30 -65
  324. package/lib/server/devices/zigbee/BaseDevices/zigbeeHeater.d.ts +17 -4
  325. package/lib/server/devices/zigbee/BaseDevices/zigbeeHeater.js +17 -11
  326. package/lib/server/devices/zigbee/BaseDevices/zigbeeLamp.d.ts +16 -0
  327. package/lib/server/devices/zigbee/BaseDevices/zigbeeLamp.js +35 -0
  328. package/lib/server/devices/zigbee/BaseDevices/zigbeeLedRGBCCT.d.ts +9 -8
  329. package/lib/server/devices/zigbee/BaseDevices/zigbeeLedRGBCCT.js +16 -14
  330. package/lib/server/devices/zigbee/BaseDevices/zigbeeMagnetContact.d.ts +12 -2
  331. package/lib/server/devices/zigbee/BaseDevices/zigbeeMagnetContact.js +11 -1
  332. package/lib/server/devices/zigbee/BaseDevices/zigbeeMotionSensor.d.ts +22 -14
  333. package/lib/server/devices/zigbee/BaseDevices/zigbeeMotionSensor.js +46 -42
  334. package/lib/server/devices/zigbee/BaseDevices/zigbeeShutter.d.ts +12 -3
  335. package/lib/server/devices/zigbee/BaseDevices/zigbeeShutter.js +28 -19
  336. package/lib/server/devices/zigbee/BaseDevices/zigbeeSwitch.d.ts +9 -1
  337. package/lib/server/devices/zigbee/BaseDevices/zigbeeSwitch.js +8 -1
  338. package/lib/server/devices/zigbee/zigbeeAqaraMagnetContact.d.ts +1 -0
  339. package/lib/server/devices/zigbee/zigbeeAqaraMagnetContact.js +1 -0
  340. package/lib/server/devices/zigbee/zigbeeAqaraOpple3Switch.d.ts +16 -0
  341. package/lib/server/devices/zigbee/zigbeeAqaraOpple3Switch.js +16 -0
  342. package/lib/server/devices/zigbee/zigbeeAquaraMotion.d.ts +6 -0
  343. package/lib/server/devices/zigbee/zigbeeAquaraMotion.js +7 -3
  344. package/lib/server/devices/zigbee/zigbeeAquaraVibra.d.ts +49 -11
  345. package/lib/server/devices/zigbee/zigbeeAquaraVibra.js +98 -30
  346. package/lib/server/devices/zigbee/zigbeeAquaraWater.d.ts +12 -1
  347. package/lib/server/devices/zigbee/zigbeeAquaraWater.js +15 -11
  348. package/lib/server/devices/zigbee/zigbeeBlitzShp.d.ts +15 -5
  349. package/lib/server/devices/zigbee/zigbeeBlitzShp.js +22 -14
  350. package/lib/server/devices/zigbee/zigbeeEuroHeater.d.ts +10 -4
  351. package/lib/server/devices/zigbee/zigbeeEuroHeater.js +16 -10
  352. package/lib/server/devices/zigbee/zigbeeHeimanSmoke.d.ts +19 -1
  353. package/lib/server/devices/zigbee/zigbeeHeimanSmoke.js +25 -7
  354. package/lib/server/devices/zigbee/zigbeeIkeaShutter.d.ts +1 -0
  355. package/lib/server/devices/zigbee/zigbeeIkeaShutter.js +2 -1
  356. package/lib/server/devices/zigbee/zigbeeIkeaSteckdose.d.ts +2 -0
  357. package/lib/server/devices/zigbee/zigbeeIkeaSteckdose.js +3 -1
  358. package/lib/server/devices/zigbee/zigbeeIlluActuator.d.ts +1 -2
  359. package/lib/server/devices/zigbee/zigbeeIlluActuator.js +2 -11
  360. package/lib/server/devices/zigbee/zigbeeIlluDimmer.d.ts +1 -1
  361. package/lib/server/devices/zigbee/zigbeeIlluDimmer.js +1 -1
  362. package/lib/server/devices/zigbee/zigbeeIlluLampe.d.ts +3 -10
  363. package/lib/server/devices/zigbee/zigbeeIlluLampe.js +3 -32
  364. package/lib/server/devices/zigbee/zigbeeIlluLedRGBCCT.d.ts +1 -1
  365. package/lib/server/devices/zigbee/zigbeeIlluLedRGBCCT.js +1 -1
  366. package/lib/server/devices/zigbee/zigbeeIlluShutter.d.ts +1 -0
  367. package/lib/server/devices/zigbee/zigbeeIlluShutter.js +5 -4
  368. package/lib/server/devices/zigbee/zigbeeInnr142C.d.ts +1 -1
  369. package/lib/server/devices/zigbee/zigbeeInnr142C.js +1 -1
  370. package/lib/server/devices/zigbee/zigbeeLinkindLedRgbCct.d.ts +1 -1
  371. package/lib/server/devices/zigbee/zigbeeLinkindLedRgbCct.js +1 -1
  372. package/lib/server/devices/zigbee/zigbeeOsramDimmer.d.ts +1 -1
  373. package/lib/server/devices/zigbee/zigbeeOsramDimmer.js +1 -1
  374. package/lib/server/devices/zigbee/zigbeeSMaBiTMagnetContact.d.ts +1 -0
  375. package/lib/server/devices/zigbee/zigbeeSMaBiTMagnetContact.js +1 -0
  376. package/lib/server/devices/zigbee/zigbeeSonoffMotion.d.ts +1 -0
  377. package/lib/server/devices/zigbee/zigbeeSonoffMotion.js +1 -0
  378. package/lib/server/devices/zigbee/zigbeeSonoffTemp.d.ts +20 -2
  379. package/lib/server/devices/zigbee/zigbeeSonoffTemp.js +22 -5
  380. package/lib/server/devices/zigbee/zigbeeTuyaValve.d.ts +10 -3
  381. package/lib/server/devices/zigbee/zigbeeTuyaValve.js +11 -6
  382. package/lib/server/devices/zigbee/zigbeeUbisysActuator.d.ts +9 -2
  383. package/lib/server/devices/zigbee/zigbeeUbisysActuator.js +10 -8
  384. package/lib/server/devices/zigbee/zigbeeUbisysLampe.d.ts +8 -9
  385. package/lib/server/devices/zigbee/zigbeeUbisysLampe.js +14 -24
  386. package/lib/server/devices/zigbee/zigbeeUbisysShutter.d.ts +1 -0
  387. package/lib/server/devices/zigbee/zigbeeUbisysShutter.js +2 -1
  388. package/lib/server/ioBroker/connection.d.ts +21 -20
  389. package/lib/server/ioBroker/connection.js +37 -28
  390. package/lib/server/ioBroker/ioBroker.main.d.ts +3 -0
  391. package/lib/server/ioBroker/ioBroker.main.js +4 -3
  392. package/lib/server/ioBroker/iobrokerConnectionLogging.d.ts +3 -0
  393. package/lib/server/ioBroker/iobrokerConnectionLogging.js +4 -0
  394. package/lib/server/ioBroker/socketIOConnectOptions.d.ts +2 -2
  395. package/lib/server/ioBroker/socketIOConnectOptions.js +1 -0
  396. package/lib/server/ioBroker/socketIOVisCommand.d.ts +5 -1
  397. package/lib/server/ioBroker/socketIOVisCommand.js +1 -0
  398. package/lib/server/services/ShutterService.js +6 -6
  399. package/lib/server/services/Sonos/OwnSonosDevices.d.ts +3 -0
  400. package/lib/server/services/Sonos/OwnSonosDevices.js +3 -0
  401. package/lib/server/services/Sonos/mp3-server.d.ts +3 -1
  402. package/lib/server/services/Sonos/mp3-server.js +3 -1
  403. package/lib/server/services/Sonos/own-sonos-device.d.ts +4 -1
  404. package/lib/server/services/Sonos/own-sonos-device.js +4 -4
  405. package/lib/server/services/Sonos/polly-service.d.ts +7 -1
  406. package/lib/server/services/Sonos/polly-service.js +10 -8
  407. package/lib/server/services/Sonos/sonos-service.d.ts +0 -5
  408. package/lib/server/services/Sonos/sonos-service.js +6 -10
  409. package/lib/server/services/Telegram/telegram-Commands.js +5 -5
  410. package/lib/server/services/Telegram/telegram-service.d.ts +2 -1
  411. package/lib/server/services/Telegram/telegram-service.js +8 -3
  412. package/lib/server/services/Translation/IRessourceObject.d.ts +13 -0
  413. package/lib/server/services/Translation/IRessourceObject.js +2 -0
  414. package/lib/server/services/Translation/iRessources.d.ts +1 -4
  415. package/lib/server/services/Translation/index.d.ts +1 -0
  416. package/lib/server/services/Translation/res.d.ts +34 -19
  417. package/lib/server/services/Translation/res.js +34 -19
  418. package/lib/server/services/ac/ac-device.d.ts +48 -6
  419. package/lib/server/services/ac/ac-device.js +86 -36
  420. package/lib/server/services/ac/daikin-service.js +4 -3
  421. package/lib/server/services/ac/own-ac-devices.d.ts +3 -0
  422. package/lib/server/services/ac/own-ac-devices.js +3 -0
  423. package/lib/server/services/ac/own-daikin-device.d.ts +17 -0
  424. package/lib/server/services/ac/own-daikin-device.js +32 -7
  425. package/lib/server/services/api/api-service.d.ts +118 -53
  426. package/lib/server/services/api/api-service.js +170 -80
  427. package/lib/server/services/blockAutomaticHandler.d.ts +13 -8
  428. package/lib/server/services/blockAutomaticHandler.js +34 -15
  429. package/lib/server/services/calendar/index.d.ts +1 -0
  430. package/lib/server/services/calendar/index.js +3 -0
  431. package/lib/server/services/calendar/muell-tonne.d.ts +11 -1
  432. package/lib/server/services/calendar/muell-tonne.js +10 -0
  433. package/lib/server/services/calendar/m/303/274ll-service.d.ts +23 -8
  434. package/lib/server/services/calendar/m/303/274ll-service.js +11 -5
  435. package/lib/server/services/calendar/name-date-pair.d.ts +5 -0
  436. package/lib/server/services/calendar/name-date-pair.js +10 -0
  437. package/lib/server/services/dbo/iPersist.d.ts +103 -0
  438. package/lib/server/services/dbo/postgreSqlPersist.d.ts +23 -0
  439. package/lib/server/services/dbo/postgreSqlPersist.js +28 -5
  440. package/lib/server/services/file-info.d.ts +5 -0
  441. package/lib/server/services/file-info.js +10 -0
  442. package/lib/server/services/govee/govee-service.d.ts +1 -5
  443. package/lib/server/services/govee/govee-service.js +3 -5
  444. package/lib/server/services/govee/own-govee-device.d.ts +17 -13
  445. package/lib/server/services/govee/own-govee-device.js +27 -27
  446. package/lib/server/services/govee/own-govee-devices.d.ts +3 -0
  447. package/lib/server/services/govee/own-govee-devices.js +3 -0
  448. package/lib/server/services/https-service.d.ts +3 -2
  449. package/lib/server/services/https-service.js +4 -3
  450. package/lib/server/services/index.d.ts +1 -0
  451. package/lib/server/services/index.js +3 -0
  452. package/lib/server/services/log-service/index.d.ts +1 -0
  453. package/lib/server/services/log-service/index.js +3 -0
  454. package/lib/server/services/log-service/log-debug-type.d.ts +12 -0
  455. package/lib/server/services/log-service/log-debug-type.js +16 -0
  456. package/lib/server/services/log-service/log-filter-data.d.ts +21 -12
  457. package/lib/server/services/log-service/log-filter-data.js +6 -15
  458. package/lib/server/services/log-service/log-service.d.ts +17 -4
  459. package/lib/server/services/log-service/log-service.js +30 -17
  460. package/lib/server/services/news-service.d.ts +9 -7
  461. package/lib/server/services/news-service.js +14 -15
  462. package/lib/server/services/room-service/room-service.d.ts +20 -4
  463. package/lib/server/services/room-service/room-service.js +26 -10
  464. package/lib/server/services/settings-service.d.ts +6 -2
  465. package/lib/server/services/settings-service.js +3 -2
  466. package/lib/server/services/time-callback-service.js +1 -1
  467. package/lib/server/services/utils/RGB.d.ts +6 -0
  468. package/lib/server/services/utils/RGB.js +11 -0
  469. package/lib/server/services/utils/catchEmResult.d.ts +5 -0
  470. package/lib/server/services/utils/catchEmResult.js +10 -0
  471. package/lib/server/services/utils/energy-consumer-state-change.d.ts +6 -0
  472. package/lib/server/services/utils/energy-consumer-state-change.js +10 -0
  473. package/lib/server/services/utils/energy-manager-utils.d.ts +3 -14
  474. package/lib/server/services/utils/energy-manager-utils.js +2 -2
  475. package/lib/server/services/utils/iDisposeable.d.ts +6 -0
  476. package/lib/server/services/utils/index.d.ts +4 -1
  477. package/lib/server/services/utils/index.js +8 -1
  478. package/lib/server/services/utils/{ringstorage.d.ts → ringStorage.d.ts} +1 -1
  479. package/lib/server/services/utils/{ringstorage.js → ringStorage.js} +3 -3
  480. package/lib/server/services/utils/utils.d.ts +9 -13
  481. package/lib/server/services/victron/victron-device.d.ts +6 -2
  482. package/lib/server/services/victron/victron-device.js +12 -9
  483. package/lib/server/services/weather/index.d.ts +2 -0
  484. package/lib/server/services/weather/index.js +3 -0
  485. package/lib/server/services/weather/rain-next-minutes-info.d.ts +5 -0
  486. package/lib/server/services/weather/rain-next-minutes-info.js +10 -0
  487. package/lib/server/services/weather/weather-current.d.ts +0 -2
  488. package/lib/server/services/weather/weather-feelsLike.d.ts +15 -0
  489. package/lib/server/services/weather/weather-response.d.ts +16 -0
  490. package/lib/server/services/weather/weather-response.js +2 -0
  491. package/lib/server/services/weather/weather-service.d.ts +15 -18
  492. package/lib/server/services/weather/weather-service.js +32 -22
  493. package/lib/server/services/weather/weather-temp.d.ts +21 -0
  494. package/lib/tsconfig.tsbuildinfo +1 -1
  495. package/package.json +6 -7
  496. package/lib/models/iTemperaturDataPoint.d.ts +0 -9
  497. package/lib/models/persistence/RoomDetailInfo.d.ts +0 -6
  498. package/lib/models/persistence/RoomDetailInfo.js +0 -11
  499. package/lib/models/persistence/temperaturDataPoint.d.ts +0 -10
  500. package/lib/models/persistence/temperaturDataPoint.js +0 -14
  501. /package/lib/{models/iTemperaturDataPoint.js → server/config/iBlockAutomaticHandlerDefaults.js} +0 -0
@@ -1,12 +1,27 @@
1
- import { ringStorage } from '../utils';
1
+ import { RingStorage } from '../utils';
2
2
  import { ActuatorSetStateCommand, FloorSetAllShuttersCommand, iRoomBase, RoomBase } from '../../../models';
3
3
  import { BaseGroup, iRoomDevice } from '../../devices';
4
4
  export declare class RoomService {
5
+ /**
6
+ * A Map containing all rooms in the house identified by their name
7
+ */
5
8
  static Rooms: Map<string, RoomBase>;
9
+ /**
10
+ * A Map containing all groups in the house identified by {@link BaseGroup.id}
11
+ */
6
12
  static Groups: Map<string, BaseGroup>;
13
+ /**
14
+ * A boolean indicating if the away mode is active, which triggers certain alarms on movement
15
+ */
7
16
  static awayModeActive: boolean;
17
+ /**
18
+ * A boolean indicating if the night mode is active, which triggers certain alarms on movement in rooms included in night alarm
19
+ */
8
20
  static nightAlarmActive: boolean;
9
- static movementHistory: ringStorage<string>;
21
+ /**
22
+ * A ring storage containing the last 15 detected movements in the house
23
+ */
24
+ static movementHistory: RingStorage<string>;
10
25
  private static _awayModeTimeout;
11
26
  private static _nightModeTimeout;
12
27
  private static _intrusionAlarmActive;
@@ -16,13 +31,14 @@ export declare class RoomService {
16
31
  static getAllRoomsOfFloor(floor: number): IterableIterator<[string, RoomBase]>;
17
32
  /**
18
33
  * Moves all shutters of the desired floor(s) to the desired position
34
+ * @param c - the command to be executed on all windows of the desired floor(s)
19
35
  */
20
36
  static setAllShutterOfFloor(c: FloorSetAllShuttersCommand): void;
21
37
  /**
22
38
  * Set ALl Lamps of a specific floor
23
39
  * !!floor -1 sets all lamps in house instead!!
24
- * @param floor the level on which all lamps shall be changed -1 equals all rooms
25
- * @param command the command to be executed
40
+ * @param floor - {number} the level on which all lamps shall be changed -1 equals all rooms
41
+ * @param command - {ActuatorSetStateCommand} the command to be executed
26
42
  */
27
43
  static setAllLampsOfFloor(floor: number, command: ActuatorSetStateCommand): void;
28
44
  static clearAllAlarms(): void;
@@ -16,6 +16,7 @@ class RoomService {
16
16
  }
17
17
  /**
18
18
  * Moves all shutters of the desired floor(s) to the desired position
19
+ * @param c - the command to be executed on all windows of the desired floor(s)
19
20
  */
20
21
  static setAllShutterOfFloor(c) {
21
22
  var _a;
@@ -27,8 +28,8 @@ class RoomService {
27
28
  /**
28
29
  * Set ALl Lamps of a specific floor
29
30
  * !!floor -1 sets all lamps in house instead!!
30
- * @param floor the level on which all lamps shall be changed -1 equals all rooms
31
- * @param command the command to be executed
31
+ * @param floor - {number} the level on which all lamps shall be changed -1 equals all rooms
32
+ * @param command - {ActuatorSetStateCommand} the command to be executed
32
33
  */
33
34
  static setAllLampsOfFloor(floor, command) {
34
35
  var _a, _b, _c, _d;
@@ -60,7 +61,7 @@ class RoomService {
60
61
  this._awayModeTimeout = utils_1.Utils.guardedTimeout(() => {
61
62
  this.awayModeActive = true;
62
63
  this._awayModeTimeout = undefined;
63
- Telegram_1.TelegramService.inform(`Alarm ist nun scharf. Gute Reise!`);
64
+ Telegram_1.TelegramService.inform('Alarm ist nun scharf. Gute Reise!');
64
65
  }, 60000, this);
65
66
  }
66
67
  static startNightAlarmMode() {
@@ -71,7 +72,7 @@ class RoomService {
71
72
  this._nightModeTimeout = utils_1.Utils.guardedTimeout(() => {
72
73
  this.nightAlarmActive = true;
73
74
  this._nightModeTimeout = undefined;
74
- Telegram_1.TelegramService.inform(`Alarm ist nun scharf. Süße Träume!`);
75
+ Telegram_1.TelegramService.inform('Alarm ist nun scharf. Süße Träume!');
75
76
  }, 60000, this);
76
77
  }
77
78
  static startIntrusionAlarm(room, device) {
@@ -92,11 +93,11 @@ class RoomService {
92
93
  }
93
94
  static endAlarmModes() {
94
95
  if (this.awayModeActive) {
95
- Telegram_1.TelegramService.sendMessage(Telegram_1.TelegramService.subscribedIDs, `Alarmanalage entschärft`);
96
+ Telegram_1.TelegramService.sendMessageToSubscriber('Alarm Mode disarmed');
96
97
  Sonos_1.SonosService.speakOnAll(Translation_1.Res.welcomeHome(), 35);
97
98
  }
98
99
  if (this.nightAlarmActive) {
99
- Telegram_1.TelegramService.sendMessage(Telegram_1.TelegramService.subscribedIDs, `Nachtmodus der Alarmanlage entschärft`);
100
+ Telegram_1.TelegramService.sendMessageToSubscriber('Nachtmodus der Alarmanlage entschärft');
100
101
  Sonos_1.SonosService.speakOnAll(Translation_1.Res.goodMorning(), 30);
101
102
  }
102
103
  if (this._nightModeTimeout) {
@@ -113,7 +114,7 @@ class RoomService {
113
114
  return this.movementHistory.readAmount(15).join('\n');
114
115
  }
115
116
  static stopIntrusionAlarm() {
116
- log_service_1.ServerLogService.writeLog(models_1.LogLevel.Info, `Stoppe Intrusion Alarm`);
117
+ log_service_1.ServerLogService.writeLog(models_1.LogLevel.Info, 'Stoppe Intrusion Alarm');
117
118
  if (this._intrusionAlarmTimeout) {
118
119
  clearTimeout(this._intrusionAlarmTimeout);
119
120
  }
@@ -122,7 +123,7 @@ class RoomService {
122
123
  }
123
124
  this._intrusionAlarmActive = false;
124
125
  this._intrusionAlarmLevel = 0;
125
- log_service_1.ServerLogService.writeLog(models_1.LogLevel.Alert, `Alarm wurde beendet --> Fahre Rollos in Ausgangsposition.`);
126
+ log_service_1.ServerLogService.writeLog(models_1.LogLevel.Alert, 'Alarm wurde beendet --> Fahre Rollos in Ausgangsposition.');
126
127
  this.restoreShutterPositions(new models_1.RoomRestoreShutterPositionCommand(models_1.CommandSource.Force, false, 'Resetting all shutter in all Rooms to last known position'));
127
128
  this.restoreLight(new models_1.RoomRestoreLightCommand(models_1.CommandSource.Force, 'roomService.clearAllAlarms'));
128
129
  }
@@ -175,7 +176,7 @@ class RoomService {
175
176
  static restoreShutterPositions(c) {
176
177
  var _a;
177
178
  for (const room of this.Rooms.values()) {
178
- (_a = room.WindowGroup) === null || _a === void 0 ? void 0 : _a.restoreRolloPosition(c);
179
+ (_a = room.WindowGroup) === null || _a === void 0 ? void 0 : _a.restoreShutterPosition(c);
179
180
  }
180
181
  }
181
182
  static restoreLight(c) {
@@ -185,10 +186,25 @@ class RoomService {
185
186
  }
186
187
  }
187
188
  exports.RoomService = RoomService;
189
+ /**
190
+ * A Map containing all rooms in the house identified by their name
191
+ */
188
192
  RoomService.Rooms = new Map();
193
+ /**
194
+ * A Map containing all groups in the house identified by {@link BaseGroup.id}
195
+ */
189
196
  RoomService.Groups = new Map();
197
+ /**
198
+ * A boolean indicating if the away mode is active, which triggers certain alarms on movement
199
+ */
190
200
  RoomService.awayModeActive = false;
201
+ /**
202
+ * A boolean indicating if the night mode is active, which triggers certain alarms on movement in rooms included in night alarm
203
+ */
191
204
  RoomService.nightAlarmActive = false;
192
- RoomService.movementHistory = new utils_1.ringStorage(15);
205
+ /**
206
+ * A ring storage containing the last 15 detected movements in the house
207
+ */
208
+ RoomService.movementHistory = new utils_1.RingStorage(15);
193
209
  RoomService._intrusionAlarmActive = false;
194
210
  RoomService._intrusionAlarmLevel = 0;
@@ -1,5 +1,8 @@
1
1
  import { HeatingMode, iConfig } from '../config';
2
2
  export declare class SettingsService {
3
+ /**
4
+ * The active settings for the Hoffmation system.
5
+ */
3
6
  static settings: iConfig;
4
7
  static get TelegramActive(): boolean;
5
8
  static get Mp3Active(): boolean;
@@ -8,8 +11,9 @@ export declare class SettingsService {
8
11
  static get latitude(): number;
9
12
  static get longitude(): number;
10
13
  /**
11
- * @deprecated Only use in unit tests
12
- * @returns {iConfig}
14
+ * Generates a fresh Test configuration.
15
+ * @returns The test configuration.
16
+ * @deprecated Only use in unit tests.
13
17
  */
14
18
  static get testConfig(): iConfig;
15
19
  }
@@ -37,8 +37,9 @@ class SettingsService {
37
37
  return 7.097266042276687;
38
38
  }
39
39
  /**
40
- * @deprecated Only use in unit tests
41
- * @returns {iConfig}
40
+ * Generates a fresh Test configuration.
41
+ * @returns The test configuration.
42
+ * @deprecated Only use in unit tests.
42
43
  */
43
44
  static get testConfig() {
44
45
  return {
@@ -127,7 +127,7 @@ class TimeCallbackService {
127
127
  TimeCallbackService._callbacks.set(pCallback.name, pCallback);
128
128
  }
129
129
  static performCheck() {
130
- log_service_1.ServerLogService.writeLog(models_1.LogLevel.Trace, `Perform TimeCallBackCheck`);
130
+ log_service_1.ServerLogService.writeLog(models_1.LogLevel.Trace, 'Perform TimeCallBackCheck');
131
131
  const now = new Date();
132
132
  for (const tc of TimeCallbackService._callbacks.values()) {
133
133
  if (tc.nextToDo === undefined || tc.nextToDo < tc.lastDone) {
@@ -0,0 +1,6 @@
1
+ export declare class RGB {
2
+ r: number;
3
+ g: number;
4
+ b: number;
5
+ constructor(r: number, g: number, b: number);
6
+ }
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.RGB = void 0;
4
+ class RGB {
5
+ constructor(r, g, b) {
6
+ this.r = r;
7
+ this.g = g;
8
+ this.b = b;
9
+ }
10
+ }
11
+ exports.RGB = RGB;
@@ -0,0 +1,5 @@
1
+ export declare class CatchEmResult<T> {
2
+ reason: Error | null;
3
+ data: T | null;
4
+ constructor(reason: Error | null, data: T | null);
5
+ }
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CatchEmResult = void 0;
4
+ class CatchEmResult {
5
+ constructor(reason, data) {
6
+ this.reason = reason;
7
+ this.data = data;
8
+ }
9
+ }
10
+ exports.CatchEmResult = CatchEmResult;
@@ -0,0 +1,6 @@
1
+ import { iExcessEnergyConsumer } from '../../devices';
2
+ export declare class EnergyConsumerStateChange {
3
+ readonly newState: boolean;
4
+ readonly device: iExcessEnergyConsumer;
5
+ constructor(newState: boolean, device: iExcessEnergyConsumer);
6
+ }
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.EnergyConsumerStateChange = void 0;
4
+ class EnergyConsumerStateChange {
5
+ constructor(newState, device) {
6
+ this.newState = newState;
7
+ this.device = device;
8
+ }
9
+ }
10
+ exports.EnergyConsumerStateChange = EnergyConsumerStateChange;
@@ -1,17 +1,6 @@
1
1
  import { iExcessEnergyConsumer } from '../../devices';
2
+ import { EnergyConsumerStateChange } from './energy-consumer-state-change';
2
3
  export declare class EnergyManagerUtils {
3
- static turnOnAdditionalConsumer(excessEnergyConsumer: iExcessEnergyConsumer[], lastDeviceChange: {
4
- newState: boolean;
5
- device: iExcessEnergyConsumer;
6
- } | undefined): void | undefined | {
7
- newState: boolean;
8
- device: iExcessEnergyConsumer;
9
- };
10
- static turnOffAdditionalConsumer(excessEnergyConsumer: iExcessEnergyConsumer[], lastDeviceChange: {
11
- newState: boolean;
12
- device: iExcessEnergyConsumer;
13
- } | undefined): void | undefined | {
14
- newState: boolean;
15
- device: iExcessEnergyConsumer;
16
- };
4
+ static turnOnAdditionalConsumer(excessEnergyConsumer: iExcessEnergyConsumer[], lastDeviceChange: EnergyConsumerStateChange | undefined): void | undefined | EnergyConsumerStateChange;
5
+ static turnOffAdditionalConsumer(excessEnergyConsumer: iExcessEnergyConsumer[], lastDeviceChange: EnergyConsumerStateChange | undefined): void | undefined | EnergyConsumerStateChange;
17
6
  }
@@ -9,7 +9,7 @@ class EnergyManagerUtils {
9
9
  return false;
10
10
  }
11
11
  if ((lastDeviceChange === null || lastDeviceChange === void 0 ? void 0 : lastDeviceChange.newState) && e === lastDeviceChange.device) {
12
- e.log(models_1.LogLevel.Debug, `This woould have been a matching energy consumer, but apperantly last turn on failed...`);
12
+ e.log(models_1.LogLevel.Debug, 'This woould have been a matching energy consumer, but apperantly last turn on failed...');
13
13
  return false;
14
14
  }
15
15
  return true;
@@ -35,7 +35,7 @@ class EnergyManagerUtils {
35
35
  return false;
36
36
  }
37
37
  if ((lastDeviceChange === null || lastDeviceChange === void 0 ? void 0 : lastDeviceChange.newState) === false && e === lastDeviceChange.device) {
38
- e.log(models_1.LogLevel.Debug, `This woould have been a matching turn off energy consumer, but apperantly last turn off failed...`);
38
+ e.log(models_1.LogLevel.Debug, 'This woould have been a matching turn off energy consumer, but apperantly last turn off failed...');
39
39
  return false;
40
40
  }
41
41
  return true;
@@ -1,3 +1,9 @@
1
+ /**
2
+ * Interface for objects that need to be disposed of (e.g. to free up resources or disable timeouts/intervals)
3
+ */
1
4
  export interface iDisposable {
5
+ /**
6
+ * Dispose of the object --> free up resources, disable timeouts/intervals, etc.
7
+ */
2
8
  dispose(): void;
3
9
  }
@@ -1,4 +1,7 @@
1
1
  export * from './energy-manager-utils';
2
- export * from './ringstorage';
2
+ export * from './ringStorage';
3
3
  export * from './utils';
4
4
  export * from './iDisposeable';
5
+ export { EnergyConsumerStateChange } from './energy-consumer-state-change';
6
+ export { CatchEmResult } from './catchEmResult';
7
+ export { RGB } from './RGB';
@@ -14,7 +14,14 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
+ exports.RGB = exports.CatchEmResult = exports.EnergyConsumerStateChange = void 0;
17
18
  __exportStar(require("./energy-manager-utils"), exports);
18
- __exportStar(require("./ringstorage"), exports);
19
+ __exportStar(require("./ringStorage"), exports);
19
20
  __exportStar(require("./utils"), exports);
20
21
  __exportStar(require("./iDisposeable"), exports);
22
+ var energy_consumer_state_change_1 = require("./energy-consumer-state-change");
23
+ Object.defineProperty(exports, "EnergyConsumerStateChange", { enumerable: true, get: function () { return energy_consumer_state_change_1.EnergyConsumerStateChange; } });
24
+ var catchEmResult_1 = require("./catchEmResult");
25
+ Object.defineProperty(exports, "CatchEmResult", { enumerable: true, get: function () { return catchEmResult_1.CatchEmResult; } });
26
+ var RGB_1 = require("./RGB");
27
+ Object.defineProperty(exports, "RGB", { enumerable: true, get: function () { return RGB_1.RGB; } });
@@ -1,4 +1,4 @@
1
- export declare class ringStorage<T> {
1
+ export declare class RingStorage<T> {
2
2
  private maxSize;
3
3
  private storage;
4
4
  private pointer;
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ringStorage = void 0;
4
- class ringStorage {
3
+ exports.RingStorage = void 0;
4
+ class RingStorage {
5
5
  constructor(maxSize = 10) {
6
6
  this.maxSize = maxSize;
7
7
  this.storage = [];
@@ -24,4 +24,4 @@ class ringStorage {
24
24
  return result;
25
25
  }
26
26
  }
27
- exports.ringStorage = ringStorage;
27
+ exports.RingStorage = RingStorage;
@@ -1,14 +1,17 @@
1
1
  /// <reference types="node" />
2
2
  import { iPersist } from '../dbo';
3
+ import { CatchEmResult } from './catchEmResult';
4
+ import { iTimePair } from '../../config';
5
+ import { RGB } from './RGB';
3
6
  export declare const DAYMS: number;
4
7
  export declare class Utils {
8
+ /**
9
+ * The persitence layer object
10
+ */
5
11
  static dbo: iPersist | undefined;
6
12
  static get anyDboActive(): boolean;
7
13
  static get timeTilMidnight(): number;
8
- static catchEm<T>(promise: Promise<T>): Promise<{
9
- reason: Error | null;
10
- data: T | null;
11
- }>;
14
+ static catchEm<T>(promise: Promise<T>): Promise<CatchEmResult<T>>;
12
15
  static guardedFunction(func: (...args: unknown[]) => void, thisContext: unknown | undefined): void;
13
16
  static nowMS(): number;
14
17
  static delay(ms: number): Promise<void>;
@@ -23,10 +26,7 @@ export declare class Utils {
23
26
  static round(number: number, digits: number): number;
24
27
  static roundDot5(number: number): number;
25
28
  static beetweenDays(date: Date, startDay: number, endDay: number): boolean;
26
- static nowTime(): {
27
- hours: number;
28
- minutes: number;
29
- };
29
+ static nowTime(): iTimePair;
30
30
  static dateByTimeSpan(hours: number, minutes: number, now?: Date): Date;
31
31
  static positiveMod(number: number, mod: number): number;
32
32
  static degreeInBetween(minDegree: number, maxDegree: number, degreeToCheck: number): boolean;
@@ -34,9 +34,5 @@ export declare class Utils {
34
34
  static nextMatchingDate(hours?: number, minutes?: number, now?: Date): Date;
35
35
  static timeWithinBorders(minimumHours: number, minimumMinutes: number, maxHours: number, maxMinutes: number, now?: Date): boolean;
36
36
  static formatHex(hex: string): string | null;
37
- static hexToRgb(color: string): {
38
- r: number;
39
- g: number;
40
- b: number;
41
- } | null;
37
+ static hexToRgb(color: string): RGB | null;
42
38
  }
@@ -5,8 +5,11 @@ import { LogDebugType } from '../log-service';
5
5
  import { VictronDeviceData, VictronMqttConnectionOptions, VictronMqttConsumer } from 'victron-mqtt-consumer';
6
6
  export declare class VictronDevice implements iEnergyManager {
7
7
  private readonly _victronConsumer;
8
+ /** @inheritDoc */
8
9
  readonly deviceCapabilities: DeviceCapability[];
10
+ /** @inheritDoc */
9
11
  deviceType: DeviceType;
12
+ /** @inheritDoc */
10
13
  readonly settings: VictronDeviceSettings;
11
14
  private _excessEnergyConsumer;
12
15
  private blockDeviceChangeTime;
@@ -29,7 +32,8 @@ export declare class VictronDevice implements iEnergyManager {
29
32
  get injectingWattage(): number;
30
33
  get drawingWattage(): number;
31
34
  get selfConsumingWattage(): number;
32
- cleanup(): void;
35
+ /** @inheritDoc */
36
+ dispose(): void;
33
37
  getReport(): string;
34
38
  recalculatePowerSharing(): void;
35
39
  loadDeviceSettings(): void;
@@ -38,7 +42,7 @@ export declare class VictronDevice implements iEnergyManager {
38
42
  toJSON(): Partial<VictronDevice>;
39
43
  /**
40
44
  * Changes the grid set point of the Victron device, to the desired value.
41
- * @param {number} setPoint
45
+ * @param setPoint - The desired watt point the system should aim for.
42
46
  */
43
47
  setGridSetPoint(setPoint: number): void;
44
48
  private calculateExcessEnergy;
@@ -10,7 +10,9 @@ const victron_mqtt_consumer_1 = require("victron-mqtt-consumer");
10
10
  const time_callback_service_1 = require("../time-callback-service");
11
11
  class VictronDevice {
12
12
  constructor(opts) {
13
+ /** @inheritDoc */
13
14
  this.deviceCapabilities = [DeviceCapability_1.DeviceCapability.energyManager];
15
+ /** @inheritDoc */
14
16
  this.deviceType = devices_1.DeviceType.Victron;
15
17
  this._excessEnergyConsumer = [];
16
18
  this.blockDeviceChangeTime = -1;
@@ -20,10 +22,10 @@ class VictronDevice {
20
22
  this._excessEnergy = 0;
21
23
  this.settings = new models_1.VictronDeviceSettings();
22
24
  this._info = new devices_1.DeviceInfo();
23
- this._info.fullName = `Victron Device`;
24
- this._info.customName = `Victron`;
25
- this._info.allDevicesKey = `victron`;
26
- devices_1.Devices.alLDevices[`victron`] = this;
25
+ this._info.fullName = 'Victron Device';
26
+ this._info.customName = 'Victron';
27
+ this._info.allDevicesKey = 'victron';
28
+ devices_1.Devices.alLDevices['victron'] = this;
27
29
  devices_1.Devices.energymanager = this;
28
30
  this.persistDeviceInfo();
29
31
  this.loadDeviceSettings();
@@ -73,7 +75,8 @@ class VictronDevice {
73
75
  var _a;
74
76
  return Math.max((_a = this.victronConsumer.data.system.power) !== null && _a !== void 0 ? _a : 0, 0) - this.drawingWattage;
75
77
  }
76
- cleanup() {
78
+ /** @inheritDoc */
79
+ dispose() {
77
80
  this._victronConsumer.disconnect();
78
81
  if (this._iDatabaseLoggerInterval !== null) {
79
82
  clearInterval(this._iDatabaseLoggerInterval);
@@ -122,7 +125,7 @@ class VictronDevice {
122
125
  }
123
126
  /**
124
127
  * Changes the grid set point of the Victron device, to the desired value.
125
- * @param {number} setPoint
128
+ * @param setPoint - The desired watt point the system should aim for.
126
129
  */
127
130
  setGridSetPoint(setPoint) {
128
131
  this._victronConsumer.setGridSetPoint(setPoint);
@@ -131,7 +134,7 @@ class VictronDevice {
131
134
  var _a;
132
135
  this._excessEnergy = 0;
133
136
  if (this.data == undefined) {
134
- this.log(models_1.LogLevel.Debug, `No data available from Victron device.`);
137
+ this.log(models_1.LogLevel.Debug, 'No data available from Victron device.');
135
138
  return;
136
139
  }
137
140
  // Step 1: Calculate battery need
@@ -140,7 +143,7 @@ class VictronDevice {
140
143
  const timeOfDay = time_callback_service_1.TimeCallbackService.dayType(new time_callback_service_1.SunTimeOffsets());
141
144
  if (this.settings.hasBattery && timeOfDay !== models_1.TimeOfDay.AfterSunset && timeOfDay !== models_1.TimeOfDay.Night) {
142
145
  if (this.data.battery.soc == null) {
143
- this.log(models_1.LogLevel.Debug, `No battery data available from Victron device.`);
146
+ this.log(models_1.LogLevel.Debug, 'No battery data available from Victron device.');
144
147
  return;
145
148
  }
146
149
  neededBatteryWattage = ((1 - this.data.battery.soc) * this.settings.batteryCapacityWattage) / hoursTilSunset;
@@ -193,7 +196,7 @@ class VictronDevice {
193
196
  }
194
197
  if (!result.newState) {
195
198
  this.blockDeviceChangeTime = utils_1.Utils.nowMS() + result.device.energySettings.powerReactionTime;
196
- result.device.log(models_1.LogLevel.Info, `Turning off, as we don't have energy to spare...`);
199
+ result.device.log(models_1.LogLevel.Info, "Turning off, as we don't have energy to spare...");
197
200
  result.device.turnOffDueToMissingEnergy();
198
201
  this._lastDeviceChange = result;
199
202
  }
@@ -7,3 +7,5 @@ export * from './weather-item';
7
7
  export * from './weather-minutes';
8
8
  export * from './weather-service';
9
9
  export * from './weather-temp';
10
+ export { WeatherResponse } from './weather-response';
11
+ export { RainNextMinutesInfo } from './rain-next-minutes-info';
@@ -14,6 +14,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
+ exports.RainNextMinutesInfo = void 0;
17
18
  __exportStar(require("./weather-alert"), exports);
18
19
  __exportStar(require("./weather-current"), exports);
19
20
  __exportStar(require("./weather-daily"), exports);
@@ -23,3 +24,5 @@ __exportStar(require("./weather-item"), exports);
23
24
  __exportStar(require("./weather-minutes"), exports);
24
25
  __exportStar(require("./weather-service"), exports);
25
26
  __exportStar(require("./weather-temp"), exports);
27
+ var rain_next_minutes_info_1 = require("./rain-next-minutes-info");
28
+ Object.defineProperty(exports, "RainNextMinutesInfo", { enumerable: true, get: function () { return rain_next_minutes_info_1.RainNextMinutesInfo; } });
@@ -0,0 +1,5 @@
1
+ export declare class RainNextMinutesInfo {
2
+ minutes: number;
3
+ precipitation: number;
4
+ constructor(minutes: number, precipitation: number);
5
+ }
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.RainNextMinutesInfo = void 0;
4
+ class RainNextMinutesInfo {
5
+ constructor(minutes, precipitation) {
6
+ this.minutes = minutes;
7
+ this.precipitation = precipitation;
8
+ }
9
+ }
10
+ exports.RainNextMinutesInfo = RainNextMinutesInfo;
@@ -2,8 +2,6 @@ import { WeatherItem } from './weather-item';
2
2
  export interface WeatherCurrent {
3
3
  /**
4
4
  * Zeit der Anfrage
5
- * @type {number}
6
- * @memberof WeatherCurrent
7
5
  */
8
6
  dt: number;
9
7
  sunrise: number;
@@ -1,6 +1,21 @@
1
+ /**
2
+ * Temperature data how its recognized by a human for the different times of the day.
3
+ */
1
4
  export interface WeatherFeelsLike {
5
+ /**
6
+ * Day temperature in Celsius
7
+ */
2
8
  day: number;
9
+ /**
10
+ * Night temperature in Celsius
11
+ */
3
12
  night: number;
13
+ /**
14
+ * Evening temperature in Celsius
15
+ */
4
16
  eve: number;
17
+ /**
18
+ * Morning temperature in Celsius
19
+ */
5
20
  morn: number;
6
21
  }
@@ -0,0 +1,16 @@
1
+ import { WeatherCurrent } from './weather-current';
2
+ import { WeatherMinutes } from './weather-minutes';
3
+ import { WeatherHourly } from './weather-hourly';
4
+ import { WeatherDaily } from './weather-daily';
5
+ import { WeatherAlert } from './weather-alert';
6
+ export interface WeatherResponse {
7
+ lat: number;
8
+ lon: number;
9
+ timezone: string;
10
+ timezone_offset: number;
11
+ current: WeatherCurrent;
12
+ minutely: WeatherMinutes[];
13
+ hourly: WeatherHourly[];
14
+ daily: WeatherDaily[];
15
+ alerts?: WeatherAlert[];
16
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -1,30 +1,23 @@
1
- import { WeatherHourly } from './weather-hourly';
2
- import { WeatherCurrent } from './weather-current';
3
- import { WeatherMinutes } from './weather-minutes';
4
- import { WeatherAlert } from './weather-alert';
5
1
  import { iWeatherSettings } from '../../config';
6
2
  import { LogLevel, ShutterSettings } from '../../../models';
7
3
  import { LogDebugType } from '../log-service';
8
- import { WeatherDaily } from './weather-daily';
9
4
  import { iSpeaker } from '../../devices';
10
- export interface WeatherResponse {
11
- lat: number;
12
- lon: number;
13
- timezone: string;
14
- timezone_offset: number;
15
- current: WeatherCurrent;
16
- minutely: WeatherMinutes[];
17
- hourly: WeatherHourly[];
18
- daily: WeatherDaily[];
19
- alerts?: WeatherAlert[];
20
- }
5
+ import { WeatherResponse } from './weather-response';
21
6
  export declare class WeatherService {
7
+ /**
8
+ * Whether the service is active or not
9
+ */
22
10
  static active: boolean;
23
- static oneDay: number;
11
+ /**
12
+ * The milliseconds of one day
13
+ */
14
+ static readonly oneDay: number;
15
+ /**
16
+ * The last weather response
17
+ */
24
18
  static lastResponse: WeatherResponse;
25
19
  /**
26
20
  * The sun horizontal degree (0 is North)
27
- * @type {number}
28
21
  */
29
22
  static sunDirection: number;
30
23
  private static _dataUpdateCbs;
@@ -46,5 +39,9 @@ export declare class WeatherService {
46
39
  private static getActiveAlerts;
47
40
  private static getWeatherData;
48
41
  private static recalcAzimuth;
42
+ /**
43
+ * Method to calculate the hours until sunset based on the current location
44
+ * @returns - The hours until sunset
45
+ */
49
46
  private static hoursTilSunset;
50
47
  }