hoffmation-base 3.0.0-alpha.22 → 3.0.0-alpha.24

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 (441) 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/deviceConfig.d.ts +1 -1
  57. package/lib/models/deviceSettings/acSettings.d.ts +14 -1
  58. package/lib/models/deviceSettings/acSettings.js +14 -1
  59. package/lib/models/deviceSettings/cameraSettings.d.ts +12 -0
  60. package/lib/models/deviceSettings/cameraSettings.js +12 -0
  61. package/lib/models/deviceSettings/dachsSettings.d.ts +3 -0
  62. package/lib/models/deviceSettings/dachsSettings.js +3 -0
  63. package/lib/models/deviceSettings/deviceSettings.d.ts +10 -0
  64. package/lib/models/deviceSettings/deviceSettings.js +16 -0
  65. package/lib/models/deviceSettings/dimmerSettings.d.ts +20 -0
  66. package/lib/models/deviceSettings/dimmerSettings.js +20 -0
  67. package/lib/models/deviceSettings/handleSettings.d.ts +9 -0
  68. package/lib/models/deviceSettings/handleSettings.js +9 -0
  69. package/lib/models/deviceSettings/heaterSettings.d.ts +21 -3
  70. package/lib/models/deviceSettings/heaterSettings.js +21 -3
  71. package/lib/models/deviceSettings/ledSettings.d.ts +66 -0
  72. package/lib/models/deviceSettings/ledSettings.js +66 -0
  73. package/lib/models/deviceSettings/motionSensorSettings.d.ts +5 -0
  74. package/lib/models/deviceSettings/motionSensorSettings.js +5 -0
  75. package/lib/models/deviceSettings/sceneSettings.d.ts +4 -0
  76. package/lib/models/deviceSettings/shutterSettings.d.ts +11 -0
  77. package/lib/models/deviceSettings/shutterSettings.js +11 -0
  78. package/lib/models/deviceSettings/sonosDeviceSettings.d.ts +4 -0
  79. package/lib/models/deviceSettings/sonosDeviceSettings.js +4 -0
  80. package/lib/models/deviceSettings/tvSettings.d.ts +4 -0
  81. package/lib/models/deviceSettings/victronDeviceSettings.d.ts +34 -0
  82. package/lib/models/deviceSettings/victronDeviceSettings.js +34 -0
  83. package/lib/models/deviceSettings/wledSettings.d.ts +48 -0
  84. package/lib/models/deviceSettings/wledSettings.js +32 -0
  85. package/lib/models/groupSettings/heatGroupSettings.d.ts +9 -0
  86. package/lib/models/groupSettings/heatGroupSettings.js +9 -0
  87. package/lib/models/iIdHolder.d.ts +15 -3
  88. package/lib/models/index.d.ts +1 -1
  89. package/lib/models/index.js +3 -1
  90. package/lib/models/objectSettings.d.ts +3 -0
  91. package/lib/models/persistence/EnergyCalculation.d.ts +27 -0
  92. package/lib/models/persistence/EnergyCalculation.js +30 -4
  93. package/lib/models/persistence/index.d.ts +0 -2
  94. package/lib/models/persistence/index.js +0 -2
  95. package/lib/models/rooms/RoomBase.d.ts +10 -0
  96. package/lib/models/rooms/RoomBase.js +1 -0
  97. package/lib/models/rooms/RoomSettings/RoomInitializationSettings.d.ts +2 -1
  98. package/lib/models/rooms/RoomSettings/RoomInitializationSettings.js +2 -2
  99. package/lib/models/rooms/RoomSettings/RoomSettingsController.d.ts +9 -0
  100. package/lib/models/rooms/RoomSettings/RoomSettingsController.js +1 -1
  101. package/lib/models/rooms/RoomSettings/iRoomDefaultSettings.d.ts +53 -3
  102. package/lib/models/rooms/RoomSettings/iRoomInitializationSettings.d.ts +10 -1
  103. package/lib/models/rooms/RoomSettings/roomDeviceAddingSettings.d.ts +4 -1
  104. package/lib/models/rooms/RoomSettings/roomDeviceAddingSettings.js +3 -0
  105. package/lib/models/rooms/RoomSettings/roomSettings.d.ts +55 -0
  106. package/lib/models/rooms/RoomSettings/roomSettings.js +55 -0
  107. package/lib/models/rooms/iRoomBase.d.ts +24 -2
  108. package/lib/models/rooms/iRoomImportEnforcer.d.ts +4 -0
  109. package/lib/models/timeCallback.d.ts +7 -0
  110. package/lib/models/timeCallback.js +4 -1
  111. package/lib/server/config/iAsusConfig.d.ts +15 -0
  112. package/lib/server/config/iBlockAutomaticHandlerDefaults.d.ts +23 -0
  113. package/lib/server/config/iBlueIrisSettings.d.ts +14 -0
  114. package/lib/server/config/iBluetoothTrackingSettings.d.ts +9 -0
  115. package/lib/server/config/iConfig.d.ts +88 -6
  116. package/lib/server/config/iDachsSettings.d.ts +16 -0
  117. package/lib/server/config/iDaikinSettings.d.ts +17 -0
  118. package/lib/server/config/iEnergyManagerSettings.d.ts +13 -0
  119. package/lib/server/config/iEspresenseSettings.d.ts +10 -0
  120. package/lib/server/config/iHeaterSettings.d.ts +8 -0
  121. package/lib/server/config/iIobrokerSettigns.d.ts +8 -0
  122. package/lib/server/config/iLogSettings.d.ts +36 -1
  123. package/lib/server/config/iMp3Settings.d.ts +10 -0
  124. package/lib/server/config/iMuellSettings.d.ts +7 -0
  125. package/lib/server/config/iNewsSettings.d.ts +13 -0
  126. package/lib/server/config/iPersistenceSettings.d.ts +10 -0
  127. package/lib/server/config/iPollySettings.d.ts +22 -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 -1
  139. package/lib/server/config/index.js +0 -1
  140. package/lib/server/devices/DeviceCapability.d.ts +1 -0
  141. package/lib/server/devices/DeviceCapability.js +1 -0
  142. package/lib/server/devices/DeviceInfo.d.ts +9 -0
  143. package/lib/server/devices/DeviceInfo.js +6 -0
  144. package/lib/server/devices/Griffe.js +1 -1
  145. package/lib/server/devices/Heizgruppen.js +2 -2
  146. package/lib/server/devices/IoBrokerBaseDevice.d.ts +23 -2
  147. package/lib/server/devices/IoBrokerBaseDevice.js +16 -4
  148. package/lib/server/devices/baseDeviceInterfaces/iAcDevice.d.ts +14 -3
  149. package/lib/server/devices/baseDeviceInterfaces/iActuator.d.ts +2 -0
  150. package/lib/server/devices/baseDeviceInterfaces/iBaseDevice.d.ts +1 -1
  151. package/lib/server/devices/baseDeviceInterfaces/iBatteryDevice.d.ts +2 -0
  152. package/lib/server/devices/baseDeviceInterfaces/iBluetoothDetector.d.ts +15 -7
  153. package/lib/server/devices/baseDeviceInterfaces/iButtonSwitch.d.ts +33 -4
  154. package/lib/server/devices/baseDeviceInterfaces/iCameraDevice.d.ts +38 -5
  155. package/lib/server/devices/baseDeviceInterfaces/iDimmableLamp.d.ts +10 -2
  156. package/lib/server/devices/baseDeviceInterfaces/iEnergyManager.d.ts +19 -0
  157. package/lib/server/devices/baseDeviceInterfaces/iExcessEnergyConsumer.d.ts +16 -2
  158. package/lib/server/devices/baseDeviceInterfaces/iGarageDoorOpener.d.ts +11 -0
  159. package/lib/server/devices/baseDeviceInterfaces/iHandleSensor.d.ts +15 -3
  160. package/lib/server/devices/baseDeviceInterfaces/iHeater.d.ts +28 -2
  161. package/lib/server/devices/baseDeviceInterfaces/iHumiditySensor.d.ts +13 -1
  162. package/lib/server/devices/baseDeviceInterfaces/iIlluminationSensor.d.ts +11 -0
  163. package/lib/server/devices/baseDeviceInterfaces/iLamp.d.ts +6 -1
  164. package/lib/server/devices/baseDeviceInterfaces/iLedRgbCct.d.ts +16 -1
  165. package/lib/server/devices/baseDeviceInterfaces/iLoadMeter.d.ts +5 -0
  166. package/lib/server/devices/baseDeviceInterfaces/iMagnetSensor.d.ts +31 -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/server/config/iRestSettings.d.ts +0 -4
  440. /package/lib/{models/iTemperaturDataPoint.js → server/config/iBlockAutomaticHandlerDefaults.js} +0 -0
  441. /package/lib/server/{config/iRestSettings.js → devices/baseDeviceInterfaces/iMagnetSensor.js} +0 -0
@@ -15,15 +15,19 @@ const settings_service_1 = require("../settings-service");
15
15
  const config_1 = require("../../config");
16
16
  const blockAutomaticHandler_1 = require("../blockAutomaticHandler");
17
17
  class AcDevice {
18
+ /** @inheritDoc */
18
19
  get temperature() {
19
20
  return this._roomTemperature;
20
21
  }
22
+ /** @inheritDoc */
21
23
  get customName() {
22
24
  return this.info.customName;
23
25
  }
26
+ /** @inheritDoc */
24
27
  get room() {
25
28
  return this._room;
26
29
  }
30
+ /** @inheritDoc */
27
31
  set room(room) {
28
32
  var _a, _b;
29
33
  this._room = room;
@@ -33,14 +37,18 @@ class AcDevice {
33
37
  (_b = room === null || room === void 0 ? void 0 : room.PraesenzGroup) === null || _b === void 0 ? void 0 : _b.addLastLeftCallback(this.onRoomLastLeave.bind(this));
34
38
  }
35
39
  }
40
+ /** @inheritDoc */
36
41
  get mode() {
37
42
  return this._mode;
38
43
  }
39
44
  constructor(name, roomName, ip, acDeviceType) {
40
45
  this.ip = ip;
41
46
  this.acDeviceType = acDeviceType;
47
+ /** @inheritDoc */
42
48
  this.currentConsumption = -1;
49
+ /** @inheritDoc */
43
50
  this.settings = new models_1.AcSettings();
51
+ /** @inheritDoc */
44
52
  this.deviceCapabilities = [DeviceCapability_1.DeviceCapability.ac, DeviceCapability_1.DeviceCapability.blockAutomatic];
45
53
  this._activatedByExcessEnergy = false;
46
54
  this._desiredTemperatur = devices_1.UNDEFINED_TEMP_VALUE;
@@ -58,32 +66,39 @@ class AcDevice {
58
66
  this.loadDeviceSettings();
59
67
  this.blockAutomationHandler = new blockAutomaticHandler_1.BlockAutomaticHandler(this.restoreTargetAutomaticValue.bind(this));
60
68
  }
69
+ /** @inheritDoc */
61
70
  get energySettings() {
62
71
  return this.settings.energySettings;
63
72
  }
73
+ /** @inheritDoc */
64
74
  get roomTemperature() {
65
75
  return this._roomTemperature;
66
76
  }
77
+ /** @inheritDoc */
67
78
  get info() {
68
79
  return this._info;
69
80
  }
70
81
  set roomTemperatur(val) {
71
82
  this._roomTemperature = val;
72
83
  }
73
- set info(info) {
74
- this._info = info;
75
- }
84
+ /**
85
+ * The name of this device
86
+ * @returns The human readable name of this device
87
+ */
76
88
  get name() {
77
89
  return this.info.customName;
78
90
  }
91
+ /** @inheritDoc */
79
92
  get id() {
80
93
  var _a;
81
94
  return (_a = this.info.allDevicesKey) !== null && _a !== void 0 ? _a : `ac-${this.info.room}-${this.info.customName}`;
82
95
  }
96
+ /** @inheritDoc */
83
97
  restoreTargetAutomaticValue() {
84
- this.log(models_1.LogLevel.Debug, `Restore Target Automatic value`);
98
+ this.log(models_1.LogLevel.Debug, 'Restore Target Automatic value');
85
99
  this.automaticCheck();
86
100
  }
101
+ /** @inheritDoc */
87
102
  isAvailableForExcessEnergy() {
88
103
  var _a, _b;
89
104
  if (this.settings.useAutomatic || (((_b = (_a = this.room) === null || _a === void 0 ? void 0 : _a.HeatGroup) === null || _b === void 0 ? void 0 : _b.settings.automaticMode) && this.settings.heatingAllowed)) {
@@ -97,22 +112,23 @@ class AcDevice {
97
112
  }
98
113
  return this.calculateDesiredMode() !== ac_mode_1.AcMode.Off;
99
114
  }
115
+ /** @inheritDoc */
100
116
  calculateDesiredMode() {
101
117
  var _a, _b, _c, _d, _e, _f, _g;
102
118
  const acOn = this.on;
103
119
  const heatGroup = (_a = this.room) === null || _a === void 0 ? void 0 : _a.HeatGroup;
104
120
  if (!heatGroup) {
105
- this.log(models_1.LogLevel.Warn, `Can't calculate AC Mode as we have no heat group`);
121
+ this.log(models_1.LogLevel.Warn, "Can't calculate AC Mode as we have no heat group");
106
122
  return ac_mode_1.AcMode.Off;
107
123
  }
108
124
  this._desiredTemperatur = heatGroup.desiredTemp;
109
125
  if (this.settings.manualDisabled) {
110
- acOn && this.log(models_1.LogLevel.Info, `We should turn off now, as manual disable force is set.`);
126
+ acOn && this.log(models_1.LogLevel.Info, 'We should turn off now, as manual disable force is set.');
111
127
  return ac_mode_1.AcMode.Off;
112
128
  }
113
129
  // Check Turn Off Time
114
130
  if (!utils_1.Utils.timeWithinBorders(this.settings.minimumHours, this.settings.minimumMinutes, this.settings.maximumHours, this.settings.maximumMinutes)) {
115
- acOn && this.log(models_1.LogLevel.Info, `We should turn off now, to respect night settings.`);
131
+ acOn && this.log(models_1.LogLevel.Info, 'We should turn off now, to respect night settings.');
116
132
  return ac_mode_1.AcMode.Off;
117
133
  }
118
134
  if (this.settings.useOwnTemperature) {
@@ -130,11 +146,11 @@ class AcDevice {
130
146
  }
131
147
  const temp = this.roomTemperature;
132
148
  if (temp === undefined || temp === devices_1.UNDEFINED_TEMP_VALUE) {
133
- this.log(models_1.LogLevel.Warn, `Can't calculate AC Mode as we have no room temperature`);
149
+ this.log(models_1.LogLevel.Warn, "Can't calculate AC Mode as we have no room temperature");
134
150
  return ac_mode_1.AcMode.Off;
135
151
  }
136
152
  if (!heatGroup) {
137
- this.log(models_1.LogLevel.Warn, `Can't calculate AC Mode as we have no heat group`);
153
+ this.log(models_1.LogLevel.Warn, "Can't calculate AC Mode as we have no heat group");
138
154
  return ac_mode_1.AcMode.Off;
139
155
  }
140
156
  let threshold = acOn ? 0.5 : 1.5;
@@ -163,9 +179,13 @@ class AcDevice {
163
179
  }
164
180
  return desiredMode;
165
181
  }
182
+ /** @inheritDoc */
166
183
  onTemperaturChange(newTemperatur) {
167
184
  this.roomTemperatur = newTemperatur;
168
185
  }
186
+ /**
187
+ * Persists the current AC-Information to the database
188
+ */
169
189
  persist() {
170
190
  var _a;
171
191
  if (!utils_1.Utils.anyDboActive || this.on === undefined) {
@@ -173,6 +193,7 @@ class AcDevice {
173
193
  }
174
194
  (_a = utils_1.Utils.dbo) === null || _a === void 0 ? void 0 : _a.persistAC(this);
175
195
  }
196
+ /** @inheritDoc */
176
197
  turnOnForExcessEnergy() {
177
198
  if (this.blockAutomationHandler.automaticBlockActive) {
178
199
  return;
@@ -181,10 +202,17 @@ class AcDevice {
181
202
  this.setDesiredMode(this.calculateDesiredMode(), false);
182
203
  this.turnOn();
183
204
  }
205
+ /** @inheritDoc */
184
206
  turnOffDueToMissingEnergy() {
185
207
  this.turnOff();
186
208
  }
187
- // TODO: Migrate to new command system
209
+ /**
210
+ * Sets the state of the AC
211
+ * TODO: Migrate to new command system
212
+ * @param mode - The desired mode
213
+ * @param desiredTemp - The desired temperature (if unset it will be calculated)
214
+ * @param forceTime - The time in ms to force the AC to stay in this state (default 1h)
215
+ */
188
216
  setState(mode, desiredTemp, forceTime = 60 * 60 * 1000) {
189
217
  this.blockAutomationHandler.disableAutomatic(new models_1.BlockAutomaticCommand(models_1.CommandSource.Unknown, forceTime));
190
218
  this._mode = mode;
@@ -195,6 +223,7 @@ class AcDevice {
195
223
  this.setDesiredMode(mode, false, desiredTemp);
196
224
  this.turnOn();
197
225
  }
226
+ /** @inheritDoc */
198
227
  log(level, message, debugType = log_service_1.LogDebugType.None) {
199
228
  var _a, _b;
200
229
  log_service_1.ServerLogService.writeLog(level, `${this.name}: ${message}`, {
@@ -204,12 +233,15 @@ class AcDevice {
204
233
  deviceName: this.name,
205
234
  });
206
235
  }
236
+ /** @inheritDoc */
207
237
  wasActivatedByExcessEnergy() {
208
238
  return this._activatedByExcessEnergy;
209
239
  }
240
+ /** @inheritDoc */
210
241
  loadDeviceSettings() {
211
242
  this.settings.initializeFromDb(this);
212
243
  }
244
+ /** @inheritDoc */
213
245
  persistDeviceInfo() {
214
246
  utils_1.Utils.guardedTimeout(() => {
215
247
  var _a;
@@ -237,16 +269,17 @@ class AcDevice {
237
269
  if (!this.settings.noCoolingOnMovement || !this.on || this.mode === ac_mode_1.AcMode.Heating) {
238
270
  return;
239
271
  }
240
- this.log(models_1.LogLevel.Info, `Someone entered the room. Turning off AC`);
272
+ this.log(models_1.LogLevel.Info, 'Someone entered the room. Turning off AC');
241
273
  this.turnOff();
242
274
  }
243
275
  onRoomLastLeave() {
244
276
  if (!this.settings.noCoolingOnMovement) {
245
277
  return;
246
278
  }
247
- this.log(models_1.LogLevel.Info, `Last person left the room. Checking if we should turn on AC`);
279
+ this.log(models_1.LogLevel.Info, 'Last person left the room. Checking if we should turn on AC');
248
280
  this.restoreTargetAutomaticValue();
249
281
  }
282
+ /** @inheritDoc */
250
283
  toJSON() {
251
284
  // eslint-disable-next-line
252
285
  const result = lodash_1.default.omit(this, ['room', '_room']);
@@ -41,14 +41,14 @@ class DaikinService {
41
41
  DaikinService.setAll(true);
42
42
  Telegram_1.TelegramService.sendMessage([m.chat.id], 'Command executed');
43
43
  return true;
44
- }, `Turns all Ac's on without changing any settings`));
44
+ }, "Turns all Ac's on without changing any settings"));
45
45
  Telegram_1.TelegramService.addMessageCallback(new Telegram_1.TelegramMessageCallback('AcOff', /\/ac_off/, async (m) => {
46
46
  if (m.from === undefined)
47
47
  return false;
48
48
  DaikinService.setAll(false, true);
49
49
  Telegram_1.TelegramService.sendMessage([m.chat.id], 'Command executed');
50
50
  return true;
51
- }, `Turns all Ac's off without changing any settings`));
51
+ }, "Turns all Ac's off without changing any settings"));
52
52
  return new Promise((res, _rej) => {
53
53
  var _a, _b;
54
54
  this._daikinManager = new daikin_controller_1.DaikinManager({
@@ -1,5 +1,8 @@
1
1
  import { AcDevice } from './ac-device';
2
2
  export declare class OwnAcDevices {
3
+ /**
4
+ * A dict containing the AC-Devices
5
+ */
3
6
  static ownDevices: {
4
7
  [name: string]: AcDevice;
5
8
  };
@@ -12,4 +12,7 @@ class OwnAcDevices {
12
12
  }
13
13
  }
14
14
  exports.OwnAcDevices = OwnAcDevices;
15
+ /**
16
+ * A dict containing the AC-Devices
17
+ */
15
18
  OwnAcDevices.ownDevices = {};
@@ -5,22 +5,39 @@ import { DeviceType } from '../../devices';
5
5
  export declare class OwnDaikinDevice extends AcDevice {
6
6
  private _device;
7
7
  private _mac;
8
+ /**
9
+ * The desired state of the device
10
+ */
8
11
  desiredState: boolean;
12
+ /**
13
+ * The desired humidity-state of the device
14
+ * @default 'AUTO'
15
+ */
9
16
  desiredHum: number | 'AUTO';
17
+ /**
18
+ * The desired mode of the device
19
+ * @default Mode.COLD
20
+ */
10
21
  desiredMode: number;
22
+ /** @inheritDoc */
11
23
  deviceType: DeviceType;
12
24
  private _on;
13
25
  constructor(name: string, roomName: string, ip: string, _device: DaikinAC | undefined, _mac?: string | undefined);
14
26
  get device(): DaikinAC | undefined;
27
+ /** @inheritDoc */
15
28
  get on(): boolean;
16
29
  set device(device: DaikinAC | undefined);
30
+ /** @inheritDoc */
17
31
  setDesiredMode(mode: AcMode, writeToDevice?: boolean, desiredTemp?: number): void;
32
+ /** @inheritDoc */
18
33
  turnOn(): void;
34
+ /** @inheritDoc */
19
35
  turnOff(): void;
20
36
  protected automaticCheck(): void;
21
37
  private setDesiredInfo;
22
38
  private updateInfo;
23
39
  private handleDeviceUnreach;
24
40
  private handleParamNg;
41
+ /** @inheritDoc */
25
42
  toJSON(): Partial<OwnDaikinDevice>;
26
43
  }
@@ -20,15 +20,28 @@ class OwnDaikinDevice extends ac_device_1.AcDevice {
20
20
  super(name, roomName, ip, acDeviceType_1.AcDeviceType.Daikin);
21
21
  this._device = _device;
22
22
  this._mac = _mac;
23
+ /**
24
+ * The desired state of the device
25
+ */
23
26
  this.desiredState = daikin_controller_1.Power.OFF;
27
+ /**
28
+ * The desired humidity-state of the device
29
+ * @default 'AUTO'
30
+ */
24
31
  this.desiredHum = 'AUTO';
32
+ /**
33
+ * The desired mode of the device
34
+ * @default Mode.COLD
35
+ */
25
36
  this.desiredMode = daikin_controller_1.Mode.COLD;
37
+ /** @inheritDoc */
26
38
  this.deviceType = devices_1.DeviceType.Daikin;
27
39
  this._on = false;
28
40
  }
29
41
  get device() {
30
42
  return this._device;
31
43
  }
44
+ /** @inheritDoc */
32
45
  get on() {
33
46
  return this._on;
34
47
  }
@@ -45,6 +58,7 @@ class OwnDaikinDevice extends ac_device_1.AcDevice {
45
58
  }
46
59
  void this.updateInfo();
47
60
  }
61
+ /** @inheritDoc */
48
62
  setDesiredMode(mode, writeToDevice = true, desiredTemp) {
49
63
  let newMode = -1;
50
64
  switch (mode) {
@@ -67,13 +81,15 @@ class OwnDaikinDevice extends ac_device_1.AcDevice {
67
81
  this.setDesiredInfo(false, desiredTemp);
68
82
  }
69
83
  }
84
+ /** @inheritDoc */
70
85
  turnOn() {
71
- this.log(models_1.LogLevel.Info, `Turning on`);
86
+ this.log(models_1.LogLevel.Info, 'Turning on');
72
87
  this.desiredState = daikin_controller_1.Power.ON;
73
88
  this.setDesiredInfo();
74
89
  }
90
+ /** @inheritDoc */
75
91
  turnOff() {
76
- this.log(models_1.LogLevel.Info, `Turning off`);
92
+ this.log(models_1.LogLevel.Info, 'Turning off');
77
93
  this._activatedByExcessEnergy = false;
78
94
  this.desiredState = daikin_controller_1.Power.OFF;
79
95
  this._mode = ac_mode_1.AcMode.Off;
@@ -128,7 +144,7 @@ class OwnDaikinDevice extends ac_device_1.AcDevice {
128
144
  this.persist();
129
145
  }
130
146
  else {
131
- this.log(models_1.LogLevel.Warn, `No Error, but also no response...`);
147
+ this.log(models_1.LogLevel.Warn, 'No Error, but also no response...');
132
148
  }
133
149
  });
134
150
  }
@@ -169,6 +185,7 @@ class OwnDaikinDevice extends ac_device_1.AcDevice {
169
185
  }
170
186
  });
171
187
  }
188
+ /** @inheritDoc */
172
189
  toJSON() {
173
190
  // eslint-disable-next-line
174
191
  const result = lodash_1.default.omit(this, ['room', '_room', 'device', '_device']);
@@ -45,7 +45,7 @@ export declare class API {
45
45
  * @param state - The desired new state
46
46
  * @param timeout - Desired time after which this should be reverted to normal state
47
47
  * @returns In case it failed the Error containing the reason
48
- * @deprecated Use "API.lampSetLight" instead
48
+ * @deprecated Use {@link API.lampSetLight} instead
49
49
  * TODO: Remove deprecated API method
50
50
  */
51
51
  static setLamp(deviceId: string, state: boolean, timeout?: number): Error | null;
@@ -62,7 +62,7 @@ export declare class API {
62
62
  * @param state - The desired new state
63
63
  * @param timeout - Desired time after which this should be reverted to automatic state
64
64
  * @returns In case it failed the Error containing the reason
65
- * @deprecated Use "API.actuatorSetState" instead
65
+ * @deprecated Use {@link API.actuatorSetState} instead
66
66
  * TODO: Remove deprecated API method
67
67
  */
68
68
  static setActuator(deviceId: string, state: boolean, timeout?: number): Error | null;
@@ -81,7 +81,7 @@ export declare class API {
81
81
  * @param brightness - The desired brightness
82
82
  * @param transitionTime - The transition time during turnOn/turnOff
83
83
  * @returns In case it failed the Error containing the reason
84
- * @deprecated Use "API.dimmerSetLight" instead
84
+ * @deprecated Use {@link API.dimmerSetLight} instead
85
85
  * TODO: Remove deprecated API method
86
86
  */
87
87
  static setDimmer(deviceId: string, state: boolean, timeout?: number, brightness?: number, transitionTime?: number): Error | null;
@@ -102,7 +102,7 @@ export declare class API {
102
102
  * @param color - The desired color in 6 digit hex Code
103
103
  * @param colorTemp - The desired color Temperature (0 = more White)
104
104
  * @returns In case it failed the Error containing the reason
105
- * @deprecated Use "API.ledSetLight" instead
105
+ * @deprecated Use {@link API.ledSetLight} instead
106
106
  * TODO: Remove deprecated API method
107
107
  */
108
108
  static setLedLamp(deviceId: string, state: boolean, timeout?: number, brightness?: number, transitionTime?: number, color?: string, colorTemp?: number): Error | null;
@@ -119,7 +119,7 @@ export declare class API {
119
119
  * @param deviceId - The device Id of the shutter
120
120
  * @param level - The desired new level (0 being open, 100 being closed)
121
121
  * @returns Error if there is no shutter with the given id
122
- * @deprecated Use "API.shutterSetLevel" instead
122
+ * @deprecated Use {@link API.shutterSetLevel} instead
123
123
  * TODO: Remove deprecated API method
124
124
  */
125
125
  static setShutter(deviceId: string, level: number): Error | null;
@@ -162,8 +162,8 @@ export declare class API {
162
162
  * Lifts a previously started Block of automatic
163
163
  * @param deviceId - The target device
164
164
  * @returns In case it failed the Error containing the reason
165
- * @deprecated Use "API.blockAutomaticLiftAutomaticBlock" instead
166
- * TODO: Remove deprecated API method
165
+ * @deprecated Use {@link API.blockAutomaticLiftAutomaticBlock} instead
166
+ * TODO: V4 Remove deprecated API method
167
167
  */
168
168
  static liftAutomaticBlock(deviceId: string): Error | null;
169
169
  /**
@@ -179,7 +179,7 @@ export declare class API {
179
179
  * @param duration - The duration in ms for which the device should remain in current state
180
180
  * @param onCollision - The desired Collision Solving strategy, in case the automatic being blocked already
181
181
  * @returns In case it failed the Error containing the reason
182
- * @deprecated Use "API.blockAutomaticDisable" instead
182
+ * @deprecated Use {@link API.blockAutomaticSetBlock} instead
183
183
  * TODO: Remove deprecated API method
184
184
  */
185
185
  static blockAutomatic(deviceId: string, duration: number, onCollision?: CollisionSolving): Error | null;
@@ -23,7 +23,7 @@ class API {
23
23
  if (!d.deviceCapabilities.includes(DeviceCapability_1.DeviceCapability.scene)) {
24
24
  return new Error(`Device with ID ${deviceId} is no scene`);
25
25
  }
26
- d.log(models_1.LogLevel.Info, `API Call to end this.`);
26
+ d.log(models_1.LogLevel.Info, 'API Call to end this.');
27
27
  d.endScene();
28
28
  return null;
29
29
  }
@@ -50,7 +50,7 @@ class API {
50
50
  if (d === undefined) {
51
51
  log_service_1.ServerLogService.writeLog(models_1.LogLevel.Warn, `Api.getDevice() --> "${id}" not found`);
52
52
  }
53
- return devices_1.Devices.alLDevices[id];
53
+ return d;
54
54
  }
55
55
  // TODO: Missing Comment
56
56
  static getGroup(id) {
@@ -118,11 +118,11 @@ class API {
118
118
  * @param state - The desired new state
119
119
  * @param timeout - Desired time after which this should be reverted to normal state
120
120
  * @returns In case it failed the Error containing the reason
121
- * @deprecated Use "API.lampSetLight" instead
121
+ * @deprecated Use {@link API.lampSetLight} instead
122
122
  * TODO: Remove deprecated API method
123
123
  */
124
124
  static setLamp(deviceId, state, timeout = 60 * 60 * 1000) {
125
- return this.lampSetLight(deviceId, new models_1.LampSetLightCommand(models_1.CommandSource.API, state, '', timeout));
125
+ return this.lampSetLight(deviceId, new models_1.LampSetLightCommand(models_1.CommandSource.API, state, '', new models_1.BlockAutomaticCommand(models_1.CommandSource.API, timeout)));
126
126
  }
127
127
  /**
128
128
  * Changes the status of a given Lamp
@@ -138,7 +138,7 @@ class API {
138
138
  if (!d.deviceCapabilities.includes(DeviceCapability_1.DeviceCapability.lamp)) {
139
139
  return new Error(`Device with ID ${deviceId} is no Lamp`);
140
140
  }
141
- d.log(models_1.LogLevel.Info, `Received LampSetLightCommand API call.`);
141
+ d.log(models_1.LogLevel.Info, 'Received LampSetLightCommand API call.');
142
142
  d.setLight(c);
143
143
  return null;
144
144
  }
@@ -148,11 +148,11 @@ class API {
148
148
  * @param state - The desired new state
149
149
  * @param timeout - Desired time after which this should be reverted to automatic state
150
150
  * @returns In case it failed the Error containing the reason
151
- * @deprecated Use "API.actuatorSetState" instead
151
+ * @deprecated Use {@link API.actuatorSetState} instead
152
152
  * TODO: Remove deprecated API method
153
153
  */
154
154
  static setActuator(deviceId, state, timeout = 60 * 60 * 1000) {
155
- return this.actuatorSetState(deviceId, new models_1.ActuatorSetStateCommand(models_1.CommandSource.API, state, '', timeout));
155
+ return this.actuatorSetState(deviceId, new models_1.ActuatorSetStateCommand(models_1.CommandSource.API, state, '', new models_1.BlockAutomaticCommand(models_1.CommandSource.API, timeout)));
156
156
  }
157
157
  /**
158
158
  * Changes the status of a given actuator
@@ -168,7 +168,7 @@ class API {
168
168
  if (!d.deviceCapabilities.includes(DeviceCapability_1.DeviceCapability.actuator)) {
169
169
  return new Error(`Device with ID ${deviceId} is no actuator`);
170
170
  }
171
- d.log(models_1.LogLevel.Info, `Received ActuatorSetStateCommand API call.`);
171
+ d.log(models_1.LogLevel.Info, 'Received ActuatorSetStateCommand API call.');
172
172
  d.setActuator(c);
173
173
  return null;
174
174
  }
@@ -180,11 +180,11 @@ class API {
180
180
  * @param brightness - The desired brightness
181
181
  * @param transitionTime - The transition time during turnOn/turnOff
182
182
  * @returns In case it failed the Error containing the reason
183
- * @deprecated Use "API.dimmerSetLight" instead
183
+ * @deprecated Use {@link API.dimmerSetLight} instead
184
184
  * TODO: Remove deprecated API method
185
185
  */
186
186
  static setDimmer(deviceId, state, timeout, brightness, transitionTime) {
187
- return this.dimmerSetLight(deviceId, new models_1.DimmerSetLightCommand(models_1.CommandSource.API, state, '', timeout, brightness, transitionTime));
187
+ return this.dimmerSetLight(deviceId, new models_1.DimmerSetLightCommand(models_1.CommandSource.API, state, '', new models_1.BlockAutomaticCommand(models_1.CommandSource.API, timeout), brightness, transitionTime));
188
188
  }
189
189
  /**
190
190
  * Changes the status of the given dimmer
@@ -200,7 +200,7 @@ class API {
200
200
  if (!d.deviceCapabilities.includes(DeviceCapability_1.DeviceCapability.dimmablelamp)) {
201
201
  return new Error(`Device with ID ${deviceId} is no dimmablelamp`);
202
202
  }
203
- d.log(models_1.LogLevel.Info, `Received dimmerSetLight API call.`);
203
+ d.log(models_1.LogLevel.Info, 'Received dimmerSetLight API call.');
204
204
  d.setLight(command);
205
205
  return null;
206
206
  }
@@ -214,11 +214,11 @@ class API {
214
214
  * @param color - The desired color in 6 digit hex Code
215
215
  * @param colorTemp - The desired color Temperature (0 = more White)
216
216
  * @returns In case it failed the Error containing the reason
217
- * @deprecated Use "API.ledSetLight" instead
217
+ * @deprecated Use {@link API.ledSetLight} instead
218
218
  * TODO: Remove deprecated API method
219
219
  */
220
220
  static setLedLamp(deviceId, state, timeout, brightness, transitionTime, color, colorTemp) {
221
- return this.ledSetLight(deviceId, new models_1.LedSetLightCommand(models_1.CommandSource.API, state, '', timeout, brightness, transitionTime, color, colorTemp));
221
+ return this.ledSetLight(deviceId, new models_1.LedSetLightCommand(models_1.CommandSource.API, state, '', new models_1.BlockAutomaticCommand(models_1.CommandSource.API, timeout), brightness, transitionTime, color, colorTemp));
222
222
  }
223
223
  /**
224
224
  * Changes the status of a given led-device
@@ -234,7 +234,7 @@ class API {
234
234
  if (!d.deviceCapabilities.includes(DeviceCapability_1.DeviceCapability.ledLamp)) {
235
235
  return new Error(`Device with ID ${deviceId} is no LED`);
236
236
  }
237
- d.log(models_1.LogLevel.Info, `Received ledSetLight API call.`);
237
+ d.log(models_1.LogLevel.Info, 'Received ledSetLight API call.');
238
238
  d.setLight(command);
239
239
  return null;
240
240
  }
@@ -244,7 +244,7 @@ class API {
244
244
  * @param deviceId - The device Id of the shutter
245
245
  * @param level - The desired new level (0 being open, 100 being closed)
246
246
  * @returns Error if there is no shutter with the given id
247
- * @deprecated Use "API.shutterSetLevel" instead
247
+ * @deprecated Use {@link API.shutterSetLevel} instead
248
248
  * TODO: Remove deprecated API method
249
249
  */
250
250
  static setShutter(deviceId, level) {
@@ -272,7 +272,7 @@ class API {
272
272
  else {
273
273
  d.setLevel(command);
274
274
  }
275
- d.log(models_1.LogLevel.Info, `Received shutterSetLevel API call.`);
275
+ d.log(models_1.LogLevel.Info, 'Received shutterSetLevel API call.');
276
276
  return null;
277
277
  }
278
278
  // TODO: Missing Comment
@@ -302,7 +302,7 @@ class API {
302
302
  if (!d.deviceCapabilities.includes(DeviceCapability_1.DeviceCapability.scene)) {
303
303
  return new Error(`Device with ID ${deviceId} is no scene`);
304
304
  }
305
- d.log(models_1.LogLevel.Info, `API Call to start this.`);
305
+ d.log(models_1.LogLevel.Info, 'API Call to start this.');
306
306
  d.startScene(turnOffTimeout);
307
307
  return null;
308
308
  }
@@ -315,11 +315,11 @@ class API {
315
315
  return new Error(`Device with ID ${deviceId} is no Garage Door Opener`);
316
316
  }
317
317
  if (open) {
318
- d.log(models_1.LogLevel.Info, `API Call to open Garage Door`);
318
+ d.log(models_1.LogLevel.Info, 'API Call to open Garage Door');
319
319
  d.open();
320
320
  }
321
321
  else {
322
- d.log(models_1.LogLevel.Info, `API Call to close Garage Door`);
322
+ d.log(models_1.LogLevel.Info, 'API Call to close Garage Door');
323
323
  d.close();
324
324
  }
325
325
  return null;
@@ -387,14 +387,14 @@ class API {
387
387
  // TODO: Missing Comment
388
388
  static persistAllDeviceSettings() {
389
389
  var _a;
390
- log_service_1.ServerLogService.writeLog(models_1.LogLevel.Info, `API Call to persist all device settings`);
390
+ log_service_1.ServerLogService.writeLog(models_1.LogLevel.Info, 'API Call to persist all device settings');
391
391
  for (const device of Object.values(devices_1.Devices.alLDevices)) {
392
392
  (_a = device.settings) === null || _a === void 0 ? void 0 : _a.persist(device);
393
393
  }
394
394
  }
395
395
  // TODO: Missing Comment
396
396
  static loadAllDeviceSettingsFromDb() {
397
- log_service_1.ServerLogService.writeLog(models_1.LogLevel.Info, `API Call to load all device settings`);
397
+ log_service_1.ServerLogService.writeLog(models_1.LogLevel.Info, 'API Call to load all device settings');
398
398
  for (const device of Object.values(devices_1.Devices.alLDevices)) {
399
399
  device.loadDeviceSettings();
400
400
  }
@@ -403,8 +403,8 @@ class API {
403
403
  * Lifts a previously started Block of automatic
404
404
  * @param deviceId - The target device
405
405
  * @returns In case it failed the Error containing the reason
406
- * @deprecated Use "API.blockAutomaticLiftAutomaticBlock" instead
407
- * TODO: Remove deprecated API method
406
+ * @deprecated Use {@link API.blockAutomaticLiftAutomaticBlock} instead
407
+ * TODO: V4 Remove deprecated API method
408
408
  */
409
409
  static liftAutomaticBlock(deviceId) {
410
410
  return this.blockAutomaticLiftAutomaticBlock(deviceId, new models_1.BlockAutomaticLiftBlockCommand(models_1.CommandSource.API));
@@ -423,7 +423,7 @@ class API {
423
423
  if (!d.deviceCapabilities.includes(DeviceCapability_1.DeviceCapability.blockAutomatic)) {
424
424
  return new Error(`Device with ID ${deviceId} is not capable of blocking automatic`);
425
425
  }
426
- d.log(models_1.LogLevel.Info, `Received API Call to lift automatic block.`);
426
+ d.log(models_1.LogLevel.Info, 'Received API Call to lift automatic block.');
427
427
  d.blockAutomationHandler.liftAutomaticBlock(command);
428
428
  return null;
429
429
  }
@@ -433,7 +433,7 @@ class API {
433
433
  * @param duration - The duration in ms for which the device should remain in current state
434
434
  * @param onCollision - The desired Collision Solving strategy, in case the automatic being blocked already
435
435
  * @returns In case it failed the Error containing the reason
436
- * @deprecated Use "API.blockAutomaticDisable" instead
436
+ * @deprecated Use {@link API.blockAutomaticSetBlock} instead
437
437
  * TODO: Remove deprecated API method
438
438
  */
439
439
  static blockAutomatic(deviceId, duration, onCollision) {
@@ -454,7 +454,7 @@ class API {
454
454
  if (!d.deviceCapabilities.includes(DeviceCapability_1.DeviceCapability.blockAutomatic)) {
455
455
  return new Error(`Device with ID ${deviceId} is not capable of blocking automatic`);
456
456
  }
457
- d.log(models_1.LogLevel.Info, `Received API Call to block automatic.`);
457
+ d.log(models_1.LogLevel.Info, 'Received API Call to block automatic.');
458
458
  d.blockAutomationHandler.disableAutomatic(command);
459
459
  return null;
460
460
  }
@@ -1,4 +1,8 @@
1
1
  import { BlockAutomaticCommand, BlockAutomaticLiftBlockCommand, BlockAutomaticUntilCommand, RestoreTargetAutomaticValueCommand } from '../../models';
2
+ /**
3
+ * This class is responsible for blocking automatic actions for a specific duration.
4
+ * It also provides the possibility to lift the block before the duration is over {@link BlockAutomaticLiftBlockCommand}.
5
+ */
2
6
  export declare class BlockAutomaticHandler {
3
7
  private readonly _restoreAutomatic;
4
8
  private _automaticBlockedUntil;
@@ -10,6 +14,7 @@ export declare class BlockAutomaticHandler {
10
14
  disableAutomatic(c: BlockAutomaticCommand): void;
11
15
  disableAutomaticUntil(c: BlockAutomaticUntilCommand): void;
12
16
  liftAutomaticBlock(c: BlockAutomaticLiftBlockCommand): void;
17
+ private removeRestoreTimeout;
13
18
  private updateRestoreTimeout;
14
19
  toJSON(): Partial<BlockAutomaticHandler>;
15
20
  }