hoffmation-base 3.0.0-alpha.3 → 3.0.0-alpha.30

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 (475) 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/blockAutomaticSettings.d.ts +23 -0
  6. package/lib/models/blockAutomaticSettings.js +19 -0
  7. package/lib/models/command/ShutterSetLevelCommand.d.ts +8 -0
  8. package/lib/models/command/ShutterSetLevelCommand.js +9 -1
  9. package/lib/models/command/WindowRestoreDesiredPositionCommand.d.ts +6 -0
  10. package/lib/models/command/WindowRestoreDesiredPositionCommand.js +6 -0
  11. package/lib/models/command/WindowSetDesiredPositionCommand.d.ts +7 -0
  12. package/lib/models/command/WindowSetDesiredPositionCommand.js +7 -0
  13. package/lib/models/command/WindowSetRolloByWeatherStatusCommand.d.ts +6 -0
  14. package/lib/models/command/WindowSetRolloByWeatherStatusCommand.js +6 -0
  15. package/lib/models/command/actuatorSetStateCommand.d.ts +17 -2
  16. package/lib/models/command/actuatorSetStateCommand.js +15 -6
  17. package/lib/models/command/actuatorToggleCommand.d.ts +6 -1
  18. package/lib/models/command/actuatorToggleCommand.js +6 -3
  19. package/lib/models/command/actuatorWriteStateToDeviceCommand.d.ts +8 -1
  20. package/lib/models/command/actuatorWriteStateToDeviceCommand.js +13 -2
  21. package/lib/models/command/baseCommand.d.ts +22 -1
  22. package/lib/models/command/baseCommand.js +43 -9
  23. package/lib/models/command/blockAutomaticCommand.d.ts +32 -0
  24. package/lib/models/command/blockAutomaticCommand.js +40 -0
  25. package/lib/models/command/blockAutomaticLiftBlockCommand.d.ts +18 -0
  26. package/lib/models/command/blockAutomaticLiftBlockCommand.js +23 -0
  27. package/lib/models/command/blockAutomaticUntilCommand.d.ts +26 -0
  28. package/lib/models/command/blockAutomaticUntilCommand.js +29 -0
  29. package/lib/models/command/commandSource.d.ts +19 -0
  30. package/lib/models/command/commandSource.js +20 -0
  31. package/lib/models/command/commandType.d.ts +3 -0
  32. package/lib/models/command/commandType.js +3 -0
  33. package/lib/models/command/dimmerSetLightCommand.d.ts +12 -7
  34. package/lib/models/command/dimmerSetLightCommand.js +19 -13
  35. package/lib/models/command/floorSetAllShuttersCommand.d.ts +5 -4
  36. package/lib/models/command/floorSetAllShuttersCommand.js +5 -4
  37. package/lib/models/command/index.d.ts +3 -0
  38. package/lib/models/command/index.js +7 -1
  39. package/lib/models/command/lampSetLightCommand.d.ts +12 -1
  40. package/lib/models/command/lampSetLightCommand.js +14 -3
  41. package/lib/models/command/lampSetTimeBasedCommand.d.ts +14 -7
  42. package/lib/models/command/lampSetTimeBasedCommand.js +8 -10
  43. package/lib/models/command/lampToggleLightCommand.d.ts +6 -5
  44. package/lib/models/command/lampToggleLightCommand.js +7 -6
  45. package/lib/models/command/ledSetLightCommand.d.ts +20 -10
  46. package/lib/models/command/ledSetLightCommand.js +26 -16
  47. package/lib/models/command/lightGroupSwitchTimeConditionalCommand.d.ts +7 -0
  48. package/lib/models/command/lightGroupSwitchTimeConditionalCommand.js +7 -0
  49. package/lib/models/command/restoreTargetAutomaticValueCommand.d.ts +6 -1
  50. package/lib/models/command/restoreTargetAutomaticValueCommand.js +6 -3
  51. package/lib/models/command/roomRestoreLightCommand.d.ts +6 -0
  52. package/lib/models/command/roomRestoreLightCommand.js +6 -0
  53. package/lib/models/command/roomRestoreShutterPositionCommand.d.ts +7 -0
  54. package/lib/models/command/roomRestoreShutterPositionCommand.js +7 -0
  55. package/lib/models/command/roomSetLightTimeBasedCommand.d.ts +4 -3
  56. package/lib/models/command/roomSetLightTimeBasedCommand.js +4 -3
  57. package/lib/models/command/shutterSunriseUpCommand.d.ts +6 -0
  58. package/lib/models/command/shutterSunriseUpCommand.js +6 -0
  59. package/lib/models/command/shutterSunsetDownCommand.d.ts +6 -0
  60. package/lib/models/command/shutterSunsetDownCommand.js +6 -0
  61. package/lib/models/command/wledSetLightCommand.d.ts +15 -1
  62. package/lib/models/command/wledSetLightCommand.js +22 -6
  63. package/lib/models/connectionCallbacks.d.ts +4 -4
  64. package/lib/models/connectionCallbacks.js +1 -0
  65. package/lib/models/deviceConfig.d.ts +3 -3
  66. package/lib/models/deviceSettings/acSettings.d.ts +19 -5
  67. package/lib/models/deviceSettings/acSettings.js +23 -8
  68. package/lib/models/deviceSettings/actuatorSettings.d.ts +13 -4
  69. package/lib/models/deviceSettings/actuatorSettings.js +19 -9
  70. package/lib/models/deviceSettings/cameraSettings.d.ts +12 -0
  71. package/lib/models/deviceSettings/cameraSettings.js +12 -0
  72. package/lib/models/deviceSettings/dachsSettings.d.ts +3 -0
  73. package/lib/models/deviceSettings/dachsSettings.js +3 -0
  74. package/lib/models/deviceSettings/deviceSettings.d.ts +10 -0
  75. package/lib/models/deviceSettings/deviceSettings.js +16 -0
  76. package/lib/models/deviceSettings/dimmerSettings.d.ts +20 -0
  77. package/lib/models/deviceSettings/dimmerSettings.js +20 -0
  78. package/lib/models/deviceSettings/garageDoorOpenerSettings.d.ts +0 -1
  79. package/lib/models/deviceSettings/garageDoorOpenerSettings.js +0 -1
  80. package/lib/models/deviceSettings/handleSettings.d.ts +9 -0
  81. package/lib/models/deviceSettings/handleSettings.js +9 -0
  82. package/lib/models/deviceSettings/heaterSettings.d.ts +21 -9
  83. package/lib/models/deviceSettings/heaterSettings.js +21 -9
  84. package/lib/models/deviceSettings/ledSettings.d.ts +66 -0
  85. package/lib/models/deviceSettings/ledSettings.js +76 -18
  86. package/lib/models/deviceSettings/motionSensorSettings.d.ts +5 -1
  87. package/lib/models/deviceSettings/motionSensorSettings.js +5 -1
  88. package/lib/models/deviceSettings/sceneSettings.d.ts +4 -0
  89. package/lib/models/deviceSettings/shutterSettings.d.ts +11 -3
  90. package/lib/models/deviceSettings/shutterSettings.js +11 -3
  91. package/lib/models/deviceSettings/sonosDeviceSettings.d.ts +4 -0
  92. package/lib/models/deviceSettings/sonosDeviceSettings.js +4 -0
  93. package/lib/models/deviceSettings/tvSettings.d.ts +4 -0
  94. package/lib/models/deviceSettings/victronDeviceSettings.d.ts +34 -0
  95. package/lib/models/deviceSettings/victronDeviceSettings.js +34 -0
  96. package/lib/models/deviceSettings/wledSettings.d.ts +48 -0
  97. package/lib/models/deviceSettings/wledSettings.js +37 -13
  98. package/lib/models/groupSettings/heatGroupSettings.d.ts +12 -1
  99. package/lib/models/groupSettings/heatGroupSettings.js +12 -1
  100. package/lib/models/iIdHolder.d.ts +18 -0
  101. package/lib/models/index.d.ts +1 -1
  102. package/lib/models/index.js +3 -1
  103. package/lib/models/objectSettings.d.ts +5 -2
  104. package/lib/models/objectSettings.js +2 -2
  105. package/lib/models/persistence/EnergyCalculation.d.ts +27 -0
  106. package/lib/models/persistence/EnergyCalculation.js +30 -4
  107. package/lib/models/persistence/index.d.ts +0 -2
  108. package/lib/models/persistence/index.js +0 -2
  109. package/lib/models/rooms/RoomBase.d.ts +12 -1
  110. package/lib/models/rooms/RoomBase.js +5 -3
  111. package/lib/models/rooms/RoomSettings/RoomInitializationSettings.d.ts +2 -1
  112. package/lib/models/rooms/RoomSettings/RoomInitializationSettings.js +2 -2
  113. package/lib/models/rooms/RoomSettings/RoomSettingsController.d.ts +9 -0
  114. package/lib/models/rooms/RoomSettings/RoomSettingsController.js +1 -1
  115. package/lib/models/rooms/RoomSettings/iRoomDefaultSettings.d.ts +53 -3
  116. package/lib/models/rooms/RoomSettings/iRoomInitializationSettings.d.ts +10 -1
  117. package/lib/models/rooms/RoomSettings/roomDeviceAddingSettings.d.ts +4 -1
  118. package/lib/models/rooms/RoomSettings/roomDeviceAddingSettings.js +3 -0
  119. package/lib/models/rooms/RoomSettings/roomSettings.d.ts +55 -0
  120. package/lib/models/rooms/RoomSettings/roomSettings.js +55 -0
  121. package/lib/models/rooms/iRoomBase.d.ts +39 -0
  122. package/lib/models/rooms/iRoomImportEnforcer.d.ts +8 -0
  123. package/lib/models/timeCallback.d.ts +7 -0
  124. package/lib/models/timeCallback.js +6 -3
  125. package/lib/server/config/heatingMode.d.ts +2 -1
  126. package/lib/server/config/heatingMode.js +2 -1
  127. package/lib/server/config/iAsusConfig.d.ts +15 -0
  128. package/lib/server/config/iBlockAutomaticHandlerDefaults.d.ts +23 -0
  129. package/lib/server/config/iBlueIrisSettings.d.ts +14 -0
  130. package/lib/server/config/iBluetoothTrackingSettings.d.ts +9 -0
  131. package/lib/server/config/iConfig.d.ts +92 -5
  132. package/lib/server/config/iDachsSettings.d.ts +16 -0
  133. package/lib/server/config/iDaikinSettings.d.ts +17 -0
  134. package/lib/server/config/iEnergyManagerSettings.d.ts +13 -0
  135. package/lib/server/config/iEspresenseSettings.d.ts +10 -0
  136. package/lib/server/config/iHeaterSettings.d.ts +8 -0
  137. package/lib/server/config/iIobrokerSettigns.d.ts +8 -0
  138. package/lib/server/config/iLogSettings.d.ts +36 -1
  139. package/lib/server/config/iMp3Settings.d.ts +10 -0
  140. package/lib/server/config/iMuellSettings.d.ts +7 -0
  141. package/lib/server/config/iNewsSettings.d.ts +13 -0
  142. package/lib/server/config/iPersistenceSettings.d.ts +10 -0
  143. package/lib/server/config/iPollySettings.d.ts +22 -0
  144. package/lib/server/config/iRestSettings.d.ts +10 -0
  145. package/lib/server/config/iSonosSettings.d.ts +10 -0
  146. package/lib/server/config/iTelegramSettings.d.ts +17 -0
  147. package/lib/server/config/iTibberSettings.d.ts +10 -0
  148. package/lib/server/config/iTimePair.d.ts +9 -0
  149. package/lib/server/config/iTimeSettings.d.ts +9 -0
  150. package/lib/server/config/iTranslationSettings.d.ts +10 -0
  151. package/lib/server/config/iUnifiConnectionOptions.d.ts +31 -0
  152. package/lib/server/config/iUnifiSettings.d.ts +8 -0
  153. package/lib/server/config/iVictronSettings.d.ts +14 -0
  154. package/lib/server/config/iWeatherSettings.d.ts +13 -0
  155. package/lib/server/config/index.d.ts +1 -0
  156. package/lib/server/devices/DeviceCapability.d.ts +1 -0
  157. package/lib/server/devices/DeviceCapability.js +1 -0
  158. package/lib/server/devices/DeviceInfo.d.ts +9 -0
  159. package/lib/server/devices/DeviceInfo.js +6 -0
  160. package/lib/server/devices/Griffe.js +1 -2
  161. package/lib/server/devices/Heizgruppen.js +2 -2
  162. package/lib/server/devices/IoBrokerBaseDevice.d.ts +34 -18
  163. package/lib/server/devices/IoBrokerBaseDevice.js +37 -21
  164. package/lib/server/devices/IoBrokerDeviceInfo.d.ts +2 -2
  165. package/lib/server/devices/IoBrokerDeviceInfo.js +6 -4
  166. package/lib/server/devices/baseDeviceInterfaces/iAcDevice.d.ts +41 -3
  167. package/lib/server/devices/baseDeviceInterfaces/iActuator.d.ts +18 -0
  168. package/lib/server/devices/baseDeviceInterfaces/iBaseDevice.d.ts +26 -1
  169. package/lib/server/devices/baseDeviceInterfaces/iBatteryDevice.d.ts +12 -1
  170. package/lib/server/devices/baseDeviceInterfaces/iBluetoothDetector.d.ts +15 -7
  171. package/lib/server/devices/baseDeviceInterfaces/iButtonSwitch.d.ts +42 -0
  172. package/lib/server/devices/baseDeviceInterfaces/iCameraDevice.d.ts +46 -3
  173. package/lib/server/devices/baseDeviceInterfaces/iDimmableLamp.d.ts +17 -2
  174. package/lib/server/devices/baseDeviceInterfaces/iEnergyManager.d.ts +32 -2
  175. package/lib/server/devices/baseDeviceInterfaces/iExcessEnergyConsumer.d.ts +30 -2
  176. package/lib/server/devices/baseDeviceInterfaces/iGarageDoorOpener.d.ts +21 -0
  177. package/lib/server/devices/baseDeviceInterfaces/iHandleSensor.d.ts +24 -0
  178. package/lib/server/devices/baseDeviceInterfaces/iHeater.d.ts +40 -4
  179. package/lib/server/devices/baseDeviceInterfaces/iHumiditySensor.d.ts +19 -0
  180. package/lib/server/devices/baseDeviceInterfaces/iIlluminationSensor.d.ts +11 -0
  181. package/lib/server/devices/baseDeviceInterfaces/iLamp.d.ts +9 -0
  182. package/lib/server/devices/baseDeviceInterfaces/iLedRgbCct.d.ts +20 -0
  183. package/lib/server/devices/baseDeviceInterfaces/iLoadMeter.d.ts +5 -0
  184. package/lib/server/devices/baseDeviceInterfaces/iMagnetSensor.d.ts +31 -0
  185. package/lib/server/devices/baseDeviceInterfaces/iMagnetSensor.js +2 -0
  186. package/lib/server/devices/baseDeviceInterfaces/iMotionSensor.d.ts +21 -1
  187. package/lib/server/devices/baseDeviceInterfaces/iRoomDevice.d.ts +6 -0
  188. package/lib/server/devices/baseDeviceInterfaces/iScene.d.ts +31 -1
  189. package/lib/server/devices/baseDeviceInterfaces/iShutter.d.ts +24 -0
  190. package/lib/server/devices/baseDeviceInterfaces/iSmokeDetectorDevice.d.ts +12 -0
  191. package/lib/server/devices/baseDeviceInterfaces/iSpeaker.d.ts +30 -0
  192. package/lib/server/devices/baseDeviceInterfaces/iTemperatureSensor.d.ts +30 -1
  193. package/lib/server/devices/baseDeviceInterfaces/iTemporaryDisableAutomatic.d.ts +13 -0
  194. package/lib/server/devices/baseDeviceInterfaces/iTvDevice.d.ts +20 -0
  195. package/lib/server/devices/baseDeviceInterfaces/iVibrationSensor.d.ts +24 -5
  196. package/lib/server/devices/baseDeviceInterfaces/index.d.ts +1 -0
  197. package/lib/server/devices/blueIris/cameraDevice.d.ts +47 -32
  198. package/lib/server/devices/blueIris/cameraDevice.js +75 -75
  199. package/lib/server/devices/button/button.d.ts +0 -1
  200. package/lib/server/devices/button/button.js +0 -4
  201. package/lib/server/devices/button/buttonCallback.d.ts +5 -0
  202. package/lib/server/devices/button/buttonCallback.js +10 -0
  203. package/lib/server/devices/button/buttonCapabilities.d.ts +12 -0
  204. package/lib/server/devices/button/buttonCapabilities.js +12 -0
  205. package/lib/server/devices/button/index.d.ts +1 -0
  206. package/lib/server/devices/button/index.js +3 -0
  207. package/lib/server/devices/dachs/dachs.d.ts +31 -9
  208. package/lib/server/devices/dachs/dachs.js +27 -17
  209. package/lib/server/devices/dachs/dachsTemperatureSensor.d.ts +20 -1
  210. package/lib/server/devices/dachs/dachsTemperatureSensor.js +20 -3
  211. package/lib/server/devices/dachs/interfaces/DachsClientOptions.d.ts +30 -0
  212. package/lib/server/devices/dachs/interfaces/KeyListEntity.d.ts +0 -8
  213. package/lib/server/devices/dachs/interfaces/KeyListEntity.js +0 -8
  214. package/lib/server/devices/dachs/interfaces/dachsInfluxDataPoint.d.ts +12 -0
  215. package/lib/server/devices/dachs/interfaces/influxDbConnectionOptions.d.ts +21 -1
  216. package/lib/server/devices/dachs/lib/dachsHttpClient.d.ts +1 -1
  217. package/lib/server/devices/dachs/lib/dachsHttpClient.js +2 -2
  218. package/lib/server/devices/device-cluster.d.ts +3 -0
  219. package/lib/server/devices/device-cluster.js +1 -1
  220. package/lib/server/devices/deviceUpdater.d.ts +0 -3
  221. package/lib/server/devices/deviceUpdater.js +1 -4
  222. package/lib/server/devices/devices.d.ts +43 -7
  223. package/lib/server/devices/devices.js +42 -6
  224. package/lib/server/devices/espresense/detectedBluetoothDevice.d.ts +13 -0
  225. package/lib/server/devices/espresense/detectedBluetoothDevice.js +14 -1
  226. package/lib/server/devices/espresense/espresenseDevice.d.ts +31 -1
  227. package/lib/server/devices/espresense/espresenseDevice.js +28 -4
  228. package/lib/server/devices/espresense/trackedDistanceData.d.ts +12 -0
  229. package/lib/server/devices/espresense/trackedDistanceData.js +3 -0
  230. package/lib/server/devices/espresense/trilateration.d.ts +7 -0
  231. package/lib/server/devices/espresense/trilateration.js +7 -0
  232. package/lib/server/devices/espresense/trilaterationBasePoint.d.ts +6 -0
  233. package/lib/server/devices/espresense/trilaterationBasePoint.js +3 -0
  234. package/lib/server/devices/espresense/trilaterationPoint.d.ts +1 -1
  235. package/lib/server/devices/espresense/trilaterationPoint.js +3 -1
  236. package/lib/server/devices/groups/Window.d.ts +7 -1
  237. package/lib/server/devices/groups/Window.js +16 -8
  238. package/lib/server/devices/groups/base-group.d.ts +4 -0
  239. package/lib/server/devices/groups/base-group.js +3 -0
  240. package/lib/server/devices/groups/heatGroup.d.ts +8 -6
  241. package/lib/server/devices/groups/heatGroup.js +11 -11
  242. package/lib/server/devices/groups/lightGroup.d.ts +10 -2
  243. package/lib/server/devices/groups/lightGroup.js +14 -13
  244. package/lib/server/devices/groups/presenceGroup.d.ts +0 -1
  245. package/lib/server/devices/groups/presenceGroup.js +0 -1
  246. package/lib/server/devices/groups/tasterGroup.js +6 -6
  247. package/lib/server/devices/groups/windowGroup.d.ts +11 -1
  248. package/lib/server/devices/groups/windowGroup.js +6 -6
  249. package/lib/server/devices/hmIPDevices/hmIpAccessPoint.d.ts +1 -0
  250. package/lib/server/devices/hmIPDevices/hmIpAccessPoint.js +1 -0
  251. package/lib/server/devices/hmIPDevices/hmIpBewegung.d.ts +7 -4
  252. package/lib/server/devices/hmIPDevices/hmIpBewegung.js +9 -10
  253. package/lib/server/devices/hmIPDevices/hmIpDevice.d.ts +1 -2
  254. package/lib/server/devices/hmIPDevices/hmIpDevice.js +2 -3
  255. package/lib/server/devices/hmIPDevices/hmIpGriff.d.ts +27 -5
  256. package/lib/server/devices/hmIPDevices/hmIpGriff.js +59 -37
  257. package/lib/server/devices/hmIPDevices/hmIpHeizgruppe.d.ts +22 -2
  258. package/lib/server/devices/hmIPDevices/hmIpHeizgruppe.js +23 -10
  259. package/lib/server/devices/hmIPDevices/hmIpHeizung.d.ts +1 -0
  260. package/lib/server/devices/hmIPDevices/hmIpHeizung.js +1 -0
  261. package/lib/server/devices/hmIPDevices/hmIpLampe.d.ts +6 -0
  262. package/lib/server/devices/hmIPDevices/hmIpLampe.js +7 -3
  263. package/lib/server/devices/hmIPDevices/hmIpPraezenz.d.ts +3 -1
  264. package/lib/server/devices/hmIPDevices/hmIpPraezenz.js +4 -2
  265. package/lib/server/devices/hmIPDevices/hmIpRoll.d.ts +2 -0
  266. package/lib/server/devices/hmIPDevices/hmIpRoll.js +7 -5
  267. package/lib/server/devices/hmIPDevices/hmIpTaster.d.ts +15 -0
  268. package/lib/server/devices/hmIPDevices/hmIpTaster.js +9 -0
  269. package/lib/server/devices/hmIPDevices/hmIpTherm.d.ts +1 -0
  270. package/lib/server/devices/hmIPDevices/hmIpTherm.js +1 -0
  271. package/lib/server/devices/hmIPDevices/hmIpTuer.d.ts +9 -1
  272. package/lib/server/devices/hmIPDevices/hmIpTuer.js +17 -4
  273. package/lib/server/devices/hmIPDevices/hmIpWippe.d.ts +27 -0
  274. package/lib/server/devices/hmIPDevices/hmIpWippe.js +3 -0
  275. package/lib/server/devices/iDeviceUpdater.d.ts +14 -0
  276. package/lib/server/devices/index.d.ts +1 -0
  277. package/lib/server/devices/index.js +3 -0
  278. package/lib/server/devices/jsObject/jsObjectEnergyManager.d.ts +3 -1
  279. package/lib/server/devices/jsObject/jsObjectEnergyManager.js +5 -3
  280. package/lib/server/devices/nameAmountValuePair.d.ts +5 -0
  281. package/lib/server/devices/nameAmountValuePair.js +10 -0
  282. package/lib/server/devices/scene/room-scene.d.ts +23 -6
  283. package/lib/server/devices/scene/room-scene.js +18 -4
  284. package/lib/server/devices/sharedFunctions/lampUtils.d.ts +1 -0
  285. package/lib/server/devices/sharedFunctions/lampUtils.js +44 -19
  286. package/lib/server/devices/shelly/shellyDevice.d.ts +2 -1
  287. package/lib/server/devices/shelly/shellyDevice.js +2 -1
  288. package/lib/server/devices/shelly/shellyTrv.d.ts +28 -16
  289. package/lib/server/devices/shelly/shellyTrv.js +46 -45
  290. package/lib/server/devices/tuya/tuyaDevice.d.ts +2 -1
  291. package/lib/server/devices/tuya/tuyaDevice.js +2 -1
  292. package/lib/server/devices/tuya/tuyaGarageOpener.d.ts +3 -0
  293. package/lib/server/devices/tuya/tuyaGarageOpener.js +3 -0
  294. package/lib/server/devices/tv/samsungTv.d.ts +1 -0
  295. package/lib/server/devices/tv/samsungTv.js +1 -0
  296. package/lib/server/devices/tv/tvDevice.d.ts +7 -1
  297. package/lib/server/devices/tv/tvDevice.js +4 -3
  298. package/lib/server/devices/wledDevice.d.ts +16 -2
  299. package/lib/server/devices/wledDevice.js +35 -12
  300. package/lib/server/devices/zigbee/BaseDevices/ZigbeeActuator.d.ts +15 -3
  301. package/lib/server/devices/zigbee/BaseDevices/ZigbeeActuator.js +23 -9
  302. package/lib/server/devices/zigbee/BaseDevices/index.d.ts +1 -0
  303. package/lib/server/devices/zigbee/BaseDevices/index.js +3 -0
  304. package/lib/server/devices/zigbee/BaseDevices/zigbeeDevice.d.ts +4 -5
  305. package/lib/server/devices/zigbee/BaseDevices/zigbeeDevice.js +15 -22
  306. package/lib/server/devices/zigbee/BaseDevices/zigbeeDimmer.d.ts +8 -23
  307. package/lib/server/devices/zigbee/BaseDevices/zigbeeDimmer.js +21 -61
  308. package/lib/server/devices/zigbee/BaseDevices/zigbeeHeater.d.ts +17 -4
  309. package/lib/server/devices/zigbee/BaseDevices/zigbeeHeater.js +17 -11
  310. package/lib/server/devices/zigbee/BaseDevices/zigbeeLamp.d.ts +20 -0
  311. package/lib/server/devices/zigbee/BaseDevices/zigbeeLamp.js +47 -0
  312. package/lib/server/devices/zigbee/BaseDevices/zigbeeLedRGBCCT.d.ts +9 -8
  313. package/lib/server/devices/zigbee/BaseDevices/zigbeeLedRGBCCT.js +15 -13
  314. package/lib/server/devices/zigbee/BaseDevices/zigbeeMagnetContact.d.ts +12 -2
  315. package/lib/server/devices/zigbee/BaseDevices/zigbeeMagnetContact.js +11 -1
  316. package/lib/server/devices/zigbee/BaseDevices/zigbeeMotionSensor.d.ts +20 -12
  317. package/lib/server/devices/zigbee/BaseDevices/zigbeeMotionSensor.js +45 -41
  318. package/lib/server/devices/zigbee/BaseDevices/zigbeeShutter.d.ts +10 -0
  319. package/lib/server/devices/zigbee/BaseDevices/zigbeeShutter.js +16 -6
  320. package/lib/server/devices/zigbee/BaseDevices/zigbeeSwitch.d.ts +9 -1
  321. package/lib/server/devices/zigbee/BaseDevices/zigbeeSwitch.js +8 -1
  322. package/lib/server/devices/zigbee/zigbeeAqaraMagnetContact.d.ts +1 -0
  323. package/lib/server/devices/zigbee/zigbeeAqaraMagnetContact.js +1 -0
  324. package/lib/server/devices/zigbee/zigbeeAqaraOpple3Switch.d.ts +16 -0
  325. package/lib/server/devices/zigbee/zigbeeAqaraOpple3Switch.js +16 -0
  326. package/lib/server/devices/zigbee/zigbeeAquaraMotion.d.ts +6 -0
  327. package/lib/server/devices/zigbee/zigbeeAquaraMotion.js +7 -3
  328. package/lib/server/devices/zigbee/zigbeeAquaraVibra.d.ts +49 -11
  329. package/lib/server/devices/zigbee/zigbeeAquaraVibra.js +98 -30
  330. package/lib/server/devices/zigbee/zigbeeAquaraWater.d.ts +12 -1
  331. package/lib/server/devices/zigbee/zigbeeAquaraWater.js +15 -11
  332. package/lib/server/devices/zigbee/zigbeeBlitzShp.d.ts +15 -5
  333. package/lib/server/devices/zigbee/zigbeeBlitzShp.js +22 -14
  334. package/lib/server/devices/zigbee/zigbeeEuroHeater.d.ts +10 -4
  335. package/lib/server/devices/zigbee/zigbeeEuroHeater.js +16 -10
  336. package/lib/server/devices/zigbee/zigbeeHeimanSmoke.d.ts +19 -1
  337. package/lib/server/devices/zigbee/zigbeeHeimanSmoke.js +25 -7
  338. package/lib/server/devices/zigbee/zigbeeIkeaShutter.d.ts +1 -0
  339. package/lib/server/devices/zigbee/zigbeeIkeaShutter.js +1 -0
  340. package/lib/server/devices/zigbee/zigbeeIkeaSteckdose.d.ts +2 -0
  341. package/lib/server/devices/zigbee/zigbeeIkeaSteckdose.js +3 -1
  342. package/lib/server/devices/zigbee/zigbeeIlluActuator.d.ts +1 -2
  343. package/lib/server/devices/zigbee/zigbeeIlluActuator.js +2 -11
  344. package/lib/server/devices/zigbee/zigbeeIlluLampe.d.ts +4 -10
  345. package/lib/server/devices/zigbee/zigbeeIlluLampe.js +4 -32
  346. package/lib/server/devices/zigbee/zigbeeIlluShutter.d.ts +1 -0
  347. package/lib/server/devices/zigbee/zigbeeIlluShutter.js +1 -0
  348. package/lib/server/devices/zigbee/zigbeeSMaBiTMagnetContact.d.ts +1 -0
  349. package/lib/server/devices/zigbee/zigbeeSMaBiTMagnetContact.js +1 -0
  350. package/lib/server/devices/zigbee/zigbeeSonoffMotion.d.ts +1 -0
  351. package/lib/server/devices/zigbee/zigbeeSonoffMotion.js +1 -0
  352. package/lib/server/devices/zigbee/zigbeeSonoffTemp.d.ts +17 -0
  353. package/lib/server/devices/zigbee/zigbeeSonoffTemp.js +18 -1
  354. package/lib/server/devices/zigbee/zigbeeTuyaValve.d.ts +10 -3
  355. package/lib/server/devices/zigbee/zigbeeTuyaValve.js +11 -6
  356. package/lib/server/devices/zigbee/zigbeeUbisysActuator.d.ts +9 -2
  357. package/lib/server/devices/zigbee/zigbeeUbisysActuator.js +10 -8
  358. package/lib/server/devices/zigbee/zigbeeUbisysLampe.d.ts +9 -9
  359. package/lib/server/devices/zigbee/zigbeeUbisysLampe.js +15 -24
  360. package/lib/server/devices/zigbee/zigbeeUbisysShutter.d.ts +1 -0
  361. package/lib/server/devices/zigbee/zigbeeUbisysShutter.js +1 -0
  362. package/lib/server/ioBroker/connection.d.ts +21 -20
  363. package/lib/server/ioBroker/connection.js +37 -28
  364. package/lib/server/ioBroker/ioBroker.main.d.ts +3 -0
  365. package/lib/server/ioBroker/ioBroker.main.js +4 -3
  366. package/lib/server/ioBroker/iobrokerConnectionLogging.d.ts +3 -0
  367. package/lib/server/ioBroker/iobrokerConnectionLogging.js +4 -0
  368. package/lib/server/ioBroker/socketIOConnectOptions.d.ts +2 -2
  369. package/lib/server/ioBroker/socketIOConnectOptions.js +1 -0
  370. package/lib/server/ioBroker/socketIOVisCommand.d.ts +5 -1
  371. package/lib/server/ioBroker/socketIOVisCommand.js +1 -0
  372. package/lib/server/services/ShutterService.js +6 -6
  373. package/lib/server/services/Sonos/OwnSonosDevices.d.ts +3 -0
  374. package/lib/server/services/Sonos/OwnSonosDevices.js +3 -0
  375. package/lib/server/services/Sonos/mp3-server.d.ts +3 -1
  376. package/lib/server/services/Sonos/mp3-server.js +3 -1
  377. package/lib/server/services/Sonos/own-sonos-device.d.ts +4 -1
  378. package/lib/server/services/Sonos/own-sonos-device.js +4 -4
  379. package/lib/server/services/Sonos/polly-service.d.ts +7 -1
  380. package/lib/server/services/Sonos/polly-service.js +10 -8
  381. package/lib/server/services/Sonos/sonos-service.d.ts +0 -5
  382. package/lib/server/services/Sonos/sonos-service.js +6 -10
  383. package/lib/server/services/Telegram/telegram-Commands.js +5 -5
  384. package/lib/server/services/Telegram/telegram-service.d.ts +2 -1
  385. package/lib/server/services/Telegram/telegram-service.js +8 -3
  386. package/lib/server/services/Translation/IRessourceObject.d.ts +13 -0
  387. package/lib/server/services/Translation/IRessourceObject.js +2 -0
  388. package/lib/server/services/Translation/iRessources.d.ts +1 -4
  389. package/lib/server/services/Translation/index.d.ts +1 -0
  390. package/lib/server/services/Translation/res.d.ts +34 -19
  391. package/lib/server/services/Translation/res.js +34 -19
  392. package/lib/server/services/ac/ac-device.d.ts +48 -6
  393. package/lib/server/services/ac/ac-device.js +83 -33
  394. package/lib/server/services/ac/daikin-service.js +4 -3
  395. package/lib/server/services/ac/own-ac-devices.d.ts +3 -0
  396. package/lib/server/services/ac/own-ac-devices.js +3 -0
  397. package/lib/server/services/ac/own-daikin-device.d.ts +17 -0
  398. package/lib/server/services/ac/own-daikin-device.js +32 -7
  399. package/lib/server/services/api/api-service.d.ts +118 -53
  400. package/lib/server/services/api/api-service.js +170 -80
  401. package/lib/server/services/blockAutomaticHandler.d.ts +11 -8
  402. package/lib/server/services/blockAutomaticHandler.js +29 -13
  403. package/lib/server/services/calendar/index.d.ts +1 -0
  404. package/lib/server/services/calendar/index.js +3 -0
  405. package/lib/server/services/calendar/muell-tonne.d.ts +11 -1
  406. package/lib/server/services/calendar/muell-tonne.js +10 -0
  407. package/lib/server/services/calendar/m/303/274ll-service.d.ts +23 -8
  408. package/lib/server/services/calendar/m/303/274ll-service.js +11 -5
  409. package/lib/server/services/calendar/name-date-pair.d.ts +5 -0
  410. package/lib/server/services/calendar/name-date-pair.js +10 -0
  411. package/lib/server/services/dbo/iPersist.d.ts +103 -0
  412. package/lib/server/services/dbo/postgreSqlPersist.d.ts +23 -0
  413. package/lib/server/services/dbo/postgreSqlPersist.js +28 -5
  414. package/lib/server/services/file-info.d.ts +5 -0
  415. package/lib/server/services/file-info.js +10 -0
  416. package/lib/server/services/govee/govee-service.d.ts +1 -5
  417. package/lib/server/services/govee/govee-service.js +3 -5
  418. package/lib/server/services/govee/own-govee-device.d.ts +17 -12
  419. package/lib/server/services/govee/own-govee-device.js +20 -24
  420. package/lib/server/services/govee/own-govee-devices.d.ts +3 -0
  421. package/lib/server/services/govee/own-govee-devices.js +3 -0
  422. package/lib/server/services/https-service.d.ts +3 -2
  423. package/lib/server/services/https-service.js +4 -3
  424. package/lib/server/services/index.d.ts +1 -0
  425. package/lib/server/services/index.js +3 -0
  426. package/lib/server/services/log-service/index.d.ts +1 -0
  427. package/lib/server/services/log-service/index.js +3 -0
  428. package/lib/server/services/log-service/log-debug-type.d.ts +12 -0
  429. package/lib/server/services/log-service/log-debug-type.js +16 -0
  430. package/lib/server/services/log-service/log-filter-data.d.ts +21 -12
  431. package/lib/server/services/log-service/log-filter-data.js +6 -15
  432. package/lib/server/services/log-service/log-service.d.ts +17 -4
  433. package/lib/server/services/log-service/log-service.js +30 -17
  434. package/lib/server/services/news-service.d.ts +9 -7
  435. package/lib/server/services/news-service.js +14 -15
  436. package/lib/server/services/room-service/room-service.d.ts +20 -4
  437. package/lib/server/services/room-service/room-service.js +26 -10
  438. package/lib/server/services/settings-service.d.ts +6 -2
  439. package/lib/server/services/settings-service.js +3 -2
  440. package/lib/server/services/time-callback-service.js +1 -1
  441. package/lib/server/services/utils/RGB.d.ts +6 -0
  442. package/lib/server/services/utils/RGB.js +11 -0
  443. package/lib/server/services/utils/catchEmResult.d.ts +5 -0
  444. package/lib/server/services/utils/catchEmResult.js +10 -0
  445. package/lib/server/services/utils/energy-consumer-state-change.d.ts +6 -0
  446. package/lib/server/services/utils/energy-consumer-state-change.js +10 -0
  447. package/lib/server/services/utils/energy-manager-utils.d.ts +3 -14
  448. package/lib/server/services/utils/energy-manager-utils.js +2 -2
  449. package/lib/server/services/utils/iDisposeable.d.ts +6 -0
  450. package/lib/server/services/utils/index.d.ts +4 -1
  451. package/lib/server/services/utils/index.js +8 -1
  452. package/lib/server/services/utils/{ringstorage.d.ts → ringStorage.d.ts} +1 -1
  453. package/lib/server/services/utils/{ringstorage.js → ringStorage.js} +3 -3
  454. package/lib/server/services/utils/utils.d.ts +9 -13
  455. package/lib/server/services/victron/victron-device.d.ts +6 -2
  456. package/lib/server/services/victron/victron-device.js +12 -9
  457. package/lib/server/services/weather/index.d.ts +2 -0
  458. package/lib/server/services/weather/index.js +3 -0
  459. package/lib/server/services/weather/rain-next-minutes-info.d.ts +5 -0
  460. package/lib/server/services/weather/rain-next-minutes-info.js +10 -0
  461. package/lib/server/services/weather/weather-current.d.ts +0 -2
  462. package/lib/server/services/weather/weather-feelsLike.d.ts +15 -0
  463. package/lib/server/services/weather/weather-response.d.ts +16 -0
  464. package/lib/server/services/weather/weather-response.js +2 -0
  465. package/lib/server/services/weather/weather-service.d.ts +15 -18
  466. package/lib/server/services/weather/weather-service.js +32 -22
  467. package/lib/server/services/weather/weather-temp.d.ts +21 -0
  468. package/lib/tsconfig.tsbuildinfo +1 -1
  469. package/package.json +6 -7
  470. package/lib/models/iTemperaturDataPoint.d.ts +0 -9
  471. package/lib/models/persistence/RoomDetailInfo.d.ts +0 -6
  472. package/lib/models/persistence/RoomDetailInfo.js +0 -11
  473. package/lib/models/persistence/temperaturDataPoint.d.ts +0 -10
  474. package/lib/models/persistence/temperaturDataPoint.js +0 -14
  475. /package/lib/{models/iTemperaturDataPoint.js → server/config/iBlockAutomaticHandlerDefaults.js} +0 -0
package/lib/index.d.ts CHANGED
@@ -8,9 +8,13 @@ export declare class HoffmationInitializationObject {
8
8
  constructor(config: iConfig);
9
9
  }
10
10
  export declare class HoffmationBase {
11
+ /**
12
+ * The iobroker Instance to interact with an ioBroker server
13
+ * @deprecated To ensure Hoffmation being capable of running without ioBroker, this property will be removed in the future.
14
+ */
11
15
  static ioMain: ioBrokerMain;
12
16
  static initializeBeforeIoBroker(initObject: HoffmationInitializationObject): Promise<void>;
13
17
  static initializePostRoomCreationBeforeIoBroker(): void;
14
18
  static initializePostIoBroker(defaultMuellSonos?: iSpeaker): void;
15
- static startIoBroker(devices: Devices): void;
19
+ static startIoBroker(_devices: Devices): void;
16
20
  }
package/lib/index.js CHANGED
@@ -36,7 +36,7 @@ class HoffmationBase {
36
36
  if (initObject.config.logSettings) {
37
37
  server_1.ServerLogService.initialize(initObject.config.logSettings);
38
38
  }
39
- server_1.ServerLogService.writeLog(models_1.LogLevel.Info, `Hoffmation-Base Startup`);
39
+ server_1.ServerLogService.writeLog(models_1.LogLevel.Info, 'Hoffmation-Base Startup');
40
40
  if (initObject.config.persistence) {
41
41
  if (initObject.config.persistence.postgreSql) {
42
42
  server_1.Utils.dbo = new server_1.PostgreSqlPersist(initObject.config.persistence.postgreSql);
@@ -44,39 +44,39 @@ class HoffmationBase {
44
44
  await ((_a = server_1.Utils.dbo) === null || _a === void 0 ? void 0 : _a.initialize());
45
45
  }
46
46
  if (server_1.SettingsService.settings.mp3Server) {
47
- server_1.ServerLogService.writeLog(models_1.LogLevel.Info, `Mp3Server settings detected --> initializing`);
47
+ server_1.ServerLogService.writeLog(models_1.LogLevel.Info, 'Mp3Server settings detected --> initializing');
48
48
  new server_1.MP3Server(server_1.SettingsService.settings.mp3Server);
49
49
  }
50
50
  if (server_1.SettingsService.settings.telegram) {
51
- server_1.ServerLogService.writeLog(models_1.LogLevel.Info, `Telegram settings detected --> initializing`);
51
+ server_1.ServerLogService.writeLog(models_1.LogLevel.Info, 'Telegram settings detected --> initializing');
52
52
  server_1.TelegramService.initialize(server_1.SettingsService.settings.telegram);
53
53
  }
54
54
  if (server_1.SettingsService.settings.tibber) {
55
- server_1.ServerLogService.writeLog(models_1.LogLevel.Info, `Tibber settings detected --> initializing`);
55
+ server_1.ServerLogService.writeLog(models_1.LogLevel.Info, 'Tibber settings detected --> initializing');
56
56
  server_1.TibberService.initialize(server_1.SettingsService.settings.tibber);
57
57
  }
58
58
  if (server_1.SettingsService.settings.polly) {
59
- server_1.ServerLogService.writeLog(models_1.LogLevel.Info, `Amazon Polly settings detected --> initializing`);
59
+ server_1.ServerLogService.writeLog(models_1.LogLevel.Info, 'Amazon Polly settings detected --> initializing');
60
60
  server_1.PollyService.initialize(server_1.SettingsService.settings.polly);
61
61
  }
62
62
  if (server_1.SettingsService.settings.asusConfig) {
63
- server_1.ServerLogService.writeLog(models_1.LogLevel.Info, `Asus Router settings detected --> initializing`);
63
+ server_1.ServerLogService.writeLog(models_1.LogLevel.Info, 'Asus Router settings detected --> initializing');
64
64
  new server_1.AsusRouter(server_1.SettingsService.settings.asusConfig);
65
65
  }
66
66
  else if (server_1.SettingsService.settings.unifiSettings) {
67
- server_1.ServerLogService.writeLog(models_1.LogLevel.Info, `Unifi Router settings detected --> initializing`);
67
+ server_1.ServerLogService.writeLog(models_1.LogLevel.Info, 'Unifi Router settings detected --> initializing');
68
68
  new server_1.UnifiRouter(server_1.SettingsService.settings.unifiSettings);
69
69
  }
70
70
  server_1.TimeCallbackService.init();
71
- server_1.ServerLogService.writeLog(models_1.LogLevel.Info, `Hoffmation-Base First Initializations finished`);
71
+ server_1.ServerLogService.writeLog(models_1.LogLevel.Info, 'Hoffmation-Base First Initializations finished');
72
72
  }
73
73
  static initializePostRoomCreationBeforeIoBroker() {
74
- server_1.ServerLogService.writeLog(models_1.LogLevel.Info, `Hoffmation-Base Post Room Creation`);
75
- server_1.ServerLogService.writeLog(models_1.LogLevel.Info, `Hoffmation-Base Post Room Creation finished`);
74
+ server_1.ServerLogService.writeLog(models_1.LogLevel.Info, 'Hoffmation-Base Post Room Creation');
75
+ server_1.ServerLogService.writeLog(models_1.LogLevel.Info, 'Hoffmation-Base Post Room Creation finished');
76
76
  }
77
77
  static initializePostIoBroker(defaultMuellSonos) {
78
78
  var _a, _b;
79
- server_1.ServerLogService.writeLog(models_1.LogLevel.Info, `Hoffmation-Base Post ioBrokerInitializations`);
79
+ server_1.ServerLogService.writeLog(models_1.LogLevel.Info, 'Hoffmation-Base Post ioBrokerInitializations');
80
80
  server_1.Trilateration.initialize();
81
81
  if (server_1.SettingsService.TelegramActive)
82
82
  server_1.TelegramCommands.initialize();
@@ -97,34 +97,34 @@ class HoffmationBase {
97
97
  }
98
98
  server_1.Utils.guardedNewThread(() => {
99
99
  if (server_1.SettingsService.settings.muell) {
100
- server_1.ServerLogService.writeLog(models_1.LogLevel.Info, `Muell settings detected --> initializing`);
100
+ server_1.ServerLogService.writeLog(models_1.LogLevel.Info, 'Muell settings detected --> initializing');
101
101
  server_1.MuellService.intialize(server_1.SettingsService.settings.muell, defaultMuellSonos);
102
102
  }
103
103
  });
104
104
  server_1.Utils.guardedNewThread(() => {
105
- server_1.ServerLogService.writeLog(models_1.LogLevel.Info, `News settings detected --> initializing`);
105
+ server_1.ServerLogService.writeLog(models_1.LogLevel.Info, 'News settings detected --> initializing');
106
106
  server_1.NewsService.initialize(server_1.SettingsService.settings.news);
107
107
  });
108
108
  server_1.Utils.guardedNewThread(() => {
109
109
  if (server_1.SettingsService.settings.weather) {
110
- server_1.ServerLogService.writeLog(models_1.LogLevel.Info, `Weather settings detected --> initializing`);
110
+ server_1.ServerLogService.writeLog(models_1.LogLevel.Info, 'Weather settings detected --> initializing');
111
111
  server_1.WeatherService.initialize(server_1.SettingsService.settings.weather);
112
112
  }
113
113
  });
114
114
  server_1.Utils.guardedNewThread(() => {
115
115
  if (server_1.SettingsService.settings.victron) {
116
- server_1.ServerLogService.writeLog(models_1.LogLevel.Info, `Victron settings detected --> initializing`);
116
+ server_1.ServerLogService.writeLog(models_1.LogLevel.Info, 'Victron settings detected --> initializing');
117
117
  server_1.VictronService.initialize(server_1.SettingsService.settings.victron);
118
118
  }
119
119
  });
120
120
  if (server_1.SettingsService.TelegramActive)
121
121
  server_1.TelegramService.publishCommands();
122
- server_1.ServerLogService.writeLog(models_1.LogLevel.Info, `Hoffmation-Base Post ioBrokerInitializations finished`);
122
+ server_1.ServerLogService.writeLog(models_1.LogLevel.Info, 'Hoffmation-Base Post ioBrokerInitializations finished');
123
123
  }
124
- static startIoBroker(devices) {
125
- server_1.ServerLogService.writeLog(models_1.LogLevel.Info, `Hoffmation-Base: Starting ioBroker Connection`);
126
- this.ioMain = new server_1.ioBrokerMain(new server_1.DeviceUpdater(devices));
127
- server_1.ServerLogService.writeLog(models_1.LogLevel.Info, `Hoffmation-Base: ioBroker Connection established`);
124
+ static startIoBroker(_devices) {
125
+ server_1.ServerLogService.writeLog(models_1.LogLevel.Info, 'Hoffmation-Base: Starting ioBroker Connection');
126
+ this.ioMain = new server_1.ioBrokerMain(new server_1.DeviceUpdater());
127
+ server_1.ServerLogService.writeLog(models_1.LogLevel.Info, 'Hoffmation-Base: ioBroker Connection established');
128
128
  }
129
129
  }
130
130
  exports.HoffmationBase = HoffmationBase;
@@ -4,12 +4,9 @@
4
4
  *
5
5
  * I'm a NodeJS guy not a scientist, so please be a careful!!!
6
6
  * FYI: http://en.wikipedia.org/wiki/PID_controller
7
- *
8
- * @module controller
9
- *
10
7
  * @author https://github.com/hekike/liquid-pid
11
- * @licence MIT
12
- **/
8
+ * licence: MIT
9
+ */
13
10
  export declare class PIDController {
14
11
  private _Tref;
15
12
  private readonly _Pmax;
package/lib/liquid-pid.js CHANGED
@@ -1,18 +1,16 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.PIDController = void 0;
4
+ /* eslint-disable jsdoc/require-jsdoc */
4
5
  /**
5
6
  * !!Ported from liquid pid!!!!
6
7
  * Control the PWM relays from the temperature
7
8
  *
8
9
  * I'm a NodeJS guy not a scientist, so please be a careful!!!
9
10
  * FYI: http://en.wikipedia.org/wiki/PID_controller
10
- *
11
- * @module controller
12
- *
13
11
  * @author https://github.com/hekike/liquid-pid
14
- * @licence MIT
15
- **/
12
+ * licence: MIT
13
+ */
16
14
  class PIDController {
17
15
  constructor(options) {
18
16
  var _a, _b, _c, _d, _f, _g;
@@ -0,0 +1,23 @@
1
+ import { CollisionSolving } from './collisionSolving';
2
+ export declare class BlockAutomaticSettings {
3
+ /**
4
+ * The duration in ms at which the automatic block should be disabled on force actions.
5
+ * If not set {@link iBlockAutomaticHandlerDefaults.blockAutomaticDurationMS} will be used.
6
+ */
7
+ blockAutomaticDurationMS?: number;
8
+ /**
9
+ * If set to true, the automatic won't be blocked on force Action (unless explicitly provided).
10
+ */
11
+ dontBlockAutomaticIfNotProvided?: boolean;
12
+ /**
13
+ * The collision solving strategy to use
14
+ * If not set {@link iBlockAutomaticHandlerDefaults.defaultCollisionSolving} will be used.
15
+ */
16
+ defaultCollisionSolving?: CollisionSolving;
17
+ /**
18
+ * If set to true, the automatic will be reverted to the automatic state when the block is lifted.
19
+ * If not set {@link iBlockAutomaticHandlerDefaults.revertToAutomaticAtBlockLift} will be used.
20
+ */
21
+ revertToAutomaticAtBlockLift?: boolean;
22
+ fromPartialObject(obj: Partial<BlockAutomaticSettings>): void;
23
+ }
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.BlockAutomaticSettings = void 0;
4
+ class BlockAutomaticSettings {
5
+ constructor() {
6
+ /**
7
+ * If set to true, the automatic won't be blocked on force Action (unless explicitly provided).
8
+ */
9
+ this.dontBlockAutomaticIfNotProvided = false;
10
+ }
11
+ fromPartialObject(obj) {
12
+ var _a, _b, _c, _d;
13
+ this.blockAutomaticDurationMS = (_a = obj.blockAutomaticDurationMS) !== null && _a !== void 0 ? _a : this.blockAutomaticDurationMS;
14
+ this.dontBlockAutomaticIfNotProvided = (_b = obj.dontBlockAutomaticIfNotProvided) !== null && _b !== void 0 ? _b : this.dontBlockAutomaticIfNotProvided;
15
+ this.defaultCollisionSolving = (_c = obj.defaultCollisionSolving) !== null && _c !== void 0 ? _c : this.defaultCollisionSolving;
16
+ this.revertToAutomaticAtBlockLift = (_d = obj.revertToAutomaticAtBlockLift) !== null && _d !== void 0 ? _d : this.revertToAutomaticAtBlockLift;
17
+ }
18
+ }
19
+ exports.BlockAutomaticSettings = BlockAutomaticSettings;
@@ -4,7 +4,15 @@ import { CommandType } from './commandType';
4
4
  export declare class ShutterSetLevelCommand extends BaseCommand {
5
5
  readonly level: number;
6
6
  readonly skipOpenWarning: boolean;
7
+ /** @inheritDoc */
7
8
  _commandType: CommandType;
9
+ /**
10
+ * Command to set the level of a shutter
11
+ * @param source - The source of the command
12
+ * @param level - The level to set the shutter to (0: close, 100: completely open)
13
+ * @param reason - You can provide a reason for clarification
14
+ * @param skipOpenWarning - Whether to skip the warning of window being open
15
+ */
8
16
  constructor(source: CommandSource | BaseCommand, level: number, reason?: string, skipOpenWarning?: boolean);
9
17
  get logMessage(): string;
10
18
  }
@@ -4,14 +4,22 @@ exports.ShutterSetLevelCommand = void 0;
4
4
  const baseCommand_1 = require("./baseCommand");
5
5
  const commandType_1 = require("./commandType");
6
6
  class ShutterSetLevelCommand extends baseCommand_1.BaseCommand {
7
+ /**
8
+ * Command to set the level of a shutter
9
+ * @param source - The source of the command
10
+ * @param level - The level to set the shutter to (0: close, 100: completely open)
11
+ * @param reason - You can provide a reason for clarification
12
+ * @param skipOpenWarning - Whether to skip the warning of window being open
13
+ */
7
14
  constructor(source, level, reason = '', skipOpenWarning = false) {
8
15
  super(source, reason);
9
16
  this.level = level;
10
17
  this.skipOpenWarning = skipOpenWarning;
18
+ /** @inheritDoc */
11
19
  this._commandType = commandType_1.CommandType.ShutterSetLevelCommand;
12
20
  }
13
21
  get logMessage() {
14
- return `Shutter setLevel to ${this.level} from ${this.source} for reason: ${this.reasonTrace}`;
22
+ return `Shutter setLevel to ${this.level} for reason: ${this.reasonTrace}`;
15
23
  }
16
24
  }
17
25
  exports.ShutterSetLevelCommand = ShutterSetLevelCommand;
@@ -2,6 +2,12 @@ import { BaseCommand } from './baseCommand';
2
2
  import { CommandSource } from './commandSource';
3
3
  import { CommandType } from './commandType';
4
4
  export declare class WindowRestoreDesiredPositionCommand extends BaseCommand {
5
+ /** @inheritDoc */
5
6
  _commandType: CommandType;
7
+ /**
8
+ * Command to restore the desired position of the shutter of a window
9
+ * @param source - The source of the command
10
+ * @param reason - You can provide a reason for clarification
11
+ */
6
12
  constructor(source: CommandSource | BaseCommand, reason?: string);
7
13
  }
@@ -4,8 +4,14 @@ exports.WindowRestoreDesiredPositionCommand = void 0;
4
4
  const baseCommand_1 = require("./baseCommand");
5
5
  const commandType_1 = require("./commandType");
6
6
  class WindowRestoreDesiredPositionCommand extends baseCommand_1.BaseCommand {
7
+ /**
8
+ * Command to restore the desired position of the shutter of a window
9
+ * @param source - The source of the command
10
+ * @param reason - You can provide a reason for clarification
11
+ */
7
12
  constructor(source, reason = '') {
8
13
  super(source, reason);
14
+ /** @inheritDoc */
9
15
  this._commandType = commandType_1.CommandType.WindowRestoreDesiredPositionCommand;
10
16
  }
11
17
  }
@@ -3,6 +3,13 @@ import { CommandSource } from './commandSource';
3
3
  import { CommandType } from './commandType';
4
4
  export declare class WindowSetDesiredPositionCommand extends BaseCommand {
5
5
  readonly position: number;
6
+ /** @inheritDoc */
6
7
  _commandType: CommandType;
8
+ /**
9
+ * Command to set the desired position of the shutter of a window
10
+ * @param source - The source of the command
11
+ * @param position - The desired position of the shutter (0 closed, 100 open)
12
+ * @param reason - You can provide a reason for clarification
13
+ */
7
14
  constructor(source: CommandSource | BaseCommand, position: number, reason?: string);
8
15
  }
@@ -4,9 +4,16 @@ exports.WindowSetDesiredPositionCommand = void 0;
4
4
  const baseCommand_1 = require("./baseCommand");
5
5
  const commandType_1 = require("./commandType");
6
6
  class WindowSetDesiredPositionCommand extends baseCommand_1.BaseCommand {
7
+ /**
8
+ * Command to set the desired position of the shutter of a window
9
+ * @param source - The source of the command
10
+ * @param position - The desired position of the shutter (0 closed, 100 open)
11
+ * @param reason - You can provide a reason for clarification
12
+ */
7
13
  constructor(source, position, reason = '') {
8
14
  super(source, reason);
9
15
  this.position = position;
16
+ /** @inheritDoc */
10
17
  this._commandType = commandType_1.CommandType.WindowSetDesiredPositionCommand;
11
18
  }
12
19
  }
@@ -2,6 +2,12 @@ import { BaseCommand } from './baseCommand';
2
2
  import { CommandSource } from './commandSource';
3
3
  import { CommandType } from './commandType';
4
4
  export declare class WindowSetRolloByWeatherStatusCommand extends BaseCommand {
5
+ /** @inheritDoc */
5
6
  _commandType: CommandType;
7
+ /**
8
+ * Command to set the desired position of the shutter of a window based on the weather status
9
+ * @param source - The source of the command
10
+ * @param reason - You can provide a reason for clarification
11
+ */
6
12
  constructor(source: CommandSource | BaseCommand, reason?: string);
7
13
  }
@@ -4,8 +4,14 @@ exports.WindowSetRolloByWeatherStatusCommand = void 0;
4
4
  const baseCommand_1 = require("./baseCommand");
5
5
  const commandType_1 = require("./commandType");
6
6
  class WindowSetRolloByWeatherStatusCommand extends baseCommand_1.BaseCommand {
7
+ /**
8
+ * Command to set the desired position of the shutter of a window based on the weather status
9
+ * @param source - The source of the command
10
+ * @param reason - You can provide a reason for clarification
11
+ */
7
12
  constructor(source, reason = '') {
8
13
  super(source, reason);
14
+ /** @inheritDoc */
9
15
  this._commandType = commandType_1.CommandType.WindowSetRolloByWeatherStatusCommand;
10
16
  }
11
17
  }
@@ -3,11 +3,26 @@ import { CommandSource } from './commandSource';
3
3
  import { CommandType } from './commandType';
4
4
  import { ActuatorToggleCommand } from './actuatorToggleCommand';
5
5
  import { iActuator } from '../../server';
6
+ import { BlockAutomaticCommand } from './blockAutomaticCommand';
6
7
  export declare class ActuatorSetStateCommand extends BaseCommand {
7
8
  readonly on: boolean;
8
- timeout: number;
9
+ /** @inheritDoc */
9
10
  _commandType: CommandType;
10
- constructor(source: CommandSource | BaseCommand, on: boolean, reason?: string, timeout?: number);
11
+ /**
12
+ * The command to disable automatic actions for a specific duration.
13
+ * Null = no automatic actions will be disabled.
14
+ * Undefined = use device or global default
15
+ */
16
+ disableAutomaticCommand: BlockAutomaticCommand | null | undefined;
17
+ /**
18
+ * Command to set the state of an actuator
19
+ * @param source - The source of the command
20
+ * @param on - The new state of the actuator
21
+ * @param reason - You can provide a reason for clarification
22
+ * @param disableAutomatic - If provided, the device will remain in the desired state for the given disable action.
23
+ * If unset the default value in accordance to settings will be used
24
+ */
25
+ constructor(source: CommandSource | BaseCommand, on: boolean, reason?: string, disableAutomatic?: BlockAutomaticCommand | null);
11
26
  get logMessage(): string;
12
27
  static byActuatorAndToggleCommand(device: iActuator, c: ActuatorToggleCommand): ActuatorSetStateCommand;
13
28
  }
@@ -4,19 +4,28 @@ exports.ActuatorSetStateCommand = void 0;
4
4
  const baseCommand_1 = require("./baseCommand");
5
5
  const commandType_1 = require("./commandType");
6
6
  class ActuatorSetStateCommand extends baseCommand_1.BaseCommand {
7
- constructor(source, on, reason = '', timeout = -1) {
7
+ /**
8
+ * Command to set the state of an actuator
9
+ * @param source - The source of the command
10
+ * @param on - The new state of the actuator
11
+ * @param reason - You can provide a reason for clarification
12
+ * @param disableAutomatic - If provided, the device will remain in the desired state for the given disable action.
13
+ * If unset the default value in accordance to settings will be used
14
+ */
15
+ constructor(source, on, reason = '', disableAutomatic) {
8
16
  super(source, reason);
9
17
  this.on = on;
10
- this.timeout = timeout;
11
- this._commandType = commandType_1.CommandType.ShutterSetLevelCommand;
18
+ /** @inheritDoc */
19
+ this._commandType = commandType_1.CommandType.ActuatorSetStateCommand;
20
+ this.disableAutomaticCommand = disableAutomatic;
12
21
  }
13
22
  get logMessage() {
14
- return `Actuator setState to ${this.on} from ${this.source} for reason: ${this.reasonTrace}`;
23
+ var _a;
24
+ return `Actuator setState to ${this.on} with disableCommand ${(_a = this.disableAutomaticCommand) === null || _a === void 0 ? void 0 : _a.logMessage} for reason: ${this.reasonTrace}`;
15
25
  }
16
26
  static byActuatorAndToggleCommand(device, c) {
17
27
  const newVal = device.queuedValue !== null ? !device.queuedValue : !device.actuatorOn;
18
- const timeout = newVal && c.isForceAction ? 30 * 60 * 1000 : -1;
19
- return new ActuatorSetStateCommand(c, newVal, 'Due to ActuatorToggle', timeout);
28
+ return new ActuatorSetStateCommand(c, newVal, 'Due to ActuatorToggle', c.isForceAction ? undefined : null);
20
29
  }
21
30
  }
22
31
  exports.ActuatorSetStateCommand = ActuatorSetStateCommand;
@@ -2,7 +2,12 @@ import { CommandType } from './commandType';
2
2
  import { BaseCommand } from './baseCommand';
3
3
  import { CommandSource } from './commandSource';
4
4
  export declare class ActuatorToggleCommand extends BaseCommand {
5
+ /** @inheritDoc */
5
6
  _commandType: CommandType;
7
+ /**
8
+ * Command to toggle the state of an actuator
9
+ * @param source - The source of the command
10
+ * @param reason - You can provide a reason for clarification
11
+ */
6
12
  constructor(source: CommandSource | BaseCommand, reason?: string);
7
- get logMessage(): string;
8
13
  }
@@ -4,12 +4,15 @@ exports.ActuatorToggleCommand = void 0;
4
4
  const commandType_1 = require("./commandType");
5
5
  const baseCommand_1 = require("./baseCommand");
6
6
  class ActuatorToggleCommand extends baseCommand_1.BaseCommand {
7
+ /**
8
+ * Command to toggle the state of an actuator
9
+ * @param source - The source of the command
10
+ * @param reason - You can provide a reason for clarification
11
+ */
7
12
  constructor(source, reason = '') {
8
13
  super(source, reason);
14
+ /** @inheritDoc */
9
15
  this._commandType = commandType_1.CommandType.ActuatorToggleCommand;
10
16
  }
11
- get logMessage() {
12
- return `Actuator toggle due to ${this.source} for reason: ${this.reasonTrace}`;
13
- }
14
17
  }
15
18
  exports.ActuatorToggleCommand = ActuatorToggleCommand;
@@ -3,7 +3,14 @@ import { CommandType } from './commandType';
3
3
  import { CommandSource } from './commandSource';
4
4
  export declare class ActuatorWriteStateToDeviceCommand extends BaseCommand {
5
5
  readonly stateValue: boolean;
6
+ /** @inheritDoc */
6
7
  _commandType: CommandType;
7
- constructor(stateValue: boolean, source: CommandSource | BaseCommand, reason?: string);
8
+ /**
9
+ * Command to write the state of an actuator to the device
10
+ * @param source - The source of the command
11
+ * @param stateValue - The new state of the actuator
12
+ * @param reason - You can provide a reason for clarification
13
+ */
14
+ constructor(source: CommandSource | BaseCommand, stateValue: boolean, reason?: string);
8
15
  get logMessage(): string;
9
16
  }
@@ -3,14 +3,25 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.ActuatorWriteStateToDeviceCommand = void 0;
4
4
  const baseCommand_1 = require("./baseCommand");
5
5
  const commandType_1 = require("./commandType");
6
+ const actuatorSetStateCommand_1 = require("./actuatorSetStateCommand");
6
7
  class ActuatorWriteStateToDeviceCommand extends baseCommand_1.BaseCommand {
7
- constructor(stateValue, source, reason = '') {
8
+ /**
9
+ * Command to write the state of an actuator to the device
10
+ * @param source - The source of the command
11
+ * @param stateValue - The new state of the actuator
12
+ * @param reason - You can provide a reason for clarification
13
+ */
14
+ constructor(source, stateValue, reason = '') {
8
15
  super(source, reason);
9
16
  this.stateValue = stateValue;
17
+ /** @inheritDoc */
10
18
  this._commandType = commandType_1.CommandType.ActuatorWriteStateToDeviceCommand;
11
19
  }
12
20
  get logMessage() {
13
- return `Actuator writeStateToDevice(${this.stateValue}) due to ${this.source} for reason: ${this.reasonTrace}`;
21
+ if (this.source instanceof actuatorSetStateCommand_1.ActuatorSetStateCommand) {
22
+ return `Actuator Write StateToDevice original Log-message: ${this.source.logMessage}`;
23
+ }
24
+ return `Actuator writeStateToDevice(${this.stateValue}) for reason: ${this.reasonTrace}`;
14
25
  }
15
26
  }
16
27
  exports.ActuatorWriteStateToDeviceCommand = ActuatorWriteStateToDeviceCommand;
@@ -3,10 +3,31 @@ import { CommandType } from './commandType';
3
3
  export declare abstract class BaseCommand {
4
4
  readonly source: CommandSource | BaseCommand;
5
5
  readonly reason: string;
6
+ /**
7
+ * The timestamp of the command being created
8
+ */
6
9
  readonly timestamp: Date;
10
+ /**
11
+ * The type of this command to be used for comparison.
12
+ *
13
+ * For checking if any command in the stack is of a specific type, use the {@link containsType} method.
14
+ */
7
15
  abstract _commandType: CommandType;
8
- constructor(source?: CommandSource | BaseCommand, reason?: string);
16
+ /**
17
+ * If set, this will be used in regards to checking if this is a force/manual/automatic action.
18
+ * @type {CommandSource | undefined} The source of the command
19
+ */
20
+ overrideCommandSource: CommandSource | undefined;
21
+ /**
22
+ * Base class for all commands
23
+ * @param source - The source of the command
24
+ * @param reason - You can provide a reason for clarification
25
+ */
26
+ protected constructor(source?: CommandSource | BaseCommand, reason?: string);
27
+ get isAutomaticAction(): boolean;
9
28
  get isForceAction(): boolean;
29
+ get isManual(): boolean;
10
30
  get isInitial(): boolean;
11
31
  get reasonTrace(): string;
32
+ containsType(type: CommandType): boolean;
12
33
  }
@@ -3,35 +3,69 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.BaseCommand = void 0;
4
4
  const commandSource_1 = require("./commandSource");
5
5
  class BaseCommand {
6
+ /**
7
+ * Base class for all commands
8
+ * @param source - The source of the command
9
+ * @param reason - You can provide a reason for clarification
10
+ */
6
11
  constructor(source = commandSource_1.CommandSource.Unknown, reason = '') {
7
12
  this.source = source;
8
13
  this.reason = reason;
9
14
  this.timestamp = new Date();
10
15
  }
16
+ get isAutomaticAction() {
17
+ if (this.overrideCommandSource !== undefined) {
18
+ return this.overrideCommandSource === commandSource_1.CommandSource.Automatic;
19
+ }
20
+ if (this.source instanceof BaseCommand) {
21
+ return this.source.isAutomaticAction;
22
+ }
23
+ return this.source === commandSource_1.CommandSource.Automatic;
24
+ }
11
25
  get isForceAction() {
26
+ if (this.overrideCommandSource !== undefined) {
27
+ return (this.overrideCommandSource === commandSource_1.CommandSource.Manual ||
28
+ this.overrideCommandSource === commandSource_1.CommandSource.API ||
29
+ this.overrideCommandSource === commandSource_1.CommandSource.Force);
30
+ }
12
31
  if (this.source instanceof BaseCommand) {
13
32
  return this.source.isForceAction;
14
33
  }
15
34
  return (this.source === commandSource_1.CommandSource.Manual || this.source === commandSource_1.CommandSource.API || this.source === commandSource_1.CommandSource.Force);
16
35
  }
36
+ get isManual() {
37
+ if (this.overrideCommandSource !== undefined) {
38
+ return this.overrideCommandSource === commandSource_1.CommandSource.Manual || this.overrideCommandSource === commandSource_1.CommandSource.API;
39
+ }
40
+ if (this.source instanceof BaseCommand) {
41
+ return this.source.isManual;
42
+ }
43
+ return this.source === commandSource_1.CommandSource.Manual || this.source === commandSource_1.CommandSource.API;
44
+ }
17
45
  get isInitial() {
46
+ if (this.overrideCommandSource !== undefined) {
47
+ return this.overrideCommandSource === commandSource_1.CommandSource.Initial;
48
+ }
18
49
  if (this.source instanceof BaseCommand) {
19
50
  return this.source.isInitial;
20
51
  }
21
52
  return this.source === commandSource_1.CommandSource.Initial;
22
53
  }
23
54
  get reasonTrace() {
24
- let reason = '';
25
- if (this.source instanceof BaseCommand) {
26
- reason = this.source.reasonTrace;
55
+ const ownPart = this.reason !== '' ? `${this._commandType}("${this.reason}")` : `${this._commandType}`;
56
+ if (typeof this.source === 'object') {
57
+ return `${this.source.reasonTrace} -> ${ownPart}`;
27
58
  }
28
- if (this.reason === '') {
29
- if (reason === '') {
30
- return `${this._commandType}`;
31
- }
32
- return `${reason} -> ${this._commandType}`;
59
+ return `CommandType("${commandSource_1.CommandSource[this.source]}") stack => ${ownPart}`;
60
+ }
61
+ containsType(type) {
62
+ if (this._commandType === type) {
63
+ return true;
64
+ }
65
+ if (this.source instanceof BaseCommand) {
66
+ return this.source.containsType(type);
33
67
  }
34
- return `${reason} -> ${this._commandType}(${this.reason})`;
68
+ return false;
35
69
  }
36
70
  }
37
71
  exports.BaseCommand = BaseCommand;
@@ -0,0 +1,32 @@
1
+ import { CommandType } from './commandType';
2
+ import { CommandSource } from './commandSource';
3
+ import { CollisionSolving } from '../collisionSolving';
4
+ import { BaseCommand } from './baseCommand';
5
+ import { DeviceSettings } from '../deviceSettings';
6
+ export declare class BlockAutomaticCommand extends BaseCommand {
7
+ /** @inheritDoc */
8
+ _commandType: CommandType;
9
+ /**
10
+ * Whether the device should revert to automatic afterward.
11
+ */
12
+ readonly revertToAutomaticAtBlockLift: boolean;
13
+ /**
14
+ * The duration in milliseconds for the automatic actions to be disabled.
15
+ */
16
+ readonly durationMS: number;
17
+ /**
18
+ * The action to take if a block is already active.
19
+ */
20
+ readonly onCollideAction: CollisionSolving;
21
+ /**
22
+ * Command to disable automatic actions for a specific duration.
23
+ * @param source - The source of the command.
24
+ * @param durationMS - The duration in milliseconds for the automatic actions to be disabled --> If unset the default value will be used {@link SettingsService.settings.blockAutomaticHandlerDefaults.blockAutomaticDurationMS}
25
+ * @param reason - You can provide an individual reason here for debugging purpose.
26
+ * @param onCollideAction - The action to take if a block is already active. --> Default: {@link SettingsService.settings.blockAutomaticHandlerDefaults.defaultCollisionSolving}
27
+ * @param revertToAutomaticAtBlockLift - Whether the device should revert to automatic afterward. --> Default: {@link SettingsService.settings.blockAutomaticHandlerDefaults.revertToAutomaticAtBlockLift}
28
+ */
29
+ constructor(source: CommandSource | BaseCommand, durationMS?: number, reason?: string, onCollideAction?: CollisionSolving, revertToAutomaticAtBlockLift?: boolean);
30
+ get logMessage(): string;
31
+ static fromDeviceSettings(c: BaseCommand, deviceSettings: DeviceSettings): BlockAutomaticCommand | null;
32
+ }