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
@@ -7,23 +7,78 @@ class RoomSettings extends objectSettings_1.ObjectSettings {
7
7
  constructor() {
8
8
  var _a;
9
9
  super(...arguments);
10
+ /**
11
+ * Whether this room should always have ambient light on after sunset (regardless of motion e.g. Gardenlights).
12
+ */
10
13
  this.ambientLightAfterSunset = server_1.SettingsService.settings.roomDefault.ambientLightAfterSunset;
14
+ /**
15
+ * Should lights be turned off after sunrise
16
+ */
11
17
  this.lichtSonnenAufgangAus = server_1.SettingsService.settings.roomDefault.lichtSonnenAufgangAus;
18
+ /**
19
+ * The default radio URL to use with speaker
20
+ */
12
21
  this.radioUrl = (_a = server_1.SettingsService.settings.roomDefault.radioUrl) !== null && _a !== void 0 ? _a : '';
22
+ /**
23
+ * Use shutter to reduce warming of rooms on hot days (detected by weather service)
24
+ */
13
25
  this.rolloHeatReduction = server_1.SettingsService.settings.roomDefault.rolloHeatReduction;
26
+ /**
27
+ * Should lights be turned on at Movement
28
+ */
14
29
  this.lampenBeiBewegung = server_1.SettingsService.settings.roomDefault.lampenBeiBewegung;
30
+ /**
31
+ * Should Light be turned on at day if there are no Windows configured for this room
32
+ */
15
33
  this.lightIfNoWindows = server_1.SettingsService.settings.roomDefault.lightIfNoWindows;
34
+ /**
35
+ * Time in seconds after which detected movement is reseted
36
+ */
16
37
  this.movementResetTimer = server_1.SettingsService.settings.roomDefault.movementResetTimer;
38
+ /**
39
+ * Indicates rooms, which are time independent always dark (like basement).
40
+ * This results in lamps beeing turned on at motion regardless of windows and time.
41
+ */
17
42
  this.roomIsAlwaysDark = server_1.SettingsService.settings.roomDefault.roomIsAlwaysDark;
43
+ /**
44
+ * +/- Offset for still turning on lamps at movement after/before sunrise
45
+ */
18
46
  this.sonnenAufgangLampenDelay = server_1.SettingsService.settings.roomDefault.sonnenAufgangLampenDelay;
47
+ /**
48
+ * +/- Default Offset for shutters opening on sunrise in minutes
49
+ */
19
50
  this.sonnenAufgangRolloDelay = server_1.SettingsService.settings.roomDefault.sonnenAufgangRolloDelay;
51
+ /**
52
+ * Should shutters be opened on sunrise
53
+ */
20
54
  this.sonnenAufgangRollos = server_1.SettingsService.settings.roomDefault.sonnenAufgangRollos;
55
+ /**
56
+ * !Needs Weather Data! Additional Offset in Minutes per % Cloudiness
57
+ */
21
58
  this.sonnenUntergangRolloAdditionalOffsetPerCloudiness = server_1.SettingsService.settings.roomDefault.sonnenUntergangRolloAdditionalOffsetPerCloudiness;
59
+ /**
60
+ * Latest time of shutter closing (regardless of geospecific sunset)
61
+ */
22
62
  this.sonnenUntergangRolloMaxTime = server_1.SettingsService.settings.roomDefault.sonnenUntergangRolloMaxTime;
63
+ /**
64
+ * Earliest time of shutter opening (regardless of geospecific sunset)
65
+ */
23
66
  this.sonnenAufgangRolloMinTime = server_1.SettingsService.settings.roomDefault.sonnenAufgangRolloMinTime;
67
+ /**
68
+ * +/- Offset for shutter closing on sunset in minutes
69
+ */
24
70
  this.sonnenUntergangRolloDelay = server_1.SettingsService.settings.roomDefault.sonnenUntergangRolloDelay;
71
+ /**
72
+ * +/- Offset for turning on lamps at movement after/before sunset
73
+ */
25
74
  this.sonnenUntergangLampenDelay = server_1.SettingsService.settings.roomDefault.sonnenUntergangLampenDelay;
75
+ /**
76
+ * Should shutters be closed on sunset (based on geolocation)
77
+ */
26
78
  this.sonnenUntergangRollos = server_1.SettingsService.settings.roomDefault.sonnenUntergangRollos;
79
+ /**
80
+ * Whether normal ceiling lights should also be turned on by movement, even if there are LEDs and outlets
81
+ */
27
82
  this.includeLampsInNormalMovementLightning = server_1.SettingsService.settings.roomDefault.includeLampsInNormalMovementLightning;
28
83
  }
29
84
  fromPartialObject(_obj) {
@@ -1,11 +1,33 @@
1
1
  import { TimeCallback } from '../timeCallback';
2
2
  import { RoomSetLightTimeBasedCommand } from '../command';
3
+ /**
4
+ * This interface represents a room with it's base functionality.
5
+ * Whilst accessing the custom rooms can be beneficial for direct device interaction, this provides interactions to e.g. device groups.
6
+ */
3
7
  export interface iRoomBase {
8
+ /**
9
+ * The time-callback for controlling shutters at sunrise
10
+ */
4
11
  sunriseShutterCallback: TimeCallback | undefined;
12
+ /**
13
+ * The time-callback for controlling shutters at sunset
14
+ */
5
15
  sunsetShutterCallback: TimeCallback | undefined;
16
+ /**
17
+ * The time-callback for controlling light at sunrise
18
+ */
6
19
  sonnenAufgangLichtCallback: TimeCallback | undefined;
20
+ /**
21
+ * The time-callback for controlling light at sunset
22
+ */
7
23
  sonnenUntergangLichtCallback: TimeCallback | undefined;
24
+ /**
25
+ * Whether the next sunset shutter-up should be skipped (afterwards this resets to false)
26
+ */
8
27
  skipNextRolloUp: boolean;
28
+ /**
29
+ * The name of the room
30
+ */
9
31
  roomName: string;
10
32
  /**
11
33
  * This function initializes the roomBase object of this room
@@ -21,12 +43,12 @@ export interface iRoomBase {
21
43
  recalcTimeCallbacks(): void;
22
44
  /**
23
45
  * This function sets the light in the room based on the command
24
- * @param {RoomSetLightTimeBasedCommand} c - The command to execute
46
+ * @param c - The command to execute
25
47
  */
26
48
  setLightTimeBased(c: RoomSetLightTimeBasedCommand): void;
27
49
  /**
28
50
  * This function checks if it is now light time respecting the room settings, the current time and the daylight hours for this location.
29
- * @returns {boolean}
51
+ * @returns
30
52
  */
31
53
  isNowLightTime(): boolean;
32
54
  }
@@ -1,3 +1,7 @@
1
+ /**
2
+ * Every Hoffmation Instance (e.g. using Hoffmation-Express) needs to enforce the Import of all house specific rooms.
3
+ * For Hoffmation-Base to be able to interact with this user-specific import enforcer this interface needs to be implemented.
4
+ */
1
5
  export interface iRoomImportEnforcer {
2
6
  /**
3
7
  * This function is called before initializing single devices,
@@ -21,7 +21,14 @@ export declare class TimeCallback {
21
21
  cloudOffset?: number | undefined;
22
22
  private _calculationSunrise?;
23
23
  get calculationSunrise(): Date;
24
+ /**
25
+ * The date this Callback was last fired
26
+ */
24
27
  lastDone: Date;
28
+ /**
29
+ * The calculated date when this callback should be fired next
30
+ * @warning This might have not yet been recalculated
31
+ */
25
32
  nextToDo?: Date;
26
33
  private _calculationSunset?;
27
34
  get calculationSunset(): Date;
@@ -36,6 +36,9 @@ class TimeCallback {
36
36
  this.minutes = minutes;
37
37
  this.sunTimeOffset = sunTimeOffset;
38
38
  this.cloudOffset = cloudOffset;
39
+ /**
40
+ * The date this Callback was last fired
41
+ */
39
42
  this.lastDone = new Date(0);
40
43
  }
41
44
  recalcNextToDo(now) {
@@ -94,7 +97,7 @@ class TimeCallback {
94
97
  break;
95
98
  }
96
99
  if (nextCalculatedTime < now && this.nextToDo && this.nextToDo > now) {
97
- server_1.ServerLogService.writeLog(logLevel_1.LogLevel.Info, `Time Callback recalc results in the past, while previous target is still in future --> fire immediately.`);
100
+ server_1.ServerLogService.writeLog(logLevel_1.LogLevel.Info, 'Time Callback recalc results in the past, while previous target is still in future --> fire immediately.');
98
101
  this.perform(now);
99
102
  return;
100
103
  }
@@ -1,6 +1,21 @@
1
+ /**
2
+ * The configuration needed to connect to an Asus Router
3
+ */
1
4
  export interface iAsusConfig {
5
+ /**
6
+ * The hostname of the Router (or it's IP-Address)
7
+ */
2
8
  address: string;
9
+ /**
10
+ * Whether to Ignore SSL warnings/error
11
+ */
3
12
  ignoreSSL?: boolean;
13
+ /**
14
+ * The password needed for authentication
15
+ */
4
16
  password: string;
17
+ /**
18
+ * The username to connect with.
19
+ */
5
20
  username: string;
6
21
  }
@@ -0,0 +1,23 @@
1
+ import { CollisionSolving } from '../../models';
2
+ /**
3
+ * These settings control the desired behaviour of {@link BlockAutomaticHandler}.
4
+ * Unless decided within a command this will determine the default behaviour.
5
+ *
6
+ * So this will e.g. be used when a Homebridge-Hoffmation instance
7
+ * e.g. issues a command to turn a light on as with this command no block
8
+ * duration or behaviour is specified.
9
+ */
10
+ export interface iBlockAutomaticHandlerDefaults {
11
+ /**
12
+ * Whether at Block-Lift the desired automatic state should be restored.
13
+ */
14
+ revertToAutomaticAtBlockLift?: boolean;
15
+ /**
16
+ * The default duration in milliseconds for a block to be on any force action.
17
+ */
18
+ blockAutomaticDurationMS?: number;
19
+ /**
20
+ * The default collision solving strategy to use.
21
+ */
22
+ defaultCollisionSolving?: CollisionSolving;
23
+ }
@@ -1,5 +1,19 @@
1
+ /**
2
+ * The configuration for the Blue-Iris Instance (if present).
3
+ * Blue-Iris is a software to manage IP-Cameras
4
+ * Settings for {@link BlueIrisCoordinator} to connect to a Blue-Iris instance
5
+ */
1
6
  export interface iBlueIrisSettings {
7
+ /**
8
+ * The hostname of the Blue-Iris Instance
9
+ */
2
10
  serverAddress: string;
11
+ /**
12
+ * If needed, the username to authenticate with
13
+ */
3
14
  username?: string;
15
+ /**
16
+ * If needed, the password to authenticate with.
17
+ */
4
18
  password?: string;
5
19
  }
@@ -1,4 +1,13 @@
1
+ /**
2
+ * Settings for tracking a bluetooth device using {@link iBluetoothDetector}
3
+ */
1
4
  export interface iBluetoothTrackingSettings {
5
+ /**
6
+ * The name of the device to track
7
+ */
2
8
  customName: string;
9
+ /**
10
+ * Whether to track the device
11
+ */
3
12
  activeTracking: boolean;
4
13
  }
@@ -15,38 +15,125 @@ import { iMuellSettings } from './iMuellSettings';
15
15
  import { iDaikinSettings } from './iDaikinSettings';
16
16
  import { iHeaterSettings } from './iHeaterSettings';
17
17
  import { iBlueIrisSettings } from './iBlueIrisSettings';
18
- import { iRestSettings } from './iRestSettings';
19
18
  import { iEspresenseSettings } from './iEspresenseSettings';
20
19
  import { iTibberSettings } from './iTibberSettings';
21
20
  import { iVictronSettings } from './iVictronSettings';
22
21
  import { iDachsSettings } from './iDachsSettings';
23
22
  import { iEnergyManagerSettings } from './iEnergyManagerSettings';
24
23
  import { iUnifiSettings } from './iUnifiSettings';
24
+ import { iBlockAutomaticHandlerDefaults } from './iBlockAutomaticHandlerDefaults';
25
+ import { iRestSettings } from './iRestSettings';
26
+ /**
27
+ * The main configuration for Hoffmation normally stored in the `main-config.json` file.
28
+ */
25
29
  export interface iConfig {
30
+ /**
31
+ * @see iAsusConfig
32
+ */
26
33
  asusConfig?: iAsusConfig;
34
+ /**
35
+ * @see i
36
+ */
37
+ blockAutomaticHandlerDefaults?: iBlockAutomaticHandlerDefaults;
38
+ /**
39
+ * @see iBlueIrisSettings
40
+ */
27
41
  blueIris?: iBlueIrisSettings;
28
- daikin?: iDaikinSettings;
42
+ /**
43
+ * @see iDachsSettings
44
+ */
29
45
  dachs?: iDachsSettings;
46
+ /**
47
+ * @see iDaikinSettings
48
+ */
49
+ daikin?: iDaikinSettings;
50
+ /**
51
+ * @see iEnergyManagerSettings
52
+ */
30
53
  energyManager?: iEnergyManagerSettings;
54
+ /**
55
+ * @see iEspresenseSettings
56
+ */
31
57
  espresense?: iEspresenseSettings;
32
- ioBrokerUrl: string;
33
- ioBroker?: iIobrokerSettigns;
58
+ /**
59
+ * Whether any Govee devices are present in the house and should be included in Hoffmation.
60
+ */
34
61
  goveeDevicesPresent?: boolean;
62
+ /**
63
+ * @see iHeaterSettings
64
+ */
35
65
  heaterSettings?: iHeaterSettings;
66
+ /**
67
+ * The URL to the ioBroker instance.
68
+ * @deprecated Please use the ioBroker property instead
69
+ */
70
+ ioBrokerUrl?: string;
71
+ /**
72
+ * @see iIobrokerSettigns
73
+ */
74
+ ioBroker?: iIobrokerSettigns;
75
+ /**
76
+ * @see iLogSettings
77
+ */
36
78
  logSettings?: iLogSettings;
79
+ /**
80
+ * @see iMp3Settings
81
+ */
37
82
  mp3Server?: iMp3Settings;
83
+ /**
84
+ * @see iMuellSettings
85
+ */
38
86
  muell?: iMuellSettings;
87
+ /**
88
+ * @see iNewsSettings
89
+ */
39
90
  news?: iNewsSettings;
91
+ /**
92
+ * @see iPersistenceSettings
93
+ */
40
94
  persistence?: iPersistenceSettings;
95
+ /**
96
+ * @see iPollySettings
97
+ */
41
98
  polly?: iPollySettings;
99
+ /**
100
+ * @see iRestSettings
101
+ */
42
102
  restServer?: iRestSettings;
103
+ /**
104
+ * @see iRoomDefaultSettings
105
+ */
43
106
  roomDefault: iRoomDefaultSettings;
107
+ /**
108
+ * @see iSonosSettings
109
+ */
44
110
  sonos?: iSonosSettings;
111
+ /**
112
+ * @see iTelegramSettings
113
+ */
45
114
  telegram?: iTelegramSettings;
115
+ /**
116
+ * @see iTibberSettings
117
+ */
46
118
  tibber?: iTibberSettings;
119
+ /**
120
+ * @see iTimeSettings
121
+ */
47
122
  timeSettings: iTimeSettings;
123
+ /**
124
+ * @see iTranslationSettings
125
+ */
48
126
  translationSettings: iTranslationSettings;
127
+ /**
128
+ * @see iUnifiSettings
129
+ */
49
130
  unifiSettings?: iUnifiSettings;
50
- weather?: iWeatherSettings;
131
+ /**
132
+ * @see iVictronSettings
133
+ */
51
134
  victron?: iVictronSettings;
135
+ /**
136
+ * @see iWeatherSettings
137
+ */
138
+ weather?: iWeatherSettings;
52
139
  }
@@ -1,7 +1,23 @@
1
1
  import { DachsClientOptions, InfluxDbConnectionOptions } from '../devices/dachs';
2
+ /**
3
+ * The configuration for the Dachs CHP (if present)
4
+ * CHP = Combined Heat and Power (in german Block-Heiz-Kraftwerk)
5
+ */
2
6
  export interface iDachsSettings {
7
+ /**
8
+ * The interval in milli-seconds in which the Dachs client should refresh its data.
9
+ */
3
10
  refreshInterval: number;
11
+ /**
12
+ * The connection options for the Dachs client.
13
+ */
4
14
  connectionOptions: DachsClientOptions;
15
+ /**
16
+ * If provided, the Dachs client will write data to this InfluxDB.
17
+ */
5
18
  influxDb?: InfluxDbConnectionOptions;
19
+ /**
20
+ * The room name the Dachs device is located in.
21
+ */
6
22
  roomName: string;
7
23
  }
@@ -1,6 +1,23 @@
1
+ /**
2
+ * The configuration for Daikin Air-Conditioning devices (if present)
3
+ */
1
4
  export interface iDaikinSettings {
5
+ /**
6
+ * Whether the Daikin service should be active.
7
+ */
2
8
  active: boolean;
9
+ /**
10
+ * Enables further Logging for Daikin-device in case of akward issues.
11
+ * TODO: Move to Logservice Debugging Type
12
+ */
3
13
  activateTracingLogger?: boolean;
14
+ /**
15
+ * Whether all requests to the Daikin devices should be made using GET requests.
16
+ */
4
17
  useGetToPost?: boolean;
18
+ /**
19
+ * Whether Room Default Callbacks should be added to start ac on Bottom Right short and stop on long button press.
20
+ * @warning This can collide with Sonos-Control (@see {@link iSonosSettings.buttonBotRightForRadio})
21
+ */
5
22
  buttonBotRightForAc?: boolean;
6
23
  }
@@ -1,5 +1,18 @@
1
+ /**
2
+ * The configuration for an Energy-Manager (if present).
3
+ * This can be used to make proper use of excess energy (e.g. from solar panels)
4
+ */
1
5
  export interface iEnergyManagerSettings {
6
+ /**
7
+ * Disable ioBroker JS-EnergyManager
8
+ */
2
9
  disableJsEnergyManager?: boolean;
10
+ /**
11
+ * The price per kWh injecting into the grid
12
+ */
3
13
  injectWattagePrice?: number;
14
+ /**
15
+ * The price per kWh from the grid
16
+ */
4
17
  wattagePrice?: number;
5
18
  }
@@ -1,6 +1,16 @@
1
1
  import { iBluetoothTrackingSettings } from './iBluetoothTrackingSettings';
2
+ /**
3
+ * The configuration for Espresense devices (if present)
4
+ * This can be used to monitor/tack/locate the position of certain bluetooth devices within the house.
5
+ */
2
6
  export interface iEspresenseSettings {
7
+ /**
8
+ * The instance of the mqtt adapter providing the data for espresense devices within ioBroker.
9
+ */
3
10
  mqttInstance: number;
11
+ /**
12
+ * An map providing settings for some devices to be tracked.
13
+ */
4
14
  deviceMap: {
5
15
  [folderId: string]: iBluetoothTrackingSettings;
6
16
  };
@@ -1,9 +1,17 @@
1
1
  import { HeatingMode } from './heatingMode';
2
+ /**
3
+ * Additional settings for the heating system (if present)
4
+ */
2
5
  export interface iHeaterSettings {
3
6
  /**
4
7
  * Whether heating with ac is allowed
5
8
  * This normally depends on the cost difference between ac heating and conventional heating
6
9
  */
7
10
  allowAcHeating?: boolean;
11
+ /**
12
+ * The desired Heating mode of the house.
13
+ * As of today you have to manually switch between summer and winter.
14
+ * TODO: Add heating Mode change to persisted settings and allow controlling it via the app
15
+ */
8
16
  mode?: HeatingMode;
9
17
  }
@@ -1,3 +1,7 @@
1
+ /**
2
+ * The settings for the ioBroker instance
3
+ * Currently Hoffmation needs an ioBroker instance, but we might make it independent of it in the future.
4
+ */
1
5
  export interface iIobrokerSettigns {
2
6
  /**
3
7
  * Whether states should be initialized by processing each key on its own.
@@ -8,4 +12,8 @@ export interface iIobrokerSettigns {
8
12
  * Whether the new/advanced zigbee2mqtt adapter is used
9
13
  */
10
14
  useZigbee2mqtt?: boolean;
15
+ /**
16
+ * The URL to the ioBroker instance (or the IP-Address)
17
+ */
18
+ ioBrokerUrl: string;
11
19
  }
@@ -1,12 +1,47 @@
1
+ import { LogLevel } from '../../models';
2
+ /**
3
+ * The settings for the logging system.
4
+ * There are different log-levels which can be set and debug-logging can be granular enabled
5
+ */
1
6
  export interface iLogSettings {
2
- logLevel: number;
7
+ /**
8
+ * The threshold level for logging (-1 = off)
9
+ */
10
+ logLevel: LogLevel | -1;
11
+ /**
12
+ * Whether to inlude the timestamp in the log messages
13
+ */
3
14
  useTimestamp: boolean;
15
+ /**
16
+ * Whether to log debug messages for movement state changes
17
+ */
4
18
  debugNewMovementState?: boolean;
19
+ /**
20
+ * Whether to log debug messages for shutter position changes
21
+ */
5
22
  debugShutterPositionChange?: boolean;
23
+ /**
24
+ * Whether to log debug messages for actuator change commands
25
+ */
6
26
  debugActuatorChange?: boolean;
27
+ /**
28
+ * Whether to log debug messages for shutter commands being blocked as it is already in the desired position
29
+ */
7
30
  debugUchangedShutterPosition?: boolean;
31
+ /**
32
+ * Whether to log debug messages for actuator commands being blocked as it is already in the desired state
33
+ */
8
34
  debugUnchangedActuator?: boolean;
35
+ /**
36
+ * Whether to log debug messages for daikin control commands
37
+ */
9
38
  debugDaikinSuccessfullControlInfo?: boolean;
39
+ /**
40
+ * Whether to log debug messages for euro heater valve position changes
41
+ */
10
42
  debugEuroHeaterValve?: boolean;
43
+ /**
44
+ * Whether to log debug messages for trilateration calculations
45
+ */
11
46
  debugTrilateration?: boolean;
12
47
  }
@@ -1,4 +1,14 @@
1
+ /**
2
+ * The settings for the mp3-server (if needed).
3
+ * A mp3-server is mainly needed for playing text-to-speech messages on speakers (e.g. Sonos)
4
+ */
1
5
  export interface iMp3Settings {
6
+ /**
7
+ * local path for the mp3 files to store/load
8
+ */
2
9
  path: string;
10
+ /**
11
+ * external reachable adress to access those mp3 files
12
+ */
3
13
  serverAddress: string;
4
14
  }
@@ -1,3 +1,10 @@
1
+ /**
2
+ * The settings for the Müll-Service (if needed).
3
+ * Müll-Service is a service to remind you of the different waste collections.
4
+ */
1
5
  export interface iMuellSettings {
6
+ /**
7
+ * URL to the calendar to fetch the events from
8
+ */
2
9
  calendarURL: string;
3
10
  }
@@ -1,5 +1,18 @@
1
+ /**
2
+ * The settings for the news-service (if needed).
3
+ * The news-service is used to download news-podcasts and play them on speakers (e.g. Sonos)
4
+ */
1
5
  export interface iNewsSettings {
6
+ /**
7
+ * rss feed url that contains the news information and audio file
8
+ */
2
9
  rssUrl?: string;
10
+ /**
11
+ * request interval in minutes
12
+ */
3
13
  requestInterval?: number;
14
+ /**
15
+ * maximum age in minutes of files cached for playback before they get deleted
16
+ */
4
17
  keepMaxAge?: number;
5
18
  }
@@ -1,4 +1,14 @@
1
1
  import { PoolConfig } from 'pg';
2
+ /**
3
+ * The settings for the persistence system.
4
+ * The persistence system is used mainly for following things:
5
+ * 1. To persists settings/configuration
6
+ * 2. To persists the state of devices (e.g. to remember the last state of a light)
7
+ * 3. To persists device data for Statistics
8
+ */
2
9
  export interface iPersistenceSettings {
10
+ /**
11
+ * PostgreSql configuration
12
+ */
3
13
  postgreSql?: PoolConfig;
4
14
  }
@@ -1,8 +1,30 @@
1
+ /**
2
+ * The settings for the polly-service (if needed).
3
+ * This service is used to convert text to speech.
4
+ */
1
5
  export interface iPollySettings {
6
+ /**
7
+ * The path to store the mp3 files
8
+ */
2
9
  mp3Path: string;
10
+ /**
11
+ * The region to use for the Polly service
12
+ */
3
13
  region: string;
14
+ /**
15
+ * The signature version to use for the Polly service
16
+ */
4
17
  signatureVersion: string;
18
+ /**
19
+ * Your AWS access key id
20
+ */
5
21
  accessKeyId: string;
22
+ /**
23
+ * Your AWS secret access key
24
+ */
6
25
  secretAccessKey: string;
26
+ /**
27
+ * The voice id to use for the Polly service
28
+ */
7
29
  voiceID: string;
8
30
  }
@@ -1,4 +1,14 @@
1
+ /**
2
+ * Interface for the REST settings.
3
+ * This is primarily used to configure the REST service within Hoffmation-Express.
4
+ */
1
5
  export interface iRestSettings {
6
+ /**
7
+ * Whether the REST service should be active.
8
+ */
2
9
  active: boolean;
10
+ /**
11
+ * The port the REST service should listen on.
12
+ */
3
13
  port?: number;
4
14
  }