hoffmation-base 3.0.0-alpha.23 → 3.0.0-alpha.25

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 (439) hide show
  1. package/lib/index.d.ts +5 -1
  2. package/lib/index.js +20 -20
  3. package/lib/liquid-pid.js +1 -0
  4. package/lib/models/blockAutomaticSettings.d.ts +23 -0
  5. package/lib/models/blockAutomaticSettings.js +19 -0
  6. package/lib/models/command/ShutterSetLevelCommand.d.ts +1 -0
  7. package/lib/models/command/ShutterSetLevelCommand.js +1 -0
  8. package/lib/models/command/WindowRestoreDesiredPositionCommand.d.ts +1 -0
  9. package/lib/models/command/WindowRestoreDesiredPositionCommand.js +1 -0
  10. package/lib/models/command/WindowSetDesiredPositionCommand.d.ts +1 -0
  11. package/lib/models/command/WindowSetDesiredPositionCommand.js +1 -0
  12. package/lib/models/command/WindowSetRolloByWeatherStatusCommand.d.ts +1 -0
  13. package/lib/models/command/WindowSetRolloByWeatherStatusCommand.js +1 -0
  14. package/lib/models/command/actuatorSetStateCommand.d.ts +11 -3
  15. package/lib/models/command/actuatorSetStateCommand.js +8 -6
  16. package/lib/models/command/actuatorToggleCommand.d.ts +1 -1
  17. package/lib/models/command/actuatorToggleCommand.js +1 -3
  18. package/lib/models/command/actuatorWriteStateToDeviceCommand.d.ts +1 -0
  19. package/lib/models/command/actuatorWriteStateToDeviceCommand.js +1 -0
  20. package/lib/models/command/baseCommand.d.ts +8 -0
  21. package/lib/models/command/blockAutomaticCommand.d.ts +20 -5
  22. package/lib/models/command/blockAutomaticCommand.js +23 -5
  23. package/lib/models/command/blockAutomaticLiftBlockCommand.d.ts +7 -1
  24. package/lib/models/command/blockAutomaticLiftBlockCommand.js +7 -1
  25. package/lib/models/command/blockAutomaticUntilCommand.d.ts +12 -3
  26. package/lib/models/command/blockAutomaticUntilCommand.js +10 -3
  27. package/lib/models/command/dimmerSetLightCommand.d.ts +6 -2
  28. package/lib/models/command/dimmerSetLightCommand.js +12 -8
  29. package/lib/models/command/floorSetAllShuttersCommand.d.ts +1 -0
  30. package/lib/models/command/floorSetAllShuttersCommand.js +1 -0
  31. package/lib/models/command/lampSetLightCommand.d.ts +6 -2
  32. package/lib/models/command/lampSetLightCommand.js +8 -4
  33. package/lib/models/command/lampSetTimeBasedCommand.d.ts +11 -4
  34. package/lib/models/command/lampSetTimeBasedCommand.js +5 -7
  35. package/lib/models/command/lampToggleLightCommand.d.ts +1 -0
  36. package/lib/models/command/lampToggleLightCommand.js +1 -0
  37. package/lib/models/command/ledSetLightCommand.d.ts +6 -2
  38. package/lib/models/command/ledSetLightCommand.js +12 -8
  39. package/lib/models/command/lightGroupSwitchTimeConditionalCommand.d.ts +1 -0
  40. package/lib/models/command/lightGroupSwitchTimeConditionalCommand.js +1 -0
  41. package/lib/models/command/restoreTargetAutomaticValueCommand.d.ts +1 -1
  42. package/lib/models/command/restoreTargetAutomaticValueCommand.js +1 -3
  43. package/lib/models/command/roomRestoreLightCommand.d.ts +1 -0
  44. package/lib/models/command/roomRestoreLightCommand.js +1 -0
  45. package/lib/models/command/roomRestoreShutterPositionCommand.d.ts +1 -0
  46. package/lib/models/command/roomRestoreShutterPositionCommand.js +1 -0
  47. package/lib/models/command/roomSetLightTimeBasedCommand.d.ts +1 -0
  48. package/lib/models/command/roomSetLightTimeBasedCommand.js +1 -0
  49. package/lib/models/command/shutterSunriseUpCommand.d.ts +1 -0
  50. package/lib/models/command/shutterSunriseUpCommand.js +1 -0
  51. package/lib/models/command/shutterSunsetDownCommand.d.ts +1 -0
  52. package/lib/models/command/shutterSunsetDownCommand.js +1 -0
  53. package/lib/models/command/wledSetLightCommand.d.ts +5 -2
  54. package/lib/models/command/wledSetLightCommand.js +11 -8
  55. package/lib/models/connectionCallbacks.js +1 -0
  56. package/lib/models/deviceSettings/acSettings.d.ts +14 -1
  57. package/lib/models/deviceSettings/acSettings.js +14 -1
  58. package/lib/models/deviceSettings/cameraSettings.d.ts +12 -0
  59. package/lib/models/deviceSettings/cameraSettings.js +12 -0
  60. package/lib/models/deviceSettings/dachsSettings.d.ts +3 -0
  61. package/lib/models/deviceSettings/dachsSettings.js +3 -0
  62. package/lib/models/deviceSettings/deviceSettings.d.ts +10 -0
  63. package/lib/models/deviceSettings/deviceSettings.js +16 -0
  64. package/lib/models/deviceSettings/dimmerSettings.d.ts +20 -0
  65. package/lib/models/deviceSettings/dimmerSettings.js +20 -0
  66. package/lib/models/deviceSettings/handleSettings.d.ts +9 -0
  67. package/lib/models/deviceSettings/handleSettings.js +9 -0
  68. package/lib/models/deviceSettings/heaterSettings.d.ts +21 -3
  69. package/lib/models/deviceSettings/heaterSettings.js +21 -3
  70. package/lib/models/deviceSettings/ledSettings.d.ts +66 -0
  71. package/lib/models/deviceSettings/ledSettings.js +66 -0
  72. package/lib/models/deviceSettings/motionSensorSettings.d.ts +5 -0
  73. package/lib/models/deviceSettings/motionSensorSettings.js +5 -0
  74. package/lib/models/deviceSettings/sceneSettings.d.ts +4 -0
  75. package/lib/models/deviceSettings/shutterSettings.d.ts +11 -0
  76. package/lib/models/deviceSettings/shutterSettings.js +11 -0
  77. package/lib/models/deviceSettings/sonosDeviceSettings.d.ts +4 -0
  78. package/lib/models/deviceSettings/sonosDeviceSettings.js +4 -0
  79. package/lib/models/deviceSettings/tvSettings.d.ts +4 -0
  80. package/lib/models/deviceSettings/victronDeviceSettings.d.ts +34 -0
  81. package/lib/models/deviceSettings/victronDeviceSettings.js +34 -0
  82. package/lib/models/deviceSettings/wledSettings.d.ts +48 -0
  83. package/lib/models/deviceSettings/wledSettings.js +32 -0
  84. package/lib/models/groupSettings/heatGroupSettings.d.ts +9 -0
  85. package/lib/models/groupSettings/heatGroupSettings.js +9 -0
  86. package/lib/models/iIdHolder.d.ts +15 -3
  87. package/lib/models/index.d.ts +1 -1
  88. package/lib/models/index.js +3 -1
  89. package/lib/models/objectSettings.d.ts +3 -0
  90. package/lib/models/persistence/EnergyCalculation.d.ts +27 -0
  91. package/lib/models/persistence/EnergyCalculation.js +30 -4
  92. package/lib/models/persistence/index.d.ts +0 -2
  93. package/lib/models/persistence/index.js +0 -2
  94. package/lib/models/rooms/RoomBase.d.ts +10 -0
  95. package/lib/models/rooms/RoomBase.js +1 -0
  96. package/lib/models/rooms/RoomSettings/RoomInitializationSettings.d.ts +2 -1
  97. package/lib/models/rooms/RoomSettings/RoomInitializationSettings.js +2 -2
  98. package/lib/models/rooms/RoomSettings/RoomSettingsController.d.ts +9 -0
  99. package/lib/models/rooms/RoomSettings/RoomSettingsController.js +1 -1
  100. package/lib/models/rooms/RoomSettings/iRoomDefaultSettings.d.ts +53 -3
  101. package/lib/models/rooms/RoomSettings/iRoomInitializationSettings.d.ts +10 -1
  102. package/lib/models/rooms/RoomSettings/roomDeviceAddingSettings.d.ts +4 -1
  103. package/lib/models/rooms/RoomSettings/roomDeviceAddingSettings.js +3 -0
  104. package/lib/models/rooms/RoomSettings/roomSettings.d.ts +55 -0
  105. package/lib/models/rooms/RoomSettings/roomSettings.js +55 -0
  106. package/lib/models/rooms/iRoomBase.d.ts +24 -2
  107. package/lib/models/rooms/iRoomImportEnforcer.d.ts +4 -0
  108. package/lib/models/timeCallback.d.ts +7 -0
  109. package/lib/models/timeCallback.js +4 -1
  110. package/lib/server/config/iAsusConfig.d.ts +15 -0
  111. package/lib/server/config/iBlockAutomaticHandlerDefaults.d.ts +23 -0
  112. package/lib/server/config/iBlueIrisSettings.d.ts +14 -0
  113. package/lib/server/config/iBluetoothTrackingSettings.d.ts +9 -0
  114. package/lib/server/config/iConfig.d.ts +92 -5
  115. package/lib/server/config/iDachsSettings.d.ts +16 -0
  116. package/lib/server/config/iDaikinSettings.d.ts +17 -0
  117. package/lib/server/config/iEnergyManagerSettings.d.ts +13 -0
  118. package/lib/server/config/iEspresenseSettings.d.ts +10 -0
  119. package/lib/server/config/iHeaterSettings.d.ts +8 -0
  120. package/lib/server/config/iIobrokerSettigns.d.ts +8 -0
  121. package/lib/server/config/iLogSettings.d.ts +36 -1
  122. package/lib/server/config/iMp3Settings.d.ts +10 -0
  123. package/lib/server/config/iMuellSettings.d.ts +7 -0
  124. package/lib/server/config/iNewsSettings.d.ts +13 -0
  125. package/lib/server/config/iPersistenceSettings.d.ts +10 -0
  126. package/lib/server/config/iPollySettings.d.ts +22 -0
  127. package/lib/server/config/iRestSettings.d.ts +10 -0
  128. package/lib/server/config/iSonosSettings.d.ts +10 -0
  129. package/lib/server/config/iTelegramSettings.d.ts +17 -0
  130. package/lib/server/config/iTibberSettings.d.ts +10 -0
  131. package/lib/server/config/iTimePair.d.ts +9 -0
  132. package/lib/server/config/iTimeSettings.d.ts +9 -0
  133. package/lib/server/config/iTranslationSettings.d.ts +10 -0
  134. package/lib/server/config/iUnifiConnectionOptions.d.ts +31 -0
  135. package/lib/server/config/iUnifiSettings.d.ts +8 -0
  136. package/lib/server/config/iVictronSettings.d.ts +14 -0
  137. package/lib/server/config/iWeatherSettings.d.ts +13 -0
  138. package/lib/server/config/index.d.ts +1 -0
  139. package/lib/server/devices/DeviceCapability.d.ts +1 -0
  140. package/lib/server/devices/DeviceCapability.js +1 -0
  141. package/lib/server/devices/DeviceInfo.d.ts +9 -0
  142. package/lib/server/devices/DeviceInfo.js +6 -0
  143. package/lib/server/devices/Griffe.js +1 -1
  144. package/lib/server/devices/Heizgruppen.js +2 -2
  145. package/lib/server/devices/IoBrokerBaseDevice.d.ts +23 -2
  146. package/lib/server/devices/IoBrokerBaseDevice.js +16 -4
  147. package/lib/server/devices/baseDeviceInterfaces/iAcDevice.d.ts +14 -3
  148. package/lib/server/devices/baseDeviceInterfaces/iActuator.d.ts +2 -0
  149. package/lib/server/devices/baseDeviceInterfaces/iBaseDevice.d.ts +1 -1
  150. package/lib/server/devices/baseDeviceInterfaces/iBatteryDevice.d.ts +2 -0
  151. package/lib/server/devices/baseDeviceInterfaces/iBluetoothDetector.d.ts +15 -7
  152. package/lib/server/devices/baseDeviceInterfaces/iButtonSwitch.d.ts +33 -4
  153. package/lib/server/devices/baseDeviceInterfaces/iCameraDevice.d.ts +38 -5
  154. package/lib/server/devices/baseDeviceInterfaces/iDimmableLamp.d.ts +10 -2
  155. package/lib/server/devices/baseDeviceInterfaces/iEnergyManager.d.ts +19 -0
  156. package/lib/server/devices/baseDeviceInterfaces/iExcessEnergyConsumer.d.ts +16 -2
  157. package/lib/server/devices/baseDeviceInterfaces/iGarageDoorOpener.d.ts +11 -0
  158. package/lib/server/devices/baseDeviceInterfaces/iHandleSensor.d.ts +15 -3
  159. package/lib/server/devices/baseDeviceInterfaces/iHeater.d.ts +28 -2
  160. package/lib/server/devices/baseDeviceInterfaces/iHumiditySensor.d.ts +13 -1
  161. package/lib/server/devices/baseDeviceInterfaces/iIlluminationSensor.d.ts +11 -0
  162. package/lib/server/devices/baseDeviceInterfaces/iLamp.d.ts +6 -1
  163. package/lib/server/devices/baseDeviceInterfaces/iLedRgbCct.d.ts +16 -1
  164. package/lib/server/devices/baseDeviceInterfaces/iLoadMeter.d.ts +5 -0
  165. package/lib/server/devices/baseDeviceInterfaces/iMagnetSensor.d.ts +31 -0
  166. package/lib/server/devices/baseDeviceInterfaces/iMagnetSensor.js +2 -0
  167. package/lib/server/devices/baseDeviceInterfaces/iMotionSensor.d.ts +14 -0
  168. package/lib/server/devices/baseDeviceInterfaces/iRoomDevice.d.ts +6 -0
  169. package/lib/server/devices/baseDeviceInterfaces/iScene.d.ts +25 -2
  170. package/lib/server/devices/baseDeviceInterfaces/iShutter.d.ts +18 -1
  171. package/lib/server/devices/baseDeviceInterfaces/iSmokeDetectorDevice.d.ts +6 -1
  172. package/lib/server/devices/baseDeviceInterfaces/iSpeaker.d.ts +15 -10
  173. package/lib/server/devices/baseDeviceInterfaces/iTemperatureSensor.d.ts +21 -3
  174. package/lib/server/devices/baseDeviceInterfaces/iTemporaryDisableAutomatic.d.ts +7 -1
  175. package/lib/server/devices/baseDeviceInterfaces/iTvDevice.d.ts +8 -0
  176. package/lib/server/devices/baseDeviceInterfaces/iVibrationSensor.d.ts +24 -4
  177. package/lib/server/devices/baseDeviceInterfaces/index.d.ts +1 -0
  178. package/lib/server/devices/blueIris/cameraDevice.d.ts +47 -31
  179. package/lib/server/devices/blueIris/cameraDevice.js +75 -74
  180. package/lib/server/devices/button/button.d.ts +0 -1
  181. package/lib/server/devices/button/button.js +0 -4
  182. package/lib/server/devices/button/buttonCallback.d.ts +5 -0
  183. package/lib/server/devices/button/buttonCallback.js +10 -0
  184. package/lib/server/devices/button/buttonCapabilities.d.ts +12 -0
  185. package/lib/server/devices/button/buttonCapabilities.js +12 -0
  186. package/lib/server/devices/button/index.d.ts +1 -0
  187. package/lib/server/devices/button/index.js +3 -0
  188. package/lib/server/devices/dachs/dachs.d.ts +31 -9
  189. package/lib/server/devices/dachs/dachs.js +27 -17
  190. package/lib/server/devices/dachs/dachsTemperatureSensor.d.ts +20 -1
  191. package/lib/server/devices/dachs/dachsTemperatureSensor.js +20 -3
  192. package/lib/server/devices/dachs/interfaces/DachsClientOptions.d.ts +30 -0
  193. package/lib/server/devices/dachs/interfaces/dachsInfluxDataPoint.d.ts +12 -0
  194. package/lib/server/devices/dachs/interfaces/influxDbConnectionOptions.d.ts +21 -1
  195. package/lib/server/devices/dachs/lib/dachsHttpClient.js +2 -2
  196. package/lib/server/devices/device-cluster.d.ts +3 -0
  197. package/lib/server/devices/device-cluster.js +1 -1
  198. package/lib/server/devices/deviceUpdater.d.ts +0 -3
  199. package/lib/server/devices/deviceUpdater.js +1 -4
  200. package/lib/server/devices/devices.d.ts +43 -7
  201. package/lib/server/devices/devices.js +42 -6
  202. package/lib/server/devices/espresense/detectedBluetoothDevice.d.ts +13 -0
  203. package/lib/server/devices/espresense/detectedBluetoothDevice.js +13 -0
  204. package/lib/server/devices/espresense/espresenseDevice.d.ts +31 -1
  205. package/lib/server/devices/espresense/espresenseDevice.js +28 -4
  206. package/lib/server/devices/espresense/trackedDistanceData.d.ts +12 -0
  207. package/lib/server/devices/espresense/trackedDistanceData.js +3 -0
  208. package/lib/server/devices/espresense/trilateration.d.ts +7 -0
  209. package/lib/server/devices/espresense/trilateration.js +7 -0
  210. package/lib/server/devices/espresense/trilaterationBasePoint.d.ts +6 -0
  211. package/lib/server/devices/espresense/trilaterationBasePoint.js +3 -0
  212. package/lib/server/devices/espresense/trilaterationPoint.d.ts +1 -1
  213. package/lib/server/devices/espresense/trilaterationPoint.js +3 -1
  214. package/lib/server/devices/groups/Window.d.ts +6 -1
  215. package/lib/server/devices/groups/Window.js +15 -8
  216. package/lib/server/devices/groups/base-group.d.ts +4 -0
  217. package/lib/server/devices/groups/base-group.js +3 -0
  218. package/lib/server/devices/groups/heatGroup.d.ts +1 -0
  219. package/lib/server/devices/groups/heatGroup.js +3 -2
  220. package/lib/server/devices/groups/lightGroup.d.ts +8 -0
  221. package/lib/server/devices/groups/lightGroup.js +4 -4
  222. package/lib/server/devices/groups/tasterGroup.js +6 -6
  223. package/lib/server/devices/groups/windowGroup.d.ts +11 -1
  224. package/lib/server/devices/groups/windowGroup.js +2 -2
  225. package/lib/server/devices/hmIPDevices/hmIpAccessPoint.d.ts +1 -0
  226. package/lib/server/devices/hmIPDevices/hmIpAccessPoint.js +1 -0
  227. package/lib/server/devices/hmIPDevices/hmIpBewegung.d.ts +7 -4
  228. package/lib/server/devices/hmIPDevices/hmIpBewegung.js +9 -10
  229. package/lib/server/devices/hmIPDevices/hmIpDevice.d.ts +1 -2
  230. package/lib/server/devices/hmIPDevices/hmIpDevice.js +2 -3
  231. package/lib/server/devices/hmIPDevices/hmIpGriff.d.ts +27 -5
  232. package/lib/server/devices/hmIPDevices/hmIpGriff.js +59 -37
  233. package/lib/server/devices/hmIPDevices/hmIpHeizgruppe.d.ts +22 -1
  234. package/lib/server/devices/hmIPDevices/hmIpHeizgruppe.js +23 -4
  235. package/lib/server/devices/hmIPDevices/hmIpHeizung.d.ts +1 -0
  236. package/lib/server/devices/hmIPDevices/hmIpHeizung.js +1 -0
  237. package/lib/server/devices/hmIPDevices/hmIpLampe.d.ts +6 -0
  238. package/lib/server/devices/hmIPDevices/hmIpLampe.js +6 -1
  239. package/lib/server/devices/hmIPDevices/hmIpPraezenz.d.ts +3 -1
  240. package/lib/server/devices/hmIPDevices/hmIpPraezenz.js +4 -2
  241. package/lib/server/devices/hmIPDevices/hmIpRoll.d.ts +2 -0
  242. package/lib/server/devices/hmIPDevices/hmIpRoll.js +5 -3
  243. package/lib/server/devices/hmIPDevices/hmIpTaster.d.ts +15 -0
  244. package/lib/server/devices/hmIPDevices/hmIpTaster.js +9 -0
  245. package/lib/server/devices/hmIPDevices/hmIpTherm.d.ts +1 -0
  246. package/lib/server/devices/hmIPDevices/hmIpTherm.js +1 -0
  247. package/lib/server/devices/hmIPDevices/hmIpTuer.d.ts +9 -1
  248. package/lib/server/devices/hmIPDevices/hmIpTuer.js +17 -4
  249. package/lib/server/devices/hmIPDevices/hmIpWippe.d.ts +27 -0
  250. package/lib/server/devices/hmIPDevices/hmIpWippe.js +3 -0
  251. package/lib/server/devices/iDeviceUpdater.d.ts +3 -0
  252. package/lib/server/devices/index.d.ts +1 -0
  253. package/lib/server/devices/index.js +3 -0
  254. package/lib/server/devices/jsObject/jsObjectEnergyManager.d.ts +2 -0
  255. package/lib/server/devices/jsObject/jsObjectEnergyManager.js +4 -2
  256. package/lib/server/devices/nameAmountValuePair.d.ts +5 -0
  257. package/lib/server/devices/nameAmountValuePair.js +10 -0
  258. package/lib/server/devices/scene/room-scene.d.ts +23 -6
  259. package/lib/server/devices/scene/room-scene.js +18 -4
  260. package/lib/server/devices/sharedFunctions/lampUtils.js +11 -7
  261. package/lib/server/devices/shelly/shellyDevice.d.ts +2 -1
  262. package/lib/server/devices/shelly/shellyDevice.js +2 -1
  263. package/lib/server/devices/shelly/shellyTrv.d.ts +28 -16
  264. package/lib/server/devices/shelly/shellyTrv.js +46 -45
  265. package/lib/server/devices/tuya/tuyaDevice.d.ts +2 -1
  266. package/lib/server/devices/tuya/tuyaDevice.js +2 -1
  267. package/lib/server/devices/tuya/tuyaGarageOpener.d.ts +3 -0
  268. package/lib/server/devices/tuya/tuyaGarageOpener.js +3 -0
  269. package/lib/server/devices/tv/samsungTv.d.ts +1 -0
  270. package/lib/server/devices/tv/samsungTv.js +1 -0
  271. package/lib/server/devices/tv/tvDevice.d.ts +7 -1
  272. package/lib/server/devices/tv/tvDevice.js +4 -3
  273. package/lib/server/devices/wledDevice.d.ts +15 -2
  274. package/lib/server/devices/wledDevice.js +21 -5
  275. package/lib/server/devices/zigbee/BaseDevices/ZigbeeActuator.d.ts +11 -0
  276. package/lib/server/devices/zigbee/BaseDevices/ZigbeeActuator.js +13 -3
  277. package/lib/server/devices/zigbee/BaseDevices/zigbeeDevice.d.ts +4 -3
  278. package/lib/server/devices/zigbee/BaseDevices/zigbeeDevice.js +7 -5
  279. package/lib/server/devices/zigbee/BaseDevices/zigbeeDimmer.d.ts +16 -4
  280. package/lib/server/devices/zigbee/BaseDevices/zigbeeDimmer.js +25 -13
  281. package/lib/server/devices/zigbee/BaseDevices/zigbeeHeater.d.ts +17 -4
  282. package/lib/server/devices/zigbee/BaseDevices/zigbeeHeater.js +17 -11
  283. package/lib/server/devices/zigbee/BaseDevices/zigbeeLedRGBCCT.d.ts +7 -7
  284. package/lib/server/devices/zigbee/BaseDevices/zigbeeLedRGBCCT.js +10 -10
  285. package/lib/server/devices/zigbee/BaseDevices/zigbeeMagnetContact.d.ts +12 -2
  286. package/lib/server/devices/zigbee/BaseDevices/zigbeeMagnetContact.js +11 -1
  287. package/lib/server/devices/zigbee/BaseDevices/zigbeeMotionSensor.d.ts +19 -11
  288. package/lib/server/devices/zigbee/BaseDevices/zigbeeMotionSensor.js +44 -40
  289. package/lib/server/devices/zigbee/BaseDevices/zigbeeShutter.d.ts +10 -0
  290. package/lib/server/devices/zigbee/BaseDevices/zigbeeShutter.js +13 -3
  291. package/lib/server/devices/zigbee/BaseDevices/zigbeeSwitch.d.ts +8 -0
  292. package/lib/server/devices/zigbee/BaseDevices/zigbeeSwitch.js +8 -1
  293. package/lib/server/devices/zigbee/zigbeeAqaraMagnetContact.d.ts +1 -0
  294. package/lib/server/devices/zigbee/zigbeeAqaraMagnetContact.js +1 -0
  295. package/lib/server/devices/zigbee/zigbeeAqaraOpple3Switch.d.ts +16 -0
  296. package/lib/server/devices/zigbee/zigbeeAqaraOpple3Switch.js +16 -0
  297. package/lib/server/devices/zigbee/zigbeeAquaraMotion.d.ts +6 -0
  298. package/lib/server/devices/zigbee/zigbeeAquaraMotion.js +7 -3
  299. package/lib/server/devices/zigbee/zigbeeAquaraVibra.d.ts +49 -11
  300. package/lib/server/devices/zigbee/zigbeeAquaraVibra.js +98 -30
  301. package/lib/server/devices/zigbee/zigbeeAquaraWater.d.ts +12 -1
  302. package/lib/server/devices/zigbee/zigbeeAquaraWater.js +15 -11
  303. package/lib/server/devices/zigbee/zigbeeBlitzShp.d.ts +14 -5
  304. package/lib/server/devices/zigbee/zigbeeBlitzShp.js +20 -13
  305. package/lib/server/devices/zigbee/zigbeeEuroHeater.d.ts +8 -1
  306. package/lib/server/devices/zigbee/zigbeeEuroHeater.js +14 -7
  307. package/lib/server/devices/zigbee/zigbeeHeimanSmoke.d.ts +19 -1
  308. package/lib/server/devices/zigbee/zigbeeHeimanSmoke.js +25 -7
  309. package/lib/server/devices/zigbee/zigbeeIkeaShutter.d.ts +1 -0
  310. package/lib/server/devices/zigbee/zigbeeIkeaShutter.js +1 -0
  311. package/lib/server/devices/zigbee/zigbeeIkeaSteckdose.d.ts +1 -0
  312. package/lib/server/devices/zigbee/zigbeeIkeaSteckdose.js +1 -0
  313. package/lib/server/devices/zigbee/zigbeeIlluActuator.d.ts +1 -1
  314. package/lib/server/devices/zigbee/zigbeeIlluActuator.js +1 -3
  315. package/lib/server/devices/zigbee/zigbeeIlluLampe.d.ts +5 -0
  316. package/lib/server/devices/zigbee/zigbeeIlluLampe.js +6 -1
  317. package/lib/server/devices/zigbee/zigbeeIlluShutter.d.ts +1 -0
  318. package/lib/server/devices/zigbee/zigbeeIlluShutter.js +1 -0
  319. package/lib/server/devices/zigbee/zigbeeSMaBiTMagnetContact.d.ts +1 -0
  320. package/lib/server/devices/zigbee/zigbeeSMaBiTMagnetContact.js +1 -0
  321. package/lib/server/devices/zigbee/zigbeeSonoffMotion.d.ts +1 -0
  322. package/lib/server/devices/zigbee/zigbeeSonoffMotion.js +1 -0
  323. package/lib/server/devices/zigbee/zigbeeSonoffTemp.d.ts +17 -0
  324. package/lib/server/devices/zigbee/zigbeeSonoffTemp.js +18 -1
  325. package/lib/server/devices/zigbee/zigbeeTuyaValve.d.ts +10 -3
  326. package/lib/server/devices/zigbee/zigbeeTuyaValve.js +11 -6
  327. package/lib/server/devices/zigbee/zigbeeUbisysActuator.d.ts +7 -1
  328. package/lib/server/devices/zigbee/zigbeeUbisysActuator.js +7 -3
  329. package/lib/server/devices/zigbee/zigbeeUbisysLampe.d.ts +5 -0
  330. package/lib/server/devices/zigbee/zigbeeUbisysLampe.js +6 -1
  331. package/lib/server/devices/zigbee/zigbeeUbisysShutter.d.ts +1 -0
  332. package/lib/server/devices/zigbee/zigbeeUbisysShutter.js +1 -0
  333. package/lib/server/ioBroker/connection.d.ts +1 -0
  334. package/lib/server/ioBroker/connection.js +8 -7
  335. package/lib/server/ioBroker/ioBroker.main.d.ts +3 -0
  336. package/lib/server/ioBroker/ioBroker.main.js +4 -3
  337. package/lib/server/ioBroker/iobrokerConnectionLogging.d.ts +3 -0
  338. package/lib/server/ioBroker/iobrokerConnectionLogging.js +4 -0
  339. package/lib/server/ioBroker/socketIOConnectOptions.js +1 -0
  340. package/lib/server/ioBroker/socketIOVisCommand.js +1 -0
  341. package/lib/server/services/ShutterService.js +3 -3
  342. package/lib/server/services/Sonos/OwnSonosDevices.d.ts +3 -0
  343. package/lib/server/services/Sonos/OwnSonosDevices.js +3 -0
  344. package/lib/server/services/Sonos/mp3-server.d.ts +3 -1
  345. package/lib/server/services/Sonos/mp3-server.js +3 -1
  346. package/lib/server/services/Sonos/own-sonos-device.d.ts +4 -1
  347. package/lib/server/services/Sonos/own-sonos-device.js +4 -4
  348. package/lib/server/services/Sonos/polly-service.d.ts +7 -1
  349. package/lib/server/services/Sonos/polly-service.js +9 -6
  350. package/lib/server/services/Sonos/sonos-service.d.ts +0 -5
  351. package/lib/server/services/Sonos/sonos-service.js +6 -10
  352. package/lib/server/services/Telegram/telegram-Commands.js +5 -5
  353. package/lib/server/services/Telegram/telegram-service.d.ts +2 -1
  354. package/lib/server/services/Telegram/telegram-service.js +8 -3
  355. package/lib/server/services/Translation/IRessourceObject.d.ts +13 -0
  356. package/lib/server/services/Translation/IRessourceObject.js +2 -0
  357. package/lib/server/services/Translation/iRessources.d.ts +1 -4
  358. package/lib/server/services/Translation/index.d.ts +1 -0
  359. package/lib/server/services/ac/ac-device.d.ts +38 -1
  360. package/lib/server/services/ac/ac-device.js +45 -12
  361. package/lib/server/services/ac/daikin-service.js +2 -2
  362. package/lib/server/services/ac/own-ac-devices.d.ts +3 -0
  363. package/lib/server/services/ac/own-ac-devices.js +3 -0
  364. package/lib/server/services/ac/own-daikin-device.d.ts +17 -0
  365. package/lib/server/services/ac/own-daikin-device.js +20 -3
  366. package/lib/server/services/api/api-service.d.ts +8 -8
  367. package/lib/server/services/api/api-service.js +26 -26
  368. package/lib/server/services/blockAutomaticHandler.d.ts +5 -0
  369. package/lib/server/services/blockAutomaticHandler.js +20 -8
  370. package/lib/server/services/calendar/index.d.ts +1 -0
  371. package/lib/server/services/calendar/index.js +3 -0
  372. package/lib/server/services/calendar/muell-tonne.d.ts +11 -1
  373. package/lib/server/services/calendar/muell-tonne.js +10 -0
  374. package/lib/server/services/calendar/m/303/274ll-service.d.ts +23 -8
  375. package/lib/server/services/calendar/m/303/274ll-service.js +10 -4
  376. package/lib/server/services/calendar/name-date-pair.d.ts +5 -0
  377. package/lib/server/services/calendar/name-date-pair.js +10 -0
  378. package/lib/server/services/dbo/iPersist.d.ts +37 -30
  379. package/lib/server/services/dbo/postgreSqlPersist.d.ts +23 -0
  380. package/lib/server/services/dbo/postgreSqlPersist.js +28 -5
  381. package/lib/server/services/file-info.d.ts +5 -0
  382. package/lib/server/services/file-info.js +10 -0
  383. package/lib/server/services/govee/govee-service.d.ts +1 -5
  384. package/lib/server/services/govee/govee-service.js +3 -5
  385. package/lib/server/services/govee/own-govee-device.d.ts +17 -12
  386. package/lib/server/services/govee/own-govee-device.js +17 -18
  387. package/lib/server/services/govee/own-govee-devices.d.ts +3 -0
  388. package/lib/server/services/govee/own-govee-devices.js +3 -0
  389. package/lib/server/services/https-service.js +1 -1
  390. package/lib/server/services/index.d.ts +1 -0
  391. package/lib/server/services/index.js +3 -0
  392. package/lib/server/services/log-service/index.d.ts +1 -0
  393. package/lib/server/services/log-service/index.js +3 -0
  394. package/lib/server/services/log-service/log-debug-type.d.ts +12 -0
  395. package/lib/server/services/log-service/log-debug-type.js +16 -0
  396. package/lib/server/services/log-service/log-filter-data.d.ts +21 -12
  397. package/lib/server/services/log-service/log-filter-data.js +6 -15
  398. package/lib/server/services/log-service/log-service.d.ts +15 -2
  399. package/lib/server/services/log-service/log-service.js +28 -15
  400. package/lib/server/services/news-service.d.ts +4 -1
  401. package/lib/server/services/news-service.js +9 -9
  402. package/lib/server/services/room-service/room-service.d.ts +17 -2
  403. package/lib/server/services/room-service/room-service.js +23 -8
  404. package/lib/server/services/settings-service.d.ts +3 -0
  405. package/lib/server/services/time-callback-service.js +1 -1
  406. package/lib/server/services/utils/RGB.d.ts +6 -0
  407. package/lib/server/services/utils/RGB.js +11 -0
  408. package/lib/server/services/utils/catchEmResult.d.ts +5 -0
  409. package/lib/server/services/utils/catchEmResult.js +10 -0
  410. package/lib/server/services/utils/energy-consumer-state-change.d.ts +6 -0
  411. package/lib/server/services/utils/energy-consumer-state-change.js +10 -0
  412. package/lib/server/services/utils/energy-manager-utils.d.ts +3 -14
  413. package/lib/server/services/utils/energy-manager-utils.js +2 -2
  414. package/lib/server/services/utils/iDisposeable.d.ts +3 -0
  415. package/lib/server/services/utils/index.d.ts +4 -1
  416. package/lib/server/services/utils/index.js +8 -1
  417. package/lib/server/services/utils/{ringstorage.d.ts → ringStorage.d.ts} +1 -1
  418. package/lib/server/services/utils/{ringstorage.js → ringStorage.js} +3 -3
  419. package/lib/server/services/utils/utils.d.ts +9 -13
  420. package/lib/server/services/victron/victron-device.d.ts +4 -0
  421. package/lib/server/services/victron/victron-device.js +10 -7
  422. package/lib/server/services/weather/index.d.ts +2 -0
  423. package/lib/server/services/weather/index.js +3 -0
  424. package/lib/server/services/weather/rain-next-minutes-info.d.ts +5 -0
  425. package/lib/server/services/weather/rain-next-minutes-info.js +10 -0
  426. package/lib/server/services/weather/weather-feelsLike.d.ts +15 -0
  427. package/lib/server/services/weather/weather-response.d.ts +16 -0
  428. package/lib/server/services/weather/weather-response.js +2 -0
  429. package/lib/server/services/weather/weather-service.d.ts +11 -17
  430. package/lib/server/services/weather/weather-service.js +28 -22
  431. package/lib/server/services/weather/weather-temp.d.ts +21 -0
  432. package/lib/tsconfig.tsbuildinfo +1 -1
  433. package/package.json +1 -3
  434. package/lib/models/iTemperaturDataPoint.d.ts +0 -9
  435. package/lib/models/persistence/RoomDetailInfo.d.ts +0 -6
  436. package/lib/models/persistence/RoomDetailInfo.js +0 -11
  437. package/lib/models/persistence/temperaturDataPoint.d.ts +0 -10
  438. package/lib/models/persistence/temperaturDataPoint.js +0 -14
  439. /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;
package/lib/liquid-pid.js CHANGED
@@ -1,6 +1,7 @@
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
@@ -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,6 +4,7 @@ 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;
8
9
  /**
9
10
  * Command to set the level of a shutter
@@ -15,6 +15,7 @@ class ShutterSetLevelCommand extends baseCommand_1.BaseCommand {
15
15
  super(source, reason);
16
16
  this.level = level;
17
17
  this.skipOpenWarning = skipOpenWarning;
18
+ /** @inheritDoc */
18
19
  this._commandType = commandType_1.CommandType.ShutterSetLevelCommand;
19
20
  }
20
21
  get logMessage() {
@@ -2,6 +2,7 @@ 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;
6
7
  /**
7
8
  * Command to restore the desired position of the shutter of a window
@@ -11,6 +11,7 @@ class WindowRestoreDesiredPositionCommand extends baseCommand_1.BaseCommand {
11
11
  */
12
12
  constructor(source, reason = '') {
13
13
  super(source, reason);
14
+ /** @inheritDoc */
14
15
  this._commandType = commandType_1.CommandType.WindowRestoreDesiredPositionCommand;
15
16
  }
16
17
  }
@@ -3,6 +3,7 @@ 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;
7
8
  /**
8
9
  * Command to set the desired position of the shutter of a window
@@ -13,6 +13,7 @@ class WindowSetDesiredPositionCommand extends baseCommand_1.BaseCommand {
13
13
  constructor(source, position, reason = '') {
14
14
  super(source, reason);
15
15
  this.position = position;
16
+ /** @inheritDoc */
16
17
  this._commandType = commandType_1.CommandType.WindowSetDesiredPositionCommand;
17
18
  }
18
19
  }
@@ -2,6 +2,7 @@ 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;
6
7
  /**
7
8
  * Command to set the desired position of the shutter of a window based on the weather status
@@ -11,6 +11,7 @@ class WindowSetRolloByWeatherStatusCommand extends baseCommand_1.BaseCommand {
11
11
  */
12
12
  constructor(source, reason = '') {
13
13
  super(source, reason);
14
+ /** @inheritDoc */
14
15
  this._commandType = commandType_1.CommandType.WindowSetRolloByWeatherStatusCommand;
15
16
  }
16
17
  }
@@ -3,18 +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;
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;
10
17
  /**
11
18
  * Command to set the state of an actuator
12
19
  * @param source - The source of the command
13
20
  * @param on - The new state of the actuator
14
21
  * @param reason - You can provide a reason for clarification
15
- * @param timeout - If provided, the device automatic will be turned off for the given time in ms
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
16
24
  */
17
- constructor(source: CommandSource | BaseCommand, on: boolean, reason?: string, timeout?: number);
25
+ constructor(source: CommandSource | BaseCommand, on: boolean, reason?: string, disableAutomatic?: BlockAutomaticCommand | null);
18
26
  get logMessage(): string;
19
27
  static byActuatorAndToggleCommand(device: iActuator, c: ActuatorToggleCommand): ActuatorSetStateCommand;
20
28
  }
@@ -9,21 +9,23 @@ class ActuatorSetStateCommand extends baseCommand_1.BaseCommand {
9
9
  * @param source - The source of the command
10
10
  * @param on - The new state of the actuator
11
11
  * @param reason - You can provide a reason for clarification
12
- * @param timeout - If provided, the device automatic will be turned off for the given time in ms
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
13
14
  */
14
- constructor(source, on, reason = '', timeout = -1) {
15
+ constructor(source, on, reason = '', disableAutomatic) {
15
16
  super(source, reason);
16
17
  this.on = on;
17
- this.timeout = timeout;
18
+ /** @inheritDoc */
18
19
  this._commandType = commandType_1.CommandType.ActuatorSetStateCommand;
20
+ this.disableAutomaticCommand = disableAutomatic;
19
21
  }
20
22
  get logMessage() {
21
- return `Actuator setState to ${this.on} with timeout ${this.timeout} 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}`;
22
25
  }
23
26
  static byActuatorAndToggleCommand(device, c) {
24
27
  const newVal = device.queuedValue !== null ? !device.queuedValue : !device.actuatorOn;
25
- const timeout = newVal && c.isForceAction ? 30 * 60 * 1000 : -1;
26
- return new ActuatorSetStateCommand(c, newVal, 'Due to ActuatorToggle', timeout);
28
+ return new ActuatorSetStateCommand(c, newVal, 'Due to ActuatorToggle', c.isForceAction ? undefined : null);
27
29
  }
28
30
  }
29
31
  exports.ActuatorSetStateCommand = ActuatorSetStateCommand;
@@ -2,6 +2,7 @@ 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;
6
7
  /**
7
8
  * Command to toggle the state of an actuator
@@ -9,5 +10,4 @@ export declare class ActuatorToggleCommand extends BaseCommand {
9
10
  * @param reason - You can provide a reason for clarification
10
11
  */
11
12
  constructor(source: CommandSource | BaseCommand, reason?: string);
12
- get logMessage(): string;
13
13
  }
@@ -11,10 +11,8 @@ class ActuatorToggleCommand extends baseCommand_1.BaseCommand {
11
11
  */
12
12
  constructor(source, reason = '') {
13
13
  super(source, reason);
14
+ /** @inheritDoc */
14
15
  this._commandType = commandType_1.CommandType.ActuatorToggleCommand;
15
16
  }
16
- get logMessage() {
17
- return `Actuator toggle for reason: ${this.reasonTrace}`;
18
- }
19
17
  }
20
18
  exports.ActuatorToggleCommand = ActuatorToggleCommand;
@@ -3,6 +3,7 @@ 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
8
  /**
8
9
  * Command to write the state of an actuator to the device
@@ -14,6 +14,7 @@ class ActuatorWriteStateToDeviceCommand extends baseCommand_1.BaseCommand {
14
14
  constructor(source, stateValue, reason = '') {
15
15
  super(source, reason);
16
16
  this.stateValue = stateValue;
17
+ /** @inheritDoc */
17
18
  this._commandType = commandType_1.CommandType.ActuatorWriteStateToDeviceCommand;
18
19
  }
19
20
  get logMessage() {
@@ -3,7 +3,15 @@ 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
16
  /**
9
17
  * If set, this will be used in regards to checking if this is a force/manual/automatic action.
@@ -2,16 +2,31 @@ import { CommandType } from './commandType';
2
2
  import { CommandSource } from './commandSource';
3
3
  import { CollisionSolving } from '../collisionSolving';
4
4
  import { BaseCommand } from './baseCommand';
5
+ import { DeviceSettings } from '../deviceSettings';
5
6
  export declare class BlockAutomaticCommand extends BaseCommand {
6
- durationMS: number;
7
- onCollideAction: CollisionSolving;
7
+ /** @inheritDoc */
8
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;
9
21
  /**
10
22
  * Command to disable automatic actions for a specific duration.
11
23
  * @param source - The source of the command.
12
- * @param durationMS - The duration in milliseconds for the automatic actions to be disabled.
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}
13
25
  * @param reason - You can provide an individual reason here for debugging purpose.
14
- * @param onCollideAction - The action to take if a block is already active. --> Default: overrideIfGreater
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}
15
28
  */
16
- constructor(source: CommandSource | BaseCommand, durationMS: number, reason?: string, onCollideAction?: CollisionSolving);
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;
17
32
  }
@@ -4,19 +4,37 @@ exports.BlockAutomaticCommand = void 0;
4
4
  const commandType_1 = require("./commandType");
5
5
  const collisionSolving_1 = require("../collisionSolving");
6
6
  const baseCommand_1 = require("./baseCommand");
7
+ const server_1 = require("../../server");
7
8
  class BlockAutomaticCommand extends baseCommand_1.BaseCommand {
8
9
  /**
9
10
  * Command to disable automatic actions for a specific duration.
10
11
  * @param source - The source of the command.
11
- * @param durationMS - The duration in milliseconds for the automatic actions to be disabled.
12
+ * @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}
12
13
  * @param reason - You can provide an individual reason here for debugging purpose.
13
- * @param onCollideAction - The action to take if a block is already active. --> Default: overrideIfGreater
14
+ * @param onCollideAction - The action to take if a block is already active. --> Default: {@link SettingsService.settings.blockAutomaticHandlerDefaults.defaultCollisionSolving}
15
+ * @param revertToAutomaticAtBlockLift - Whether the device should revert to automatic afterward. --> Default: {@link SettingsService.settings.blockAutomaticHandlerDefaults.revertToAutomaticAtBlockLift}
14
16
  */
15
- constructor(source, durationMS, reason = '', onCollideAction = collisionSolving_1.CollisionSolving.overrideIfGreater) {
17
+ constructor(source, durationMS, reason = '', onCollideAction, revertToAutomaticAtBlockLift) {
18
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j;
16
19
  super(source, reason);
17
- this.durationMS = durationMS;
18
- this.onCollideAction = onCollideAction;
20
+ /** @inheritDoc */
19
21
  this._commandType = commandType_1.CommandType.BlockAutomaticCommand;
22
+ this.durationMS =
23
+ (_c = durationMS !== null && durationMS !== void 0 ? durationMS : (_b = (_a = server_1.SettingsService.settings) === null || _a === void 0 ? void 0 : _a.blockAutomaticHandlerDefaults) === null || _b === void 0 ? void 0 : _b.blockAutomaticDurationMS) !== null && _c !== void 0 ? _c : 30 * 60 * 1000;
24
+ this.revertToAutomaticAtBlockLift =
25
+ (_f = revertToAutomaticAtBlockLift !== null && revertToAutomaticAtBlockLift !== void 0 ? revertToAutomaticAtBlockLift : (_e = (_d = server_1.SettingsService.settings) === null || _d === void 0 ? void 0 : _d.blockAutomaticHandlerDefaults) === null || _e === void 0 ? void 0 : _e.revertToAutomaticAtBlockLift) !== null && _f !== void 0 ? _f : true;
26
+ this.onCollideAction =
27
+ (_j = onCollideAction !== null && onCollideAction !== void 0 ? onCollideAction : (_h = (_g = server_1.SettingsService.settings) === null || _g === void 0 ? void 0 : _g.blockAutomaticHandlerDefaults) === null || _h === void 0 ? void 0 : _h.defaultCollisionSolving) !== null && _j !== void 0 ? _j : collisionSolving_1.CollisionSolving.overrideIfGreater;
28
+ }
29
+ get logMessage() {
30
+ return `BlockAutomatic for ${this.durationMS}ms with onCollideAction ${this.onCollideAction} for reason: ${this.reasonTrace}`;
31
+ }
32
+ static fromDeviceSettings(c, deviceSettings) {
33
+ var _a, _b, _c, _d;
34
+ if ((_a = deviceSettings.blockAutomaticSettings) === null || _a === void 0 ? void 0 : _a.dontBlockAutomaticIfNotProvided) {
35
+ return null;
36
+ }
37
+ return new BlockAutomaticCommand(c, (_b = deviceSettings.blockAutomaticSettings) === null || _b === void 0 ? void 0 : _b.blockAutomaticDurationMS, '', (_c = deviceSettings.blockAutomaticSettings) === null || _c === void 0 ? void 0 : _c.defaultCollisionSolving, (_d = deviceSettings.blockAutomaticSettings) === null || _d === void 0 ? void 0 : _d.revertToAutomaticAtBlockLift);
20
38
  }
21
39
  }
22
40
  exports.BlockAutomaticCommand = BlockAutomaticCommand;
@@ -2,11 +2,17 @@ import { CommandType } from './commandType';
2
2
  import { CommandSource } from './commandSource';
3
3
  import { BaseCommand } from './baseCommand';
4
4
  export declare class BlockAutomaticLiftBlockCommand extends BaseCommand {
5
+ /** @inheritDoc */
5
6
  _commandType: CommandType;
7
+ /**
8
+ * Whether the device should revert to desired automatic value.
9
+ */
10
+ readonly revertToAutomatic: boolean;
6
11
  /**
7
12
  * Command to lift a block --> Restore the automatic actions.
8
13
  * @param source - The source of the command.
9
14
  * @param reason - You can provide an individual reason here for debugging purpose.
15
+ * @param revertToAutomatic - Whether the device should revert to automatic afterward. --> Default: {@link SettingsService.settings.blockAutomaticHandlerDefaults.revertToAutomaticAtBlockLift}
10
16
  */
11
- constructor(source: CommandSource | BaseCommand, reason?: string);
17
+ constructor(source: CommandSource | BaseCommand, reason?: string, revertToAutomatic?: boolean);
12
18
  }
@@ -3,15 +3,21 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.BlockAutomaticLiftBlockCommand = void 0;
4
4
  const commandType_1 = require("./commandType");
5
5
  const baseCommand_1 = require("./baseCommand");
6
+ const server_1 = require("../../server");
6
7
  class BlockAutomaticLiftBlockCommand extends baseCommand_1.BaseCommand {
7
8
  /**
8
9
  * Command to lift a block --> Restore the automatic actions.
9
10
  * @param source - The source of the command.
10
11
  * @param reason - You can provide an individual reason here for debugging purpose.
12
+ * @param revertToAutomatic - Whether the device should revert to automatic afterward. --> Default: {@link SettingsService.settings.blockAutomaticHandlerDefaults.revertToAutomaticAtBlockLift}
11
13
  */
12
- constructor(source, reason = '') {
14
+ constructor(source, reason = '', revertToAutomatic) {
15
+ var _a, _b, _c;
13
16
  super(source, reason);
17
+ /** @inheritDoc */
14
18
  this._commandType = commandType_1.CommandType.BlockAutomaticLiftBlockCommand;
19
+ this.revertToAutomatic =
20
+ (_c = revertToAutomatic !== null && revertToAutomatic !== void 0 ? revertToAutomatic : (_b = (_a = server_1.SettingsService.settings) === null || _a === void 0 ? void 0 : _a.blockAutomaticHandlerDefaults) === null || _b === void 0 ? void 0 : _b.revertToAutomaticAtBlockLift) !== null && _c !== void 0 ? _c : true;
15
21
  }
16
22
  }
17
23
  exports.BlockAutomaticLiftBlockCommand = BlockAutomaticLiftBlockCommand;
@@ -4,14 +4,23 @@ import { CollisionSolving } from '../collisionSolving';
4
4
  import { BaseCommand } from './baseCommand';
5
5
  export declare class BlockAutomaticUntilCommand extends BaseCommand {
6
6
  targetDate: Date;
7
- onCollideAction: CollisionSolving;
7
+ /** @inheritDoc */
8
8
  _commandType: CommandType;
9
+ /**
10
+ * The action to take if a block is already active.
11
+ */
12
+ readonly onCollideAction: CollisionSolving;
13
+ /**
14
+ * Whether the device should revert to automatic afterward.
15
+ */
16
+ readonly revertToAutomaticAtBlockLift: boolean;
9
17
  /**
10
18
  * Command to disable automatic actions until a specific date.
11
19
  * @param source - The source of the command.
12
20
  * @param targetDate - The date until the automatic actions will be disabled.
13
21
  * @param reason - You can provide an individual reason here for debugging purpose.
14
- * @param onCollideAction - The action to take if a block is already active. --> Default: overrideIfGreater
22
+ * @param onCollideAction - The action to take if a block is already active. --> Default: {@link SettingsService.settings.blockAutomaticHandlerDefaults.defaultCollisionSolving}
23
+ * @param revertToAutomaticAtBlockLift - Whether the device should revert to automatic afterward. --> Default: {@link SettingsService.settings.blockAutomaticHandlerDefaults.revertToAutomaticAtBlockLift}
15
24
  */
16
- constructor(source: CommandSource | BaseCommand, targetDate: Date, reason?: string, onCollideAction?: CollisionSolving);
25
+ constructor(source: CommandSource | BaseCommand, targetDate: Date, reason?: string, onCollideAction?: CollisionSolving, revertToAutomaticAtBlockLift?: boolean);
17
26
  }
@@ -4,19 +4,26 @@ exports.BlockAutomaticUntilCommand = void 0;
4
4
  const commandType_1 = require("./commandType");
5
5
  const collisionSolving_1 = require("../collisionSolving");
6
6
  const baseCommand_1 = require("./baseCommand");
7
+ const server_1 = require("../../server");
7
8
  class BlockAutomaticUntilCommand extends baseCommand_1.BaseCommand {
8
9
  /**
9
10
  * Command to disable automatic actions until a specific date.
10
11
  * @param source - The source of the command.
11
12
  * @param targetDate - The date until the automatic actions will be disabled.
12
13
  * @param reason - You can provide an individual reason here for debugging purpose.
13
- * @param onCollideAction - The action to take if a block is already active. --> Default: overrideIfGreater
14
+ * @param onCollideAction - The action to take if a block is already active. --> Default: {@link SettingsService.settings.blockAutomaticHandlerDefaults.defaultCollisionSolving}
15
+ * @param revertToAutomaticAtBlockLift - Whether the device should revert to automatic afterward. --> Default: {@link SettingsService.settings.blockAutomaticHandlerDefaults.revertToAutomaticAtBlockLift}
14
16
  */
15
- constructor(source, targetDate, reason = '', onCollideAction = collisionSolving_1.CollisionSolving.overrideIfGreater) {
17
+ constructor(source, targetDate, reason = '', onCollideAction, revertToAutomaticAtBlockLift) {
18
+ var _a, _b, _c, _d, _e, _f;
16
19
  super(source, reason);
17
20
  this.targetDate = targetDate;
18
- this.onCollideAction = onCollideAction;
21
+ /** @inheritDoc */
19
22
  this._commandType = commandType_1.CommandType.BlockAutomaticUntilCommand;
23
+ this.onCollideAction =
24
+ (_c = onCollideAction !== null && onCollideAction !== void 0 ? onCollideAction : (_b = (_a = server_1.SettingsService.settings) === null || _a === void 0 ? void 0 : _a.blockAutomaticHandlerDefaults) === null || _b === void 0 ? void 0 : _b.defaultCollisionSolving) !== null && _c !== void 0 ? _c : collisionSolving_1.CollisionSolving.overrideIfGreater;
25
+ this.revertToAutomaticAtBlockLift =
26
+ (_f = revertToAutomaticAtBlockLift !== null && revertToAutomaticAtBlockLift !== void 0 ? revertToAutomaticAtBlockLift : (_e = (_d = server_1.SettingsService.settings) === null || _d === void 0 ? void 0 : _d.blockAutomaticHandlerDefaults) === null || _e === void 0 ? void 0 : _e.revertToAutomaticAtBlockLift) !== null && _f !== void 0 ? _f : true;
20
27
  }
21
28
  }
22
29
  exports.BlockAutomaticUntilCommand = BlockAutomaticUntilCommand;
@@ -4,20 +4,24 @@ import { CommandSource } from './commandSource';
4
4
  import { BaseCommand } from './baseCommand';
5
5
  import { LampSetTimeBasedCommand } from './lampSetTimeBasedCommand';
6
6
  import { DimmerSettings } from '../deviceSettings';
7
+ import { BlockAutomaticCommand } from './blockAutomaticCommand';
7
8
  export declare class DimmerSetLightCommand extends LampSetLightCommand {
8
9
  brightness: number;
9
10
  transitionTime: number;
11
+ /** @inheritDoc */
10
12
  _commandType: CommandType;
11
13
  /**
12
14
  * Command to change the light of a dimmer
13
15
  * @param source - The source of the command
14
16
  * @param on - The desired value
15
17
  * @param reason - You can provide a reason for clarity
16
- * @param timeout - A chosen Timeout after which the light should be reset
18
+ * @param disableAutomatic - If provided, the device will remain in the desired state for the given disable action.
19
+ * If unset the default value will be used: {@link SettingsService.settings.blockAutomaticHandlerDefaults}
17
20
  * @param brightness - The desired brightness
18
21
  * @param transitionTime - The transition time during turnOn/turnOff
19
22
  */
20
- constructor(source: CommandSource | BaseCommand, on: boolean, reason?: string, timeout?: number, brightness?: number, transitionTime?: number);
23
+ constructor(source: CommandSource | BaseCommand, on: boolean, reason?: string, disableAutomatic?: BlockAutomaticCommand | null, brightness?: number, transitionTime?: number);
24
+ /** @inheritDoc */
21
25
  get logMessage(): string;
22
26
  static byTimeBased(s: DimmerSettings, c: LampSetTimeBasedCommand): DimmerSetLightCommand;
23
27
  }