hoffmation-base 3.0.0-alpha.8 → 3.0.0-alpha.81

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 (540) hide show
  1. package/lib/index.d.ts +5 -1
  2. package/lib/index.js +28 -25
  3. package/lib/liquid-pid.d.ts +2 -5
  4. package/lib/liquid-pid.js +3 -5
  5. package/lib/models/action/baseAction.d.ts +4 -0
  6. package/lib/models/action/baseAction.js +10 -0
  7. package/lib/models/action/batteryLevelChangeAction.d.ts +13 -0
  8. package/lib/models/action/batteryLevelChangeAction.js +14 -0
  9. package/lib/models/action/humiditySensorChangeAction.d.ts +16 -0
  10. package/lib/models/action/humiditySensorChangeAction.js +15 -0
  11. package/lib/models/action/index.d.ts +9 -0
  12. package/lib/models/action/index.js +29 -0
  13. package/lib/models/action/motionSensorAction.d.ts +16 -0
  14. package/lib/models/action/motionSensorAction.js +15 -0
  15. package/lib/models/action/presenceGroupAnyMovementAction.d.ts +7 -0
  16. package/lib/models/action/presenceGroupAnyMovementAction.js +13 -0
  17. package/lib/models/action/presenceGroupFirstEnterAction.d.ts +7 -0
  18. package/lib/models/action/presenceGroupFirstEnterAction.js +13 -0
  19. package/lib/models/action/presenceGroupLastLeftAction.d.ts +7 -0
  20. package/lib/models/action/presenceGroupLastLeftAction.js +13 -0
  21. package/lib/models/action/shutterPositionChangedAction.d.ts +13 -0
  22. package/lib/models/action/shutterPositionChangedAction.js +15 -0
  23. package/lib/models/action/temperatureSensorChangeAction.d.ts +16 -0
  24. package/lib/models/action/temperatureSensorChangeAction.js +15 -0
  25. package/lib/models/base64Image.d.ts +0 -1
  26. package/lib/models/blockAutomaticSettings.d.ts +23 -0
  27. package/lib/models/blockAutomaticSettings.js +19 -0
  28. package/lib/models/command/ShutterSetLevelCommand.d.ts +9 -1
  29. package/lib/models/command/ShutterSetLevelCommand.js +9 -1
  30. package/lib/models/command/WindowRestoreDesiredPositionCommand.d.ts +7 -1
  31. package/lib/models/command/WindowRestoreDesiredPositionCommand.js +7 -1
  32. package/lib/models/command/WindowSetDesiredPositionCommand.d.ts +11 -2
  33. package/lib/models/command/WindowSetDesiredPositionCommand.js +11 -2
  34. package/lib/models/command/WindowSetRolloByWeatherStatusCommand.d.ts +7 -1
  35. package/lib/models/command/WindowSetRolloByWeatherStatusCommand.js +7 -1
  36. package/lib/models/command/actuatorSetStateCommand.d.ts +18 -3
  37. package/lib/models/command/actuatorSetStateCommand.js +15 -6
  38. package/lib/models/command/actuatorToggleCommand.d.ts +7 -2
  39. package/lib/models/command/actuatorToggleCommand.js +7 -4
  40. package/lib/models/command/actuatorWriteStateToDeviceCommand.d.ts +8 -1
  41. package/lib/models/command/actuatorWriteStateToDeviceCommand.js +12 -1
  42. package/lib/models/command/baseCommand.d.ts +23 -2
  43. package/lib/models/command/baseCommand.js +41 -1
  44. package/lib/models/command/blockAutomaticCommand.d.ts +32 -0
  45. package/lib/models/command/blockAutomaticCommand.js +40 -0
  46. package/lib/models/command/blockAutomaticLiftBlockCommand.d.ts +18 -0
  47. package/lib/models/command/blockAutomaticLiftBlockCommand.js +23 -0
  48. package/lib/models/command/blockAutomaticUntilCommand.d.ts +27 -0
  49. package/lib/models/command/blockAutomaticUntilCommand.js +32 -0
  50. package/lib/models/command/commandSource.d.ts +19 -0
  51. package/lib/models/command/commandSource.js +20 -0
  52. package/lib/models/command/commandType.d.ts +11 -0
  53. package/lib/models/command/commandType.js +11 -0
  54. package/lib/models/command/dimmerSetLightCommand.d.ts +13 -8
  55. package/lib/models/command/dimmerSetLightCommand.js +20 -14
  56. package/lib/models/command/floorSetAllShuttersCommand.d.ts +6 -5
  57. package/lib/models/command/floorSetAllShuttersCommand.js +6 -5
  58. package/lib/models/command/index.d.ts +3 -0
  59. package/lib/models/command/index.js +7 -1
  60. package/lib/models/command/lampSetLightCommand.d.ts +13 -2
  61. package/lib/models/command/lampSetLightCommand.js +15 -4
  62. package/lib/models/command/lampSetTimeBasedCommand.d.ts +15 -8
  63. package/lib/models/command/lampSetTimeBasedCommand.js +9 -11
  64. package/lib/models/command/lampToggleLightCommand.d.ts +7 -6
  65. package/lib/models/command/lampToggleLightCommand.js +7 -6
  66. package/lib/models/command/ledSetLightCommand.d.ts +21 -11
  67. package/lib/models/command/ledSetLightCommand.js +27 -17
  68. package/lib/models/command/lightGroupSwitchTimeConditionalCommand.d.ts +8 -1
  69. package/lib/models/command/lightGroupSwitchTimeConditionalCommand.js +8 -1
  70. package/lib/models/command/restoreTargetAutomaticValueCommand.d.ts +7 -2
  71. package/lib/models/command/restoreTargetAutomaticValueCommand.js +7 -4
  72. package/lib/models/command/roomRestoreLightCommand.d.ts +7 -1
  73. package/lib/models/command/roomRestoreLightCommand.js +7 -1
  74. package/lib/models/command/roomRestoreShutterPositionCommand.d.ts +8 -1
  75. package/lib/models/command/roomRestoreShutterPositionCommand.js +8 -1
  76. package/lib/models/command/roomSetLightTimeBasedCommand.d.ts +5 -4
  77. package/lib/models/command/roomSetLightTimeBasedCommand.js +5 -4
  78. package/lib/models/command/shutterSunriseUpCommand.d.ts +7 -1
  79. package/lib/models/command/shutterSunriseUpCommand.js +7 -1
  80. package/lib/models/command/shutterSunsetDownCommand.d.ts +7 -1
  81. package/lib/models/command/shutterSunsetDownCommand.js +7 -1
  82. package/lib/models/command/wledSetLightCommand.d.ts +16 -2
  83. package/lib/models/command/wledSetLightCommand.js +23 -7
  84. package/lib/models/connectionCallbacks.d.ts +4 -4
  85. package/lib/models/connectionCallbacks.js +1 -0
  86. package/lib/models/deviceConfig.d.ts +3 -3
  87. package/lib/models/deviceSettings/acSettings.d.ts +23 -5
  88. package/lib/models/deviceSettings/acSettings.js +28 -8
  89. package/lib/models/deviceSettings/actuatorSettings.d.ts +13 -4
  90. package/lib/models/deviceSettings/actuatorSettings.js +19 -9
  91. package/lib/models/deviceSettings/cameraSettings.d.ts +12 -0
  92. package/lib/models/deviceSettings/cameraSettings.js +12 -0
  93. package/lib/models/deviceSettings/dachsSettings.d.ts +23 -0
  94. package/lib/models/deviceSettings/dachsSettings.js +29 -1
  95. package/lib/models/deviceSettings/deviceSettings.d.ts +10 -0
  96. package/lib/models/deviceSettings/deviceSettings.js +16 -0
  97. package/lib/models/deviceSettings/dimmerSettings.d.ts +20 -0
  98. package/lib/models/deviceSettings/dimmerSettings.js +20 -0
  99. package/lib/models/deviceSettings/garageDoorOpenerSettings.d.ts +0 -1
  100. package/lib/models/deviceSettings/garageDoorOpenerSettings.js +0 -1
  101. package/lib/models/deviceSettings/handleSettings.d.ts +9 -0
  102. package/lib/models/deviceSettings/handleSettings.js +9 -0
  103. package/lib/models/deviceSettings/heaterSettings.d.ts +21 -9
  104. package/lib/models/deviceSettings/heaterSettings.js +21 -9
  105. package/lib/models/deviceSettings/ledSettings.d.ts +66 -0
  106. package/lib/models/deviceSettings/ledSettings.js +76 -18
  107. package/lib/models/deviceSettings/motionSensorSettings.d.ts +5 -1
  108. package/lib/models/deviceSettings/motionSensorSettings.js +5 -1
  109. package/lib/models/deviceSettings/sceneSettings.d.ts +4 -0
  110. package/lib/models/deviceSettings/shutterSettings.d.ts +11 -3
  111. package/lib/models/deviceSettings/shutterSettings.js +11 -3
  112. package/lib/models/deviceSettings/sonosDeviceSettings.d.ts +4 -0
  113. package/lib/models/deviceSettings/sonosDeviceSettings.js +4 -0
  114. package/lib/models/deviceSettings/tvSettings.d.ts +4 -0
  115. package/lib/models/deviceSettings/victronDeviceSettings.d.ts +34 -0
  116. package/lib/models/deviceSettings/victronDeviceSettings.js +34 -0
  117. package/lib/models/deviceSettings/wledSettings.d.ts +48 -0
  118. package/lib/models/deviceSettings/wledSettings.js +37 -13
  119. package/lib/models/groupSettings/heatGroupSettings.d.ts +12 -1
  120. package/lib/models/groupSettings/heatGroupSettings.js +12 -1
  121. package/lib/models/iIdHolder.d.ts +18 -0
  122. package/lib/models/index.d.ts +2 -1
  123. package/lib/models/index.js +4 -1
  124. package/lib/models/objectSettings.d.ts +5 -2
  125. package/lib/models/objectSettings.js +2 -2
  126. package/lib/models/persistence/EnergyCalculation.d.ts +27 -0
  127. package/lib/models/persistence/EnergyCalculation.js +30 -4
  128. package/lib/models/persistence/index.d.ts +0 -2
  129. package/lib/models/persistence/index.js +0 -2
  130. package/lib/models/rooms/RoomBase.d.ts +12 -1
  131. package/lib/models/rooms/RoomBase.js +17 -8
  132. package/lib/models/rooms/RoomSettings/RoomInitializationSettings.d.ts +2 -1
  133. package/lib/models/rooms/RoomSettings/RoomInitializationSettings.js +2 -2
  134. package/lib/models/rooms/RoomSettings/RoomSettingsController.d.ts +10 -1
  135. package/lib/models/rooms/RoomSettings/RoomSettingsController.js +2 -2
  136. package/lib/models/rooms/RoomSettings/iRoomDefaultSettings.d.ts +53 -3
  137. package/lib/models/rooms/RoomSettings/iRoomInitializationSettings.d.ts +10 -1
  138. package/lib/models/rooms/RoomSettings/roomDeviceAddingSettings.d.ts +4 -1
  139. package/lib/models/rooms/RoomSettings/roomDeviceAddingSettings.js +3 -0
  140. package/lib/models/rooms/RoomSettings/roomSettings.d.ts +55 -0
  141. package/lib/models/rooms/RoomSettings/roomSettings.js +55 -0
  142. package/lib/models/rooms/iRoomBase.d.ts +39 -0
  143. package/lib/models/rooms/iRoomImportEnforcer.d.ts +8 -0
  144. package/lib/models/timeCallback.d.ts +7 -0
  145. package/lib/models/timeCallback.js +16 -6
  146. package/lib/server/config/heatingMode.d.ts +2 -1
  147. package/lib/server/config/heatingMode.js +2 -1
  148. package/lib/server/config/iAsusConfig.d.ts +15 -0
  149. package/lib/server/config/iBlockAutomaticHandlerDefaults.d.ts +23 -0
  150. package/lib/server/config/iBlueIrisSettings.d.ts +14 -0
  151. package/lib/server/config/iBluetoothTrackingSettings.d.ts +9 -0
  152. package/lib/server/config/iConfig.d.ts +94 -6
  153. package/lib/server/config/iDachsSettings.d.ts +16 -0
  154. package/lib/server/config/iDaikinSettings.d.ts +17 -0
  155. package/lib/server/config/iEnergyManagerSettings.d.ts +13 -0
  156. package/lib/server/config/iEspresenseSettings.d.ts +10 -0
  157. package/lib/server/config/iGoveeSettings.d.ts +9 -0
  158. package/lib/server/config/iGoveeSettings.js +2 -0
  159. package/lib/server/config/iHeaterSettings.d.ts +8 -0
  160. package/lib/server/config/iIobrokerSettigns.d.ts +8 -0
  161. package/lib/server/config/iLogSettings.d.ts +40 -1
  162. package/lib/server/config/iMp3Settings.d.ts +10 -0
  163. package/lib/server/config/iMuellSettings.d.ts +7 -0
  164. package/lib/server/config/iNewsSettings.d.ts +13 -0
  165. package/lib/server/config/iPersistenceSettings.d.ts +10 -0
  166. package/lib/server/config/iPollySettings.d.ts +22 -0
  167. package/lib/server/config/iRestSettings.d.ts +10 -0
  168. package/lib/server/config/iSonosSettings.d.ts +14 -0
  169. package/lib/server/config/iTelegramSettings.d.ts +17 -0
  170. package/lib/server/config/iTibberSettings.d.ts +10 -0
  171. package/lib/server/config/iTimePair.d.ts +9 -0
  172. package/lib/server/config/iTimeSettings.d.ts +9 -0
  173. package/lib/server/config/iTranslationSettings.d.ts +10 -0
  174. package/lib/server/config/iUnifiConnectionOptions.d.ts +31 -0
  175. package/lib/server/config/iUnifiSettings.d.ts +8 -0
  176. package/lib/server/config/iVictronSettings.d.ts +14 -0
  177. package/lib/server/config/iWeatherSettings.d.ts +13 -0
  178. package/lib/server/config/index.d.ts +2 -0
  179. package/lib/server/devices/DeviceCapability.d.ts +1 -0
  180. package/lib/server/devices/DeviceCapability.js +1 -0
  181. package/lib/server/devices/DeviceInfo.d.ts +9 -0
  182. package/lib/server/devices/DeviceInfo.js +6 -0
  183. package/lib/server/devices/Griffe.js +1 -2
  184. package/lib/server/devices/Heizgruppen.js +2 -2
  185. package/lib/server/devices/IoBrokerBaseDevice.d.ts +34 -18
  186. package/lib/server/devices/IoBrokerBaseDevice.js +37 -21
  187. package/lib/server/devices/IoBrokerDeviceInfo.d.ts +8 -6
  188. package/lib/server/devices/IoBrokerDeviceInfo.js +50 -46
  189. package/lib/server/devices/baseDeviceInterfaces/iAcDevice.d.ts +41 -3
  190. package/lib/server/devices/baseDeviceInterfaces/iActuator.d.ts +18 -0
  191. package/lib/server/devices/baseDeviceInterfaces/iBaseDevice.d.ts +26 -1
  192. package/lib/server/devices/baseDeviceInterfaces/iBatteryDevice.d.ts +21 -4
  193. package/lib/server/devices/baseDeviceInterfaces/iBluetoothDetector.d.ts +15 -7
  194. package/lib/server/devices/baseDeviceInterfaces/iButtonSwitch.d.ts +42 -0
  195. package/lib/server/devices/baseDeviceInterfaces/iCameraDevice.d.ts +46 -3
  196. package/lib/server/devices/baseDeviceInterfaces/iDimmableLamp.d.ts +17 -2
  197. package/lib/server/devices/baseDeviceInterfaces/iEnergyManager.d.ts +36 -2
  198. package/lib/server/devices/baseDeviceInterfaces/iExcessEnergyConsumer.d.ts +30 -2
  199. package/lib/server/devices/baseDeviceInterfaces/iGarageDoorOpener.d.ts +21 -0
  200. package/lib/server/devices/baseDeviceInterfaces/iHandleSensor.d.ts +24 -0
  201. package/lib/server/devices/baseDeviceInterfaces/iHeater.d.ts +40 -5
  202. package/lib/server/devices/baseDeviceInterfaces/iHumiditySensor.d.ts +21 -2
  203. package/lib/server/devices/baseDeviceInterfaces/iIlluminationSensor.d.ts +11 -0
  204. package/lib/server/devices/baseDeviceInterfaces/iLamp.d.ts +7 -2
  205. package/lib/server/devices/baseDeviceInterfaces/iLedRgbCct.d.ts +20 -0
  206. package/lib/server/devices/baseDeviceInterfaces/iLoadMeter.d.ts +5 -0
  207. package/lib/server/devices/baseDeviceInterfaces/iMagnetSensor.d.ts +31 -0
  208. package/lib/server/devices/baseDeviceInterfaces/iMagnetSensor.js +2 -0
  209. package/lib/server/devices/baseDeviceInterfaces/iMotionSensor.d.ts +23 -3
  210. package/lib/server/devices/baseDeviceInterfaces/iRoomDevice.d.ts +6 -0
  211. package/lib/server/devices/baseDeviceInterfaces/iScene.d.ts +31 -2
  212. package/lib/server/devices/baseDeviceInterfaces/iShutter.d.ts +25 -1
  213. package/lib/server/devices/baseDeviceInterfaces/iSmokeDetectorDevice.d.ts +12 -0
  214. package/lib/server/devices/baseDeviceInterfaces/iSpeaker.d.ts +30 -0
  215. package/lib/server/devices/baseDeviceInterfaces/iTemperatureSensor.d.ts +32 -3
  216. package/lib/server/devices/baseDeviceInterfaces/iTemporaryDisableAutomatic.d.ts +13 -0
  217. package/lib/server/devices/baseDeviceInterfaces/iTvDevice.d.ts +20 -0
  218. package/lib/server/devices/baseDeviceInterfaces/iVibrationSensor.d.ts +24 -5
  219. package/lib/server/devices/baseDeviceInterfaces/index.d.ts +1 -0
  220. package/lib/server/devices/blueIris/cameraDevice.d.ts +49 -34
  221. package/lib/server/devices/blueIris/cameraDevice.js +75 -75
  222. package/lib/server/devices/button/button.d.ts +0 -1
  223. package/lib/server/devices/button/button.js +0 -4
  224. package/lib/server/devices/button/buttonCallback.d.ts +5 -0
  225. package/lib/server/devices/button/buttonCallback.js +10 -0
  226. package/lib/server/devices/button/buttonCapabilities.d.ts +12 -0
  227. package/lib/server/devices/button/buttonCapabilities.js +12 -0
  228. package/lib/server/devices/button/index.d.ts +1 -0
  229. package/lib/server/devices/button/index.js +3 -0
  230. package/lib/server/devices/dachs/dachs.d.ts +46 -11
  231. package/lib/server/devices/dachs/dachs.js +113 -23
  232. package/lib/server/devices/dachs/dachsTemperatureSensor.d.ts +22 -4
  233. package/lib/server/devices/dachs/dachsTemperatureSensor.js +23 -5
  234. package/lib/server/devices/dachs/interfaces/DachsClientOptions.d.ts +30 -0
  235. package/lib/server/devices/dachs/interfaces/KeyListEntity.d.ts +0 -8
  236. package/lib/server/devices/dachs/interfaces/KeyListEntity.js +0 -8
  237. package/lib/server/devices/dachs/interfaces/dachsInfluxDataPoint.d.ts +12 -0
  238. package/lib/server/devices/dachs/interfaces/influxDbConnectionOptions.d.ts +21 -1
  239. package/lib/server/devices/dachs/lib/dachsHttpClient.d.ts +5 -2
  240. package/lib/server/devices/dachs/lib/dachsHttpClient.js +5 -4
  241. package/lib/server/devices/device-cluster.d.ts +4 -1
  242. package/lib/server/devices/device-cluster.js +9 -4
  243. package/lib/server/devices/deviceType.d.ts +5 -0
  244. package/lib/server/devices/deviceType.js +5 -0
  245. package/lib/server/devices/deviceUpdater.d.ts +0 -3
  246. package/lib/server/devices/deviceUpdater.js +26 -4
  247. package/lib/server/devices/devices.d.ts +53 -7
  248. package/lib/server/devices/devices.js +78 -17
  249. package/lib/server/devices/espresense/detectedBluetoothDevice.d.ts +13 -0
  250. package/lib/server/devices/espresense/detectedBluetoothDevice.js +14 -1
  251. package/lib/server/devices/espresense/espresenseDevice.d.ts +31 -1
  252. package/lib/server/devices/espresense/espresenseDevice.js +28 -4
  253. package/lib/server/devices/espresense/trackedDistanceData.d.ts +12 -0
  254. package/lib/server/devices/espresense/trackedDistanceData.js +3 -0
  255. package/lib/server/devices/espresense/trilateration.d.ts +7 -0
  256. package/lib/server/devices/espresense/trilateration.js +7 -0
  257. package/lib/server/devices/espresense/trilaterationBasePoint.d.ts +6 -0
  258. package/lib/server/devices/espresense/trilaterationBasePoint.js +3 -0
  259. package/lib/server/devices/espresense/trilaterationPoint.d.ts +1 -1
  260. package/lib/server/devices/espresense/trilaterationPoint.js +3 -1
  261. package/lib/server/devices/groups/Window.d.ts +14 -3
  262. package/lib/server/devices/groups/Window.js +28 -11
  263. package/lib/server/devices/groups/base-group.d.ts +4 -0
  264. package/lib/server/devices/groups/base-group.js +3 -0
  265. package/lib/server/devices/groups/heatGroup.d.ts +8 -6
  266. package/lib/server/devices/groups/heatGroup.js +11 -11
  267. package/lib/server/devices/groups/lightGroup.d.ts +10 -2
  268. package/lib/server/devices/groups/lightGroup.js +20 -39
  269. package/lib/server/devices/groups/presenceGroup.d.ts +17 -6
  270. package/lib/server/devices/groups/presenceGroup.js +73 -63
  271. package/lib/server/devices/groups/tasterGroup.js +6 -6
  272. package/lib/server/devices/groups/windowGroup.d.ts +16 -1
  273. package/lib/server/devices/groups/windowGroup.js +22 -7
  274. package/lib/server/devices/hmIPDevices/hmIpAccessPoint.d.ts +1 -0
  275. package/lib/server/devices/hmIPDevices/hmIpAccessPoint.js +1 -0
  276. package/lib/server/devices/hmIPDevices/hmIpBewegung.d.ts +9 -6
  277. package/lib/server/devices/hmIPDevices/hmIpBewegung.js +10 -11
  278. package/lib/server/devices/hmIPDevices/hmIpDevice.d.ts +1 -2
  279. package/lib/server/devices/hmIPDevices/hmIpDevice.js +2 -3
  280. package/lib/server/devices/hmIPDevices/hmIpGriff.d.ts +36 -5
  281. package/lib/server/devices/hmIPDevices/hmIpGriff.js +76 -33
  282. package/lib/server/devices/hmIPDevices/hmIpHeizgruppe.d.ts +25 -6
  283. package/lib/server/devices/hmIPDevices/hmIpHeizgruppe.js +27 -14
  284. package/lib/server/devices/hmIPDevices/hmIpHeizung.d.ts +13 -3
  285. package/lib/server/devices/hmIPDevices/hmIpHeizung.js +33 -12
  286. package/lib/server/devices/hmIPDevices/hmIpLampe.d.ts +7 -1
  287. package/lib/server/devices/hmIPDevices/hmIpLampe.js +11 -7
  288. package/lib/server/devices/hmIPDevices/hmIpPraezenz.d.ts +19 -9
  289. package/lib/server/devices/hmIPDevices/hmIpPraezenz.js +33 -11
  290. package/lib/server/devices/hmIPDevices/hmIpRoll.d.ts +4 -2
  291. package/lib/server/devices/hmIPDevices/hmIpRoll.js +25 -23
  292. package/lib/server/devices/hmIPDevices/hmIpTaster.d.ts +28 -4
  293. package/lib/server/devices/hmIPDevices/hmIpTaster.js +37 -8
  294. package/lib/server/devices/hmIPDevices/hmIpTherm.d.ts +11 -1
  295. package/lib/server/devices/hmIPDevices/hmIpTherm.js +26 -5
  296. package/lib/server/devices/hmIPDevices/hmIpTuer.d.ts +9 -1
  297. package/lib/server/devices/hmIPDevices/hmIpTuer.js +17 -4
  298. package/lib/server/devices/hmIPDevices/hmIpWippe.d.ts +27 -0
  299. package/lib/server/devices/hmIPDevices/hmIpWippe.js +3 -0
  300. package/lib/server/devices/iDeviceUpdater.d.ts +14 -0
  301. package/lib/server/devices/index.d.ts +8 -2
  302. package/lib/server/devices/index.js +11 -2
  303. package/lib/server/devices/jsObject/jsObjectEnergyManager.d.ts +5 -1
  304. package/lib/server/devices/jsObject/jsObjectEnergyManager.js +9 -3
  305. package/lib/server/devices/nameAmountValuePair.d.ts +5 -0
  306. package/lib/server/devices/nameAmountValuePair.js +10 -0
  307. package/lib/server/devices/scene/room-scene.d.ts +23 -7
  308. package/lib/server/devices/scene/room-scene.js +18 -4
  309. package/lib/server/devices/sharedFunctions/lampUtils.d.ts +11 -2
  310. package/lib/server/devices/sharedFunctions/lampUtils.js +79 -25
  311. package/lib/server/devices/shelly/index.d.ts +1 -0
  312. package/lib/server/devices/shelly/index.js +3 -1
  313. package/lib/server/devices/shelly/shellyActuator.d.ts +33 -0
  314. package/lib/server/devices/shelly/shellyActuator.js +84 -0
  315. package/lib/server/devices/shelly/shellyDevice.d.ts +2 -1
  316. package/lib/server/devices/shelly/shellyDevice.js +2 -1
  317. package/lib/server/devices/shelly/shellyTrv.d.ts +37 -18
  318. package/lib/server/devices/shelly/shellyTrv.js +66 -45
  319. package/lib/server/devices/smartGarden/index.d.ts +6 -0
  320. package/lib/server/devices/smartGarden/index.js +22 -0
  321. package/lib/server/devices/smartGarden/smartGardenDevice.d.ts +33 -0
  322. package/lib/server/devices/smartGarden/smartGardenDevice.js +98 -0
  323. package/lib/server/devices/smartGarden/smartGardenDeviceRegistrationInfo.d.ts +9 -0
  324. package/lib/server/devices/smartGarden/smartGardenDeviceRegistrationInfo.js +13 -0
  325. package/lib/server/devices/smartGarden/smartGardenMower.d.ts +35 -0
  326. package/lib/server/devices/smartGarden/smartGardenMower.js +107 -0
  327. package/lib/server/devices/smartGarden/smartGardenSensor.d.ts +42 -0
  328. package/lib/server/devices/smartGarden/smartGardenSensor.js +119 -0
  329. package/lib/server/devices/smartGarden/smartGardenService.d.ts +7 -0
  330. package/lib/server/devices/smartGarden/smartGardenService.js +52 -0
  331. package/lib/server/devices/smartGarden/smartGardenValve.d.ts +36 -0
  332. package/lib/server/devices/smartGarden/smartGardenValve.js +105 -0
  333. package/lib/server/devices/tuya/tuyaDevice.d.ts +2 -1
  334. package/lib/server/devices/tuya/tuyaDevice.js +2 -1
  335. package/lib/server/devices/tuya/tuyaGarageOpener.d.ts +3 -0
  336. package/lib/server/devices/tuya/tuyaGarageOpener.js +3 -0
  337. package/lib/server/devices/tv/samsungTv.d.ts +1 -0
  338. package/lib/server/devices/tv/samsungTv.js +1 -0
  339. package/lib/server/devices/tv/tvDevice.d.ts +7 -1
  340. package/lib/server/devices/tv/tvDevice.js +4 -3
  341. package/lib/server/devices/velux/index.d.ts +4 -0
  342. package/lib/server/devices/velux/index.js +11 -0
  343. package/lib/server/devices/velux/veluxDevice.d.ts +13 -0
  344. package/lib/server/devices/velux/veluxDevice.js +43 -0
  345. package/lib/server/devices/velux/veluxDeviceRegistrationInfo.d.ts +9 -0
  346. package/lib/server/devices/velux/veluxDeviceRegistrationInfo.js +13 -0
  347. package/lib/server/devices/velux/veluxService.d.ts +7 -0
  348. package/lib/server/devices/velux/veluxService.js +44 -0
  349. package/lib/server/devices/velux/veluxShutter.d.ts +27 -0
  350. package/lib/server/devices/velux/veluxShutter.js +122 -0
  351. package/lib/server/devices/wledDevice.d.ts +15 -3
  352. package/lib/server/devices/wledDevice.js +42 -16
  353. package/lib/server/devices/zigbee/BaseDevices/ZigbeeActuator.d.ts +17 -4
  354. package/lib/server/devices/zigbee/BaseDevices/ZigbeeActuator.js +30 -15
  355. package/lib/server/devices/zigbee/BaseDevices/index.d.ts +1 -0
  356. package/lib/server/devices/zigbee/BaseDevices/index.js +3 -0
  357. package/lib/server/devices/zigbee/BaseDevices/zigbeeDevice.d.ts +4 -5
  358. package/lib/server/devices/zigbee/BaseDevices/zigbeeDevice.js +8 -17
  359. package/lib/server/devices/zigbee/BaseDevices/zigbeeDimmer.d.ts +10 -25
  360. package/lib/server/devices/zigbee/BaseDevices/zigbeeDimmer.js +25 -60
  361. package/lib/server/devices/zigbee/BaseDevices/zigbeeHeater.d.ts +34 -14
  362. package/lib/server/devices/zigbee/BaseDevices/zigbeeHeater.js +60 -34
  363. package/lib/server/devices/zigbee/BaseDevices/zigbeeLamp.d.ts +16 -0
  364. package/lib/server/devices/zigbee/BaseDevices/zigbeeLamp.js +35 -0
  365. package/lib/server/devices/zigbee/BaseDevices/zigbeeLedRGBCCT.d.ts +7 -7
  366. package/lib/server/devices/zigbee/BaseDevices/zigbeeLedRGBCCT.js +14 -14
  367. package/lib/server/devices/zigbee/BaseDevices/zigbeeMagnetContact.d.ts +26 -7
  368. package/lib/server/devices/zigbee/BaseDevices/zigbeeMagnetContact.js +52 -22
  369. package/lib/server/devices/zigbee/BaseDevices/zigbeeMotionSensor.d.ts +30 -15
  370. package/lib/server/devices/zigbee/BaseDevices/zigbeeMotionSensor.js +62 -38
  371. package/lib/server/devices/zigbee/BaseDevices/zigbeeShutter.d.ts +12 -4
  372. package/lib/server/devices/zigbee/BaseDevices/zigbeeShutter.js +28 -19
  373. package/lib/server/devices/zigbee/BaseDevices/zigbeeSwitch.d.ts +9 -1
  374. package/lib/server/devices/zigbee/BaseDevices/zigbeeSwitch.js +8 -1
  375. package/lib/server/devices/zigbee/zigbeeAqaraMagnetContact.d.ts +1 -0
  376. package/lib/server/devices/zigbee/zigbeeAqaraMagnetContact.js +1 -0
  377. package/lib/server/devices/zigbee/zigbeeAqaraOpple3Switch.d.ts +16 -0
  378. package/lib/server/devices/zigbee/zigbeeAqaraOpple3Switch.js +16 -0
  379. package/lib/server/devices/zigbee/zigbeeAquaraMotion.d.ts +6 -0
  380. package/lib/server/devices/zigbee/zigbeeAquaraMotion.js +7 -3
  381. package/lib/server/devices/zigbee/zigbeeAquaraVibra.d.ts +58 -11
  382. package/lib/server/devices/zigbee/zigbeeAquaraVibra.js +115 -27
  383. package/lib/server/devices/zigbee/zigbeeAquaraWater.d.ts +28 -9
  384. package/lib/server/devices/zigbee/zigbeeAquaraWater.js +54 -30
  385. package/lib/server/devices/zigbee/zigbeeBlitzShp.d.ts +15 -5
  386. package/lib/server/devices/zigbee/zigbeeBlitzShp.js +22 -14
  387. package/lib/server/devices/zigbee/zigbeeEuroHeater.d.ts +10 -4
  388. package/lib/server/devices/zigbee/zigbeeEuroHeater.js +16 -10
  389. package/lib/server/devices/zigbee/zigbeeHeimanSmoke.d.ts +34 -8
  390. package/lib/server/devices/zigbee/zigbeeHeimanSmoke.js +58 -20
  391. package/lib/server/devices/zigbee/zigbeeIkeaShutter.d.ts +1 -0
  392. package/lib/server/devices/zigbee/zigbeeIkeaShutter.js +2 -1
  393. package/lib/server/devices/zigbee/zigbeeIkeaSteckdose.d.ts +2 -0
  394. package/lib/server/devices/zigbee/zigbeeIkeaSteckdose.js +3 -1
  395. package/lib/server/devices/zigbee/zigbeeIlluActuator.d.ts +1 -2
  396. package/lib/server/devices/zigbee/zigbeeIlluActuator.js +2 -11
  397. package/lib/server/devices/zigbee/zigbeeIlluDimmer.d.ts +1 -1
  398. package/lib/server/devices/zigbee/zigbeeIlluDimmer.js +1 -1
  399. package/lib/server/devices/zigbee/zigbeeIlluLampe.d.ts +3 -10
  400. package/lib/server/devices/zigbee/zigbeeIlluLampe.js +3 -32
  401. package/lib/server/devices/zigbee/zigbeeIlluLedRGBCCT.d.ts +1 -1
  402. package/lib/server/devices/zigbee/zigbeeIlluLedRGBCCT.js +1 -1
  403. package/lib/server/devices/zigbee/zigbeeIlluShutter.d.ts +1 -0
  404. package/lib/server/devices/zigbee/zigbeeIlluShutter.js +5 -4
  405. package/lib/server/devices/zigbee/zigbeeInnr142C.d.ts +1 -1
  406. package/lib/server/devices/zigbee/zigbeeInnr142C.js +1 -1
  407. package/lib/server/devices/zigbee/zigbeeLinkindLedRgbCct.d.ts +1 -1
  408. package/lib/server/devices/zigbee/zigbeeLinkindLedRgbCct.js +1 -1
  409. package/lib/server/devices/zigbee/zigbeeOsramDimmer.d.ts +1 -1
  410. package/lib/server/devices/zigbee/zigbeeOsramDimmer.js +1 -1
  411. package/lib/server/devices/zigbee/zigbeeSMaBiTMagnetContact.d.ts +1 -0
  412. package/lib/server/devices/zigbee/zigbeeSMaBiTMagnetContact.js +1 -0
  413. package/lib/server/devices/zigbee/zigbeeSonoffMotion.d.ts +1 -0
  414. package/lib/server/devices/zigbee/zigbeeSonoffMotion.js +1 -0
  415. package/lib/server/devices/zigbee/zigbeeSonoffTemp.d.ts +34 -9
  416. package/lib/server/devices/zigbee/zigbeeSonoffTemp.js +50 -13
  417. package/lib/server/devices/zigbee/zigbeeTuyaValve.d.ts +10 -3
  418. package/lib/server/devices/zigbee/zigbeeTuyaValve.js +11 -6
  419. package/lib/server/devices/zigbee/zigbeeUbisysActuator.d.ts +9 -2
  420. package/lib/server/devices/zigbee/zigbeeUbisysActuator.js +10 -8
  421. package/lib/server/devices/zigbee/zigbeeUbisysLampe.d.ts +8 -9
  422. package/lib/server/devices/zigbee/zigbeeUbisysLampe.js +14 -24
  423. package/lib/server/devices/zigbee/zigbeeUbisysShutter.d.ts +1 -0
  424. package/lib/server/devices/zigbee/zigbeeUbisysShutter.js +2 -1
  425. package/lib/server/ioBroker/connection.d.ts +21 -22
  426. package/lib/server/ioBroker/connection.js +37 -28
  427. package/lib/server/ioBroker/ioBroker.main.d.ts +3 -0
  428. package/lib/server/ioBroker/ioBroker.main.js +12 -5
  429. package/lib/server/ioBroker/iobrokerConnectionLogging.d.ts +3 -0
  430. package/lib/server/ioBroker/iobrokerConnectionLogging.js +4 -0
  431. package/lib/server/ioBroker/socketIOConnectOptions.d.ts +2 -2
  432. package/lib/server/ioBroker/socketIOConnectOptions.js +1 -0
  433. package/lib/server/ioBroker/socketIOVisCommand.d.ts +5 -1
  434. package/lib/server/ioBroker/socketIOVisCommand.js +1 -0
  435. package/lib/server/services/ShutterService.js +7 -6
  436. package/lib/server/services/Sonos/OwnSonosDevices.d.ts +3 -0
  437. package/lib/server/services/Sonos/OwnSonosDevices.js +3 -0
  438. package/lib/server/services/Sonos/mp3-server.d.ts +3 -1
  439. package/lib/server/services/Sonos/mp3-server.js +3 -1
  440. package/lib/server/services/Sonos/own-sonos-device.d.ts +4 -1
  441. package/lib/server/services/Sonos/own-sonos-device.js +4 -4
  442. package/lib/server/services/Sonos/polly-service.d.ts +7 -1
  443. package/lib/server/services/Sonos/polly-service.js +10 -8
  444. package/lib/server/services/Sonos/sonos-service.d.ts +1 -5
  445. package/lib/server/services/Sonos/sonos-service.js +18 -17
  446. package/lib/server/services/Telegram/telegram-Commands.js +5 -5
  447. package/lib/server/services/Telegram/telegram-service.d.ts +2 -1
  448. package/lib/server/services/Telegram/telegram-service.js +8 -3
  449. package/lib/server/services/Translation/IRessourceObject.d.ts +13 -0
  450. package/lib/server/services/Translation/IRessourceObject.js +2 -0
  451. package/lib/server/services/Translation/iRessources.d.ts +1 -4
  452. package/lib/server/services/Translation/index.d.ts +1 -0
  453. package/lib/server/services/Translation/res.d.ts +34 -19
  454. package/lib/server/services/Translation/res.js +34 -19
  455. package/lib/server/services/ac/ac-device.d.ts +50 -9
  456. package/lib/server/services/ac/ac-device.js +115 -41
  457. package/lib/server/services/ac/daikin-service.js +4 -3
  458. package/lib/server/services/ac/own-ac-devices.d.ts +3 -0
  459. package/lib/server/services/ac/own-ac-devices.js +3 -0
  460. package/lib/server/services/ac/own-daikin-device.d.ts +25 -0
  461. package/lib/server/services/ac/own-daikin-device.js +40 -7
  462. package/lib/server/services/api/api-service.d.ts +118 -53
  463. package/lib/server/services/api/api-service.js +170 -80
  464. package/lib/server/services/blockAutomaticHandler.d.ts +13 -8
  465. package/lib/server/services/blockAutomaticHandler.js +34 -15
  466. package/lib/server/services/calendar/index.d.ts +1 -0
  467. package/lib/server/services/calendar/index.js +3 -0
  468. package/lib/server/services/calendar/muell-tonne.d.ts +11 -1
  469. package/lib/server/services/calendar/muell-tonne.js +10 -0
  470. package/lib/server/services/calendar/m/303/274ll-service.d.ts +23 -8
  471. package/lib/server/services/calendar/m/303/274ll-service.js +11 -5
  472. package/lib/server/services/calendar/name-date-pair.d.ts +5 -0
  473. package/lib/server/services/calendar/name-date-pair.js +10 -0
  474. package/lib/server/services/dbo/iPersist.d.ts +103 -0
  475. package/lib/server/services/dbo/postgreSqlPersist.d.ts +23 -0
  476. package/lib/server/services/dbo/postgreSqlPersist.js +28 -5
  477. package/lib/server/services/file-info.d.ts +5 -0
  478. package/lib/server/services/file-info.js +10 -0
  479. package/lib/server/services/govee/govee-device-data.d.ts +25 -0
  480. package/lib/server/services/govee/govee-device-data.js +2 -0
  481. package/lib/server/services/govee/govee-service.d.ts +7 -9
  482. package/lib/server/services/govee/govee-service.js +73 -48
  483. package/lib/server/services/govee/own-govee-device.d.ts +19 -17
  484. package/lib/server/services/govee/own-govee-device.js +58 -58
  485. package/lib/server/services/govee/own-govee-devices.d.ts +3 -0
  486. package/lib/server/services/govee/own-govee-devices.js +3 -0
  487. package/lib/server/services/https-service.d.ts +3 -2
  488. package/lib/server/services/https-service.js +4 -3
  489. package/lib/server/services/index.d.ts +1 -0
  490. package/lib/server/services/index.js +3 -0
  491. package/lib/server/services/log-service/index.d.ts +1 -0
  492. package/lib/server/services/log-service/index.js +3 -0
  493. package/lib/server/services/log-service/log-debug-type.d.ts +13 -0
  494. package/lib/server/services/log-service/log-debug-type.js +17 -0
  495. package/lib/server/services/log-service/log-filter-data.d.ts +21 -12
  496. package/lib/server/services/log-service/log-filter-data.js +6 -15
  497. package/lib/server/services/log-service/log-service.d.ts +17 -4
  498. package/lib/server/services/log-service/log-service.js +30 -17
  499. package/lib/server/services/news-service.d.ts +9 -7
  500. package/lib/server/services/news-service.js +14 -15
  501. package/lib/server/services/room-service/room-service.d.ts +20 -4
  502. package/lib/server/services/room-service/room-service.js +26 -10
  503. package/lib/server/services/settings-service.d.ts +6 -2
  504. package/lib/server/services/settings-service.js +3 -2
  505. package/lib/server/services/time-callback-service.js +1 -1
  506. package/lib/server/services/utils/RGB.d.ts +6 -0
  507. package/lib/server/services/utils/RGB.js +11 -0
  508. package/lib/server/services/utils/catchEmResult.d.ts +5 -0
  509. package/lib/server/services/utils/catchEmResult.js +10 -0
  510. package/lib/server/services/utils/energy-consumer-state-change.d.ts +6 -0
  511. package/lib/server/services/utils/energy-consumer-state-change.js +10 -0
  512. package/lib/server/services/utils/energy-manager-utils.d.ts +3 -14
  513. package/lib/server/services/utils/energy-manager-utils.js +2 -2
  514. package/lib/server/services/utils/iDisposeable.d.ts +6 -0
  515. package/lib/server/services/utils/index.d.ts +4 -1
  516. package/lib/server/services/utils/index.js +8 -1
  517. package/lib/server/services/utils/{ringstorage.d.ts → ringStorage.d.ts} +1 -1
  518. package/lib/server/services/utils/{ringstorage.js → ringStorage.js} +3 -3
  519. package/lib/server/services/utils/utils.d.ts +9 -14
  520. package/lib/server/services/victron/victron-device.d.ts +27 -10
  521. package/lib/server/services/victron/victron-device.js +94 -25
  522. package/lib/server/services/weather/index.d.ts +2 -0
  523. package/lib/server/services/weather/index.js +3 -0
  524. package/lib/server/services/weather/rain-next-minutes-info.d.ts +5 -0
  525. package/lib/server/services/weather/rain-next-minutes-info.js +10 -0
  526. package/lib/server/services/weather/weather-current.d.ts +0 -2
  527. package/lib/server/services/weather/weather-feelsLike.d.ts +15 -0
  528. package/lib/server/services/weather/weather-response.d.ts +16 -0
  529. package/lib/server/services/weather/weather-response.js +2 -0
  530. package/lib/server/services/weather/weather-service.d.ts +16 -18
  531. package/lib/server/services/weather/weather-service.js +37 -22
  532. package/lib/server/services/weather/weather-temp.d.ts +21 -0
  533. package/lib/tsconfig.tsbuildinfo +1 -1
  534. package/package.json +27 -29
  535. package/lib/models/iTemperaturDataPoint.d.ts +0 -9
  536. package/lib/models/persistence/RoomDetailInfo.d.ts +0 -6
  537. package/lib/models/persistence/RoomDetailInfo.js +0 -11
  538. package/lib/models/persistence/temperaturDataPoint.d.ts +0 -10
  539. package/lib/models/persistence/temperaturDataPoint.js +0 -14
  540. /package/lib/{models/iTemperaturDataPoint.js → server/config/iBlockAutomaticHandlerDefaults.js} +0 -0
@@ -45,7 +45,12 @@ var DeviceType;
45
45
  DeviceType[DeviceType["JsEnergyManager"] = 301] = "JsEnergyManager";
46
46
  DeviceType[DeviceType["RoomScene"] = 401] = "RoomScene";
47
47
  DeviceType[DeviceType["ShellyTrv"] = 402] = "ShellyTrv";
48
+ DeviceType[DeviceType["ShellyActuator"] = 403] = "ShellyActuator";
48
49
  DeviceType[DeviceType["TuyaGarageDoorOpener"] = 501] = "TuyaGarageDoorOpener";
50
+ DeviceType[DeviceType["SmartGardenValve"] = 601] = "SmartGardenValve";
51
+ DeviceType[DeviceType["SmartGardenMower"] = 602] = "SmartGardenMower";
52
+ DeviceType[DeviceType["SmartGardenSensor"] = 603] = "SmartGardenSensor";
53
+ DeviceType[DeviceType["VeluxShutter"] = 701] = "VeluxShutter";
49
54
  DeviceType[DeviceType["WledDevice"] = 1001] = "WledDevice";
50
55
  DeviceType[DeviceType["GoveeLed"] = 1002] = "GoveeLed";
51
56
  DeviceType[DeviceType["Daikin"] = 2001] = "Daikin";
@@ -1,8 +1,5 @@
1
1
  import { IDeviceUpdater } from './iDeviceUpdater';
2
- import { Devices } from './devices';
3
2
  export declare class DeviceUpdater implements IDeviceUpdater {
4
- devices: Devices;
5
- constructor(pDevices: Devices);
6
3
  updateObject(pId: string, pObj: ioBroker.Object): void;
7
4
  updateState(id: string, state: ioBroker.State, initial?: boolean): void;
8
5
  }
@@ -7,9 +7,6 @@ const devices_1 = require("./devices");
7
7
  const mqtt_1 = require("./mqtt");
8
8
  const IoBrokerDeviceInfo_1 = require("./IoBrokerDeviceInfo");
9
9
  class DeviceUpdater {
10
- constructor(pDevices) {
11
- this.devices = pDevices;
12
- }
13
10
  updateObject(pId, pObj) {
14
11
  const idSplit = IoBrokerDeviceInfo_1.IoBrokerDeviceInfo.idSplitter(pId);
15
12
  if (idSplit.length < 2)
@@ -40,8 +37,33 @@ class DeviceUpdater {
40
37
  classifier = devices_1.Devices.IDENTIFIER_ZIGBEE;
41
38
  devId = idSplit[2].substring(2);
42
39
  }
43
- const device = devices_1.Devices.alLDevices[`${classifier}-${devId}`];
40
+ else if (idSplit[0] == devices_1.Devices.IDENTIFIER_SMART_GARDEN) {
41
+ if (idSplit[1] === 'admin' ||
42
+ idSplit.length < 4 ||
43
+ idSplit[2].indexOf('LOCATION') !== 0 ||
44
+ idSplit[3].indexOf('DEVICE') !== 0) {
45
+ // This is no update for a smartgarden device
46
+ return;
47
+ }
48
+ classifier = devices_1.Devices.IDENTIFIER_SMART_GARDEN;
49
+ devId = idSplit[3].replace(/-2D/g, '-');
50
+ }
51
+ else if (idSplit[0] == devices_1.Devices.IDENTIFIER_VELUX) {
52
+ if (idSplit[1] === 'admin' || idSplit[2].indexOf('products') !== 0) {
53
+ // This is no update for a velux device
54
+ return;
55
+ }
56
+ classifier = devices_1.Devices.IDENTIFIER_VELUX;
57
+ devId = idSplit[3];
58
+ }
59
+ const allDevicesKey = `${classifier}-${devId}`;
60
+ const device = services_1.API.getDevice(allDevicesKey, false);
44
61
  if (typeof device === 'undefined' || device.update === undefined) {
62
+ // classifier == Devices.IDENTIFIER_SMART_GARDEN &&
63
+ // ServerLogService.writeLog(
64
+ // LogLevel.Warn,
65
+ // `deviceUpdater.updateState('${id}', ${JSON.stringify(state)}'): Device ${allDevicesKey} type is "${typeof device}"`,
66
+ // );
45
67
  return;
46
68
  }
47
69
  try {
@@ -3,18 +3,62 @@ import { iBaseDevice, iEnergyManager, iTemperatureSensor } from './baseDeviceInt
3
3
  import { Dachs } from './dachs';
4
4
  import { iConfig } from '../config';
5
5
  export declare class Devices {
6
- static IDENTIFIER_HOMEMATIC: string;
7
- static IDENTIFIER_JS: string;
8
- static IDENTIFIER_Shelly: string;
9
- static IDENTIFIER_TUYA: string;
10
- static IDENTIFIER_ZIGBEE: string;
11
- static IDENTIFIER_ZIGBEE2MQTT: string;
12
- static IDENTIFIER_WLED: string;
6
+ /**
7
+ * A constant for the identifier of HM-IP Adapter devices
8
+ */
9
+ static readonly IDENTIFIER_HOMEMATIC: string;
10
+ /**
11
+ * A constant for the identifier of JavaScript Adapter devices
12
+ */
13
+ static readonly IDENTIFIER_JS: string;
14
+ /**
15
+ * A constant for the identifier of Shelly Adapter devices
16
+ */
17
+ static readonly IDENTIFIER_Shelly: string;
18
+ /**
19
+ * A constant for the identifier of Tuya Adapter devices
20
+ */
21
+ static readonly IDENTIFIER_TUYA: string;
22
+ /**
23
+ * A constant for the identifier of Zigbee Adapter devices
24
+ */
25
+ static readonly IDENTIFIER_ZIGBEE: string;
26
+ /**
27
+ * A constant for the identifier of Zigbee2Mqtt Adapter devices
28
+ */
29
+ static readonly IDENTIFIER_ZIGBEE2MQTT: string;
30
+ /**
31
+ * A constant for the identifier of WLED Adapter devices
32
+ */
33
+ static readonly IDENTIFIER_WLED: string;
34
+ /**
35
+ * A constant for the identifier of SmartGarden devices.
36
+ */
37
+ static readonly IDENTIFIER_SMART_GARDEN: string;
38
+ /**
39
+ * A constant for the identifier of Velux Adapter devices.
40
+ */
41
+ static readonly IDENTIFIER_VELUX: string;
42
+ /**
43
+ * A Map containing all devices
44
+ */
13
45
  static alLDevices: {
14
46
  [id: string]: iBaseDevice;
15
47
  };
48
+ /**
49
+ * A reference to globally active energy manager
50
+ * @default undefined (no Energy-Manager)
51
+ */
16
52
  static energymanager?: iEnergyManager;
53
+ /**
54
+ * A reference to the Dachs device
55
+ * @default undefined (no Dachs CHP)
56
+ */
17
57
  static dachs?: Dachs;
58
+ /**
59
+ * A reference to the temperature sensor measuring the warm water temperature
60
+ * @default undefined (no warm water temperature sensor)
61
+ */
18
62
  static temperatureWarmWater?: iTemperatureSensor;
19
63
  constructor(pDeviceData: {
20
64
  [id: string]: deviceConfig;
@@ -25,6 +69,8 @@ export declare class Devices {
25
69
  private static processShellyDevice;
26
70
  private static processTuyaDevice;
27
71
  private static processZigbeeDevice;
72
+ private static processVeluxDevice;
73
+ private static processSmartGardenDevice;
28
74
  private static processWledDevice;
29
75
  private static processHMIPDevice;
30
76
  private static createEnergyManager;
@@ -12,22 +12,27 @@ const wledDevice_1 = require("./wledDevice");
12
12
  const DeviceCapability_1 = require("./DeviceCapability");
13
13
  const shelly_1 = require("./shelly");
14
14
  const tuya_1 = require("./tuya");
15
+ const smartGarden_1 = require("./smartGarden");
16
+ const velux_1 = require("./velux");
15
17
  class Devices {
16
18
  constructor(pDeviceData, pRoomImportEnforcer, config) {
17
19
  var _a;
18
20
  // This forces import of rooms at correct timing, to allow devices to land in proper rooms.
19
21
  pRoomImportEnforcer === null || pRoomImportEnforcer === void 0 ? void 0 : pRoomImportEnforcer.addRoomConstructor();
20
- services_1.ServerLogService.writeLog(models_1.LogLevel.Info, `Constructing devices now`);
22
+ services_1.ServerLogService.writeLog(models_1.LogLevel.Info, 'Constructing devices now');
21
23
  for (const cID in pDeviceData) {
22
24
  const cDevConf = pDeviceData[cID];
23
- if (!cDevConf.common ||
24
- !cDevConf.common.name ||
25
- typeof cDevConf.common.name === 'object' ||
26
- !cDevConf.type ||
27
- cDevConf.type === 'channel') {
25
+ if (!cDevConf.common || !cDevConf.common.name || typeof cDevConf.common.name === 'object' || !cDevConf.type) {
28
26
  continue;
29
27
  }
30
28
  const cName = cDevConf.common.name;
29
+ if (cDevConf.type === 'channel') {
30
+ // Velux has the name in the root channel of a device
31
+ if (cName.indexOf('00-Velux') === 0) {
32
+ Devices.processVeluxDevice(cDevConf);
33
+ }
34
+ continue;
35
+ }
31
36
  if (cName.indexOf('00-HmIP') === 0) {
32
37
  Devices.processHMIPDevice(cDevConf);
33
38
  }
@@ -43,10 +48,13 @@ class Devices {
43
48
  else if (cName.indexOf('00-Tuya') === 0) {
44
49
  Devices.processTuyaDevice(cDevConf);
45
50
  }
51
+ else if (cDevConf.type === 'device' && cName.indexOf('DEVICE_') === 0 && cID.indexOf('smartgarden') === 0) {
52
+ Devices.processSmartGardenDevice(cDevConf);
53
+ }
46
54
  else if (cName.indexOf('00-EnergyManager') === 0 &&
47
55
  cDevConf.type !== 'folder' &&
48
56
  !((_a = config === null || config === void 0 ? void 0 : config.energyManager) === null || _a === void 0 ? void 0 : _a.disableJsEnergyManager)) {
49
- services_1.ServerLogService.writeLog(models_1.LogLevel.Info, `Found Energy-Manager in Device json.`);
57
+ services_1.ServerLogService.writeLog(models_1.LogLevel.Info, 'Found Energy-Manager in Device json.');
50
58
  Devices.createEnergyManager(cDevConf);
51
59
  }
52
60
  }
@@ -59,20 +67,20 @@ class Devices {
59
67
  // Nothing yet
60
68
  }
61
69
  static resetDetectionsToday() {
62
- services_1.ServerLogService.writeLog(models_1.LogLevel.Info, `3 o'clock reset of motion sensors`);
70
+ services_1.ServerLogService.writeLog(models_1.LogLevel.Info, "3 o'clock reset of motion sensors");
63
71
  for (const dID in Devices.alLDevices) {
64
72
  const d = Devices.alLDevices[dID];
65
73
  if (d.deviceCapabilities.includes(DeviceCapability_1.DeviceCapability.motionSensor)) {
66
- d.log(models_1.LogLevel.Debug, `3 o'clock reset of detections`);
74
+ d.log(models_1.LogLevel.Debug, "3 o'clock reset of detections");
67
75
  d.detectionsToday = 0;
68
76
  }
69
77
  }
70
78
  }
71
79
  static getBatteryInfo() {
72
- services_1.ServerLogService.writeLog(models_1.LogLevel.Info, `Getting Battery Info`);
80
+ services_1.ServerLogService.writeLog(models_1.LogLevel.Info, 'Getting Battery Info');
73
81
  let data = [];
74
82
  const result = [
75
- `These are the battery values for each device. Device dependandt some are in volts, some in %`,
83
+ 'These are the battery values for each device. Device dependandt some are in volts, some in %',
76
84
  ];
77
85
  for (const key in this.alLDevices) {
78
86
  const d = this.alLDevices[key];
@@ -92,7 +100,7 @@ class Devices {
92
100
  return result.join('\n');
93
101
  }
94
102
  static processShellyDevice(cDevConf) {
95
- const shellyInfo = new IoBrokerDeviceInfo_1.IoBrokerDeviceInfo(cDevConf);
103
+ const shellyInfo = IoBrokerDeviceInfo_1.IoBrokerDeviceInfo.byDeviceConfig(cDevConf);
96
104
  const fullName = `${Devices.IDENTIFIER_Shelly}-${shellyInfo.devID}`;
97
105
  shellyInfo.allDevicesKey = fullName;
98
106
  if (typeof Devices.alLDevices[fullName] !== 'undefined') {
@@ -104,6 +112,9 @@ class Devices {
104
112
  case 'Trv':
105
113
  d = new shelly_1.ShellyTrv(shellyInfo);
106
114
  break;
115
+ case 'Actuator':
116
+ d = new shelly_1.ShellyActuator(shellyInfo);
117
+ break;
107
118
  default:
108
119
  services_1.ServerLogService.writeLog(models_1.LogLevel.Warn, `No shelly Device Type for ${shellyInfo.deviceType} defined`);
109
120
  d = new shelly_1.ShellyDevice(shellyInfo, deviceType_1.DeviceType.unknown);
@@ -111,7 +122,7 @@ class Devices {
111
122
  Devices.alLDevices[fullName] = d;
112
123
  }
113
124
  static processTuyaDevice(cDevConf) {
114
- const tuyaInfo = new IoBrokerDeviceInfo_1.IoBrokerDeviceInfo(cDevConf);
125
+ const tuyaInfo = IoBrokerDeviceInfo_1.IoBrokerDeviceInfo.byDeviceConfig(cDevConf);
115
126
  const fullName = `${Devices.IDENTIFIER_TUYA}-${tuyaInfo.devID}`;
116
127
  tuyaInfo.allDevicesKey = fullName;
117
128
  if (typeof Devices.alLDevices[fullName] !== 'undefined') {
@@ -130,7 +141,7 @@ class Devices {
130
141
  Devices.alLDevices[fullName] = d;
131
142
  }
132
143
  static processZigbeeDevice(cDevConf) {
133
- const zigbeeInfo = new IoBrokerDeviceInfo_1.IoBrokerDeviceInfo(cDevConf);
144
+ const zigbeeInfo = IoBrokerDeviceInfo_1.IoBrokerDeviceInfo.byDeviceConfig(cDevConf);
134
145
  const apiDevId = zigbeeInfo.devID.startsWith('0x') ? zigbeeInfo.devID.substring(2) : zigbeeInfo.devID;
135
146
  const fullName = `zigbee-${apiDevId}`;
136
147
  zigbeeInfo.allDevicesKey = fullName;
@@ -221,8 +232,14 @@ class Devices {
221
232
  }
222
233
  Devices.alLDevices[fullName] = d;
223
234
  }
235
+ static processVeluxDevice(cDevConf) {
236
+ velux_1.VeluxService.processVeluxDevice(cDevConf);
237
+ }
238
+ static processSmartGardenDevice(cDevConf) {
239
+ smartGarden_1.SmartGardenService.processSmartGardenDevice(cDevConf);
240
+ }
224
241
  static processWledDevice(cDevConf) {
225
- const wledIoBrokerDeviceInfo = new IoBrokerDeviceInfo_1.IoBrokerDeviceInfo(cDevConf);
242
+ const wledIoBrokerDeviceInfo = IoBrokerDeviceInfo_1.IoBrokerDeviceInfo.byDeviceConfig(cDevConf);
226
243
  const fullName = `${Devices.IDENTIFIER_WLED}-${wledIoBrokerDeviceInfo.devID}`;
227
244
  wledIoBrokerDeviceInfo.allDevicesKey = fullName;
228
245
  if (typeof Devices.alLDevices[fullName] !== 'undefined') {
@@ -232,7 +249,7 @@ class Devices {
232
249
  Devices.alLDevices[fullName] = new wledDevice_1.WledDevice(wledIoBrokerDeviceInfo);
233
250
  }
234
251
  static processHMIPDevice(cDevConf) {
235
- const hmIPInfo = new IoBrokerDeviceInfo_1.IoBrokerDeviceInfo(cDevConf);
252
+ const hmIPInfo = IoBrokerDeviceInfo_1.IoBrokerDeviceInfo.byDeviceConfig(cDevConf);
236
253
  const fullName = `${Devices.IDENTIFIER_HOMEMATIC}-${hmIPInfo.devID}`;
237
254
  hmIPInfo.allDevicesKey = fullName;
238
255
  if (typeof Devices.alLDevices[fullName] !== 'undefined') {
@@ -288,7 +305,7 @@ class Devices {
288
305
  if (Devices.energymanager !== undefined) {
289
306
  return;
290
307
  }
291
- const devInfo = new IoBrokerDeviceInfo_1.IoBrokerDeviceInfo(cDevConf, true);
308
+ const devInfo = IoBrokerDeviceInfo_1.IoBrokerDeviceInfo.byStateJsSplit(cDevConf);
292
309
  const fullName = `${Devices.IDENTIFIER_JS}-${devInfo.devID}`;
293
310
  devInfo.allDevicesKey = fullName;
294
311
  Devices.energymanager = new jsObject_1.JsObjectEnergyManager(devInfo);
@@ -296,14 +313,58 @@ class Devices {
296
313
  }
297
314
  }
298
315
  exports.Devices = Devices;
316
+ /**
317
+ * A constant for the identifier of HM-IP Adapter devices
318
+ */
299
319
  Devices.IDENTIFIER_HOMEMATIC = 'hm-rpc';
320
+ /**
321
+ * A constant for the identifier of JavaScript Adapter devices
322
+ */
300
323
  Devices.IDENTIFIER_JS = 'javascript';
324
+ /**
325
+ * A constant for the identifier of Shelly Adapter devices
326
+ */
301
327
  Devices.IDENTIFIER_Shelly = 'shelly';
328
+ /**
329
+ * A constant for the identifier of Tuya Adapter devices
330
+ */
302
331
  Devices.IDENTIFIER_TUYA = 'tuya';
332
+ /**
333
+ * A constant for the identifier of Zigbee Adapter devices
334
+ */
303
335
  Devices.IDENTIFIER_ZIGBEE = 'zigbee';
336
+ /**
337
+ * A constant for the identifier of Zigbee2Mqtt Adapter devices
338
+ */
304
339
  Devices.IDENTIFIER_ZIGBEE2MQTT = 'zigbee2mqtt';
340
+ /**
341
+ * A constant for the identifier of WLED Adapter devices
342
+ */
305
343
  Devices.IDENTIFIER_WLED = 'wled';
344
+ /**
345
+ * A constant for the identifier of SmartGarden devices.
346
+ */
347
+ Devices.IDENTIFIER_SMART_GARDEN = 'smartgarden';
348
+ /**
349
+ * A constant for the identifier of Velux Adapter devices.
350
+ */
351
+ Devices.IDENTIFIER_VELUX = 'klf200';
352
+ /**
353
+ * A Map containing all devices
354
+ */
306
355
  Devices.alLDevices = {};
356
+ /**
357
+ * A reference to globally active energy manager
358
+ * @default undefined (no Energy-Manager)
359
+ */
307
360
  Devices.energymanager = undefined;
361
+ /**
362
+ * A reference to the Dachs device
363
+ * @default undefined (no Dachs CHP)
364
+ */
308
365
  Devices.dachs = undefined;
366
+ /**
367
+ * A reference to the temperature sensor measuring the warm water temperature
368
+ * @default undefined (no warm water temperature sensor)
369
+ */
309
370
  Devices.temperatureWarmWater = undefined;
@@ -9,12 +9,25 @@ import { TrackedDistanceData } from './trackedDistanceData';
9
9
  import { iBluetoothDetector } from '../baseDeviceInterfaces/iBluetoothDetector';
10
10
  export declare class DetectedBluetoothDevice implements iBaseDevice {
11
11
  id: string;
12
+ /** @inheritDoc */
12
13
  settings: undefined;
14
+ /**
15
+ * A Map matching the distances to the trackers identified by {@link iBluetoothDetector.id}
16
+ */
13
17
  distanceMap: Map<string, TrackedDistanceData>;
18
+ /** @inheritDoc */
14
19
  readonly deviceCapabilities: DeviceCapability[];
20
+ /** @inheritDoc */
15
21
  deviceType: DeviceType;
22
+ /** @inheritDoc */
16
23
  info: DeviceInfo;
24
+ /**
25
+ * The last room the device was guessed to be in {@link iRoomBase.roomName}
26
+ */
17
27
  lastRoom: string | undefined;
28
+ /**
29
+ * If the device is currently present
30
+ */
18
31
  present: boolean;
19
32
  constructor(id: string, settings?: iBluetoothTrackingSettings);
20
33
  get customName(): string;
@@ -13,12 +13,25 @@ const trilaterationPointDistance_1 = require("./trilaterationPointDistance");
13
13
  class DetectedBluetoothDevice {
14
14
  constructor(id, settings) {
15
15
  this.id = id;
16
+ /** @inheritDoc */
16
17
  this.settings = undefined;
18
+ /**
19
+ * A Map matching the distances to the trackers identified by {@link iBluetoothDetector.id}
20
+ */
17
21
  this.distanceMap = new Map();
22
+ /** @inheritDoc */
18
23
  this.deviceCapabilities = [DeviceCapability_1.DeviceCapability.trackableDevice];
24
+ /** @inheritDoc */
19
25
  this.deviceType = deviceType_1.DeviceType.TrackableDevice;
26
+ /** @inheritDoc */
20
27
  this.info = new DeviceInfo_1.DeviceInfo();
28
+ /**
29
+ * The last room the device was guessed to be in {@link iRoomBase.roomName}
30
+ */
21
31
  this.lastRoom = undefined;
32
+ /**
33
+ * If the device is currently present
34
+ */
22
35
  this.present = false;
23
36
  if (settings === undefined) {
24
37
  return;
@@ -77,7 +90,7 @@ class DetectedBluetoothDevice {
77
90
  const dataPoints = this.getDistances(maxAge);
78
91
  const result = [`Distances for ${this.info.customName}`];
79
92
  for (const data of dataPoints) {
80
- result.push(`${data.trackerName}: ${services_1.Utils.round((_a = data.distance) !== null && _a !== void 0 ? _a : -99, 2)}m updated ${new Date(data.lastUpdate).toLocaleTimeString()}`);
93
+ result.push(`${data.trackerName}: ${services_1.Utils.round((_a = data.distance) !== null && _a !== void 0 ? _a : -99, 2)}m updated ${new Date(data.lastUpdate).toLocaleTimeString('de-DE')}`);
81
94
  services_1.Utils.nowTime();
82
95
  }
83
96
  return result.join('\n');
@@ -8,27 +8,57 @@ import { LogDebugType } from '../../services';
8
8
  import { ProximityCallback } from './proximityCallback';
9
9
  import { TrilaterationBasePoint } from './trilaterationBasePoint';
10
10
  export declare class EspresenseDevice implements iRoomDevice, iBluetoothDetector {
11
+ /** @inheritDoc */
11
12
  readonly position: TrilaterationBasePoint;
13
+ /** @inheritDoc */
12
14
  settings: undefined;
15
+ /** @inheritDoc */
13
16
  readonly deviceCapabilities: DeviceCapability[];
17
+ /** @inheritDoc */
14
18
  deviceType: DeviceType;
19
+ /**
20
+ * The name of this device
21
+ */
15
22
  readonly name: string;
16
23
  private deviceMap;
17
24
  private proximityCallbackMap;
25
+ /**
26
+ * Creates a new instance of the EspresenseDevice class
27
+ * @param name - The desired name of the device
28
+ * @param roomName - The name of the room this device is in {@link iRoomBase.roomName}
29
+ * @param x - The x coordinate of the device in the house
30
+ * @param y - The y coordinate of the device in the house
31
+ * @param z - The z coordinate of the device in the house
32
+ */
18
33
  constructor(name: string, roomName: string, x: number, y: number, z: number);
34
+ /** @inheritDoc */
19
35
  get customName(): string;
20
36
  protected _info: DeviceInfo;
37
+ /** @inheritDoc */
21
38
  get info(): DeviceInfo;
22
- set info(info: DeviceInfo);
39
+ /** @inheritDoc */
23
40
  get id(): string;
41
+ /** @inheritDoc */
24
42
  get room(): RoomBase | undefined;
43
+ /** @inheritDoc */
25
44
  distanceOfDevice(deviceName: string, maxAge?: number): number | undefined;
45
+ /** @inheritDoc */
26
46
  isDevicePresent(deviceName: string, maxDistance: number, maxAge?: number): boolean;
47
+ /**
48
+ * Updates the device with the given state
49
+ * @param devName - The name of the bluetooth device
50
+ * @param state - The state containing the json-formatted distance data
51
+ */
27
52
  update(devName: string, state: ioBroker.State): void;
53
+ /** @inheritDoc */
28
54
  log(level: LogLevel, message: string, debugType?: LogDebugType): void;
55
+ /** @inheritDoc */
29
56
  toJSON(): Partial<iRoomDevice>;
57
+ /** @inheritDoc */
30
58
  persistDeviceInfo(): void;
59
+ /** @inheritDoc */
31
60
  loadDeviceSettings(): void;
61
+ /** @inheritDoc */
32
62
  addProximityCallback(cb: ProximityCallback): void;
33
63
  private addDeviceTracking;
34
64
  }
@@ -12,9 +12,20 @@ const espresenseCoordinator_1 = require("./espresenseCoordinator");
12
12
  const trilaterationBasePoint_1 = require("./trilaterationBasePoint");
13
13
  const trilateration_1 = require("./trilateration");
14
14
  class EspresenseDevice {
15
+ /**
16
+ * Creates a new instance of the EspresenseDevice class
17
+ * @param name - The desired name of the device
18
+ * @param roomName - The name of the room this device is in {@link iRoomBase.roomName}
19
+ * @param x - The x coordinate of the device in the house
20
+ * @param y - The y coordinate of the device in the house
21
+ * @param z - The z coordinate of the device in the house
22
+ */
15
23
  constructor(name, roomName, x, y, z) {
24
+ /** @inheritDoc */
16
25
  this.settings = undefined;
26
+ /** @inheritDoc */
17
27
  this.deviceCapabilities = [DeviceCapability_1.DeviceCapability.bluetoothDetector];
28
+ /** @inheritDoc */
18
29
  this.deviceType = deviceType_1.DeviceType.Espresense;
19
30
  this.deviceMap = new Map();
20
31
  this.proximityCallbackMap = new Map();
@@ -31,22 +42,24 @@ class EspresenseDevice {
31
42
  this.loadDeviceSettings();
32
43
  trilateration_1.Trilateration.basePoints.push(this.position);
33
44
  }
45
+ /** @inheritDoc */
34
46
  get customName() {
35
47
  return this.info.customName;
36
48
  }
49
+ /** @inheritDoc */
37
50
  get info() {
38
51
  return this._info;
39
52
  }
40
- set info(info) {
41
- this._info = info;
42
- }
53
+ /** @inheritDoc */
43
54
  get id() {
44
55
  var _a;
45
56
  return (_a = this.info.allDevicesKey) !== null && _a !== void 0 ? _a : `espresense-${this.info.room}-${this.info.customName}`;
46
57
  }
58
+ /** @inheritDoc */
47
59
  get room() {
48
60
  return services_1.API.getRoom(this.info.room);
49
61
  }
62
+ /** @inheritDoc */
50
63
  distanceOfDevice(deviceName, maxAge = 60) {
51
64
  var _a;
52
65
  for (const dev of this.deviceMap.values()) {
@@ -57,10 +70,16 @@ class EspresenseDevice {
57
70
  }
58
71
  return undefined;
59
72
  }
73
+ /** @inheritDoc */
60
74
  isDevicePresent(deviceName, maxDistance, maxAge = 60) {
61
75
  var _a;
62
76
  return ((_a = this.distanceOfDevice(deviceName, maxAge)) !== null && _a !== void 0 ? _a : 99) < maxDistance;
63
77
  }
78
+ /**
79
+ * Updates the device with the given state
80
+ * @param devName - The name of the bluetooth device
81
+ * @param state - The state containing the json-formatted distance data
82
+ */
64
83
  update(devName, state) {
65
84
  var _a, _b;
66
85
  let data = null;
@@ -83,7 +102,7 @@ class EspresenseDevice {
83
102
  }
84
103
  const trackedDistance = dev.getDistance(this.id);
85
104
  if (trackedDistance === undefined) {
86
- this.log(models_1.LogLevel.Error, `TrackedDistance Undefined directly after update`);
105
+ this.log(models_1.LogLevel.Error, 'TrackedDistance Undefined directly after update');
87
106
  return;
88
107
  }
89
108
  const distance = trackedDistance.distance;
@@ -103,6 +122,7 @@ class EspresenseDevice {
103
122
  }
104
123
  }
105
124
  }
125
+ /** @inheritDoc */
106
126
  log(level, message, debugType = services_1.LogDebugType.None) {
107
127
  var _a, _b;
108
128
  services_1.ServerLogService.writeLog(level, `${this.name}: ${message}`, {
@@ -112,18 +132,22 @@ class EspresenseDevice {
112
132
  deviceName: this.name,
113
133
  });
114
134
  }
135
+ /** @inheritDoc */
115
136
  toJSON() {
116
137
  return services_1.Utils.jsonFilter(this);
117
138
  }
139
+ /** @inheritDoc */
118
140
  persistDeviceInfo() {
119
141
  services_1.Utils.guardedTimeout(() => {
120
142
  var _a;
121
143
  (_a = services_1.Utils.dbo) === null || _a === void 0 ? void 0 : _a.addDevice(this);
122
144
  }, 5000, this);
123
145
  }
146
+ /** @inheritDoc */
124
147
  loadDeviceSettings() {
125
148
  // Nothing
126
149
  }
150
+ /** @inheritDoc */
127
151
  addProximityCallback(cb) {
128
152
  let currentValue = this.proximityCallbackMap.get(cb.deviceName);
129
153
  if (currentValue == undefined) {
@@ -1,8 +1,20 @@
1
1
  import { iBluetoothDetector } from '../baseDeviceInterfaces/iBluetoothDetector';
2
2
  export declare class TrackedDistanceData {
3
+ /**
4
+ * The name of the tracker who detected this device
5
+ */
3
6
  trackerName: string;
7
+ /**
8
+ * The distance to the tracker
9
+ */
4
10
  distance: number | undefined;
11
+ /**
12
+ * The time of the last update
13
+ */
5
14
  lastUpdate: number;
15
+ /**
16
+ * The distance to the tracker before the last update (if available) can be used to calculate certain movements
17
+ */
6
18
  previousDistance: number | undefined;
7
19
  constructor(tracker: iBluetoothDetector);
8
20
  update(distance: number): void;
@@ -4,6 +4,9 @@ exports.TrackedDistanceData = void 0;
4
4
  const services_1 = require("../../services");
5
5
  class TrackedDistanceData {
6
6
  constructor(tracker) {
7
+ /**
8
+ * The time of the last update
9
+ */
7
10
  this.lastUpdate = 0;
8
11
  this.trackerName = tracker.info.customName;
9
12
  }
@@ -3,7 +3,14 @@ import { TrilaterationPoint } from './trilaterationPoint';
3
3
  import { TrilaterationPointDistance } from './trilaterationPointDistance';
4
4
  import { RoomBase } from '../../../models';
5
5
  export declare class Trilateration {
6
+ /**
7
+ * A list of all reference points for trilateration (e.g. Rooms, {@link iBluetoothDetector}s)
8
+ */
6
9
  static readonly basePoints: TrilaterationBasePoint[];
10
+ /**
11
+ * A list of all possible points for trilateration in this home, used for increased calculation speed
12
+ * This list is filled mostly by {@link Trilateration.addRoom} thus resulting in the air outside the house not being included
13
+ */
7
14
  static possiblePoints: TrilaterationPoint[];
8
15
  static addRoom(room: RoomBase, startPoint: TrilaterationPoint, endPoint: TrilaterationPoint): void;
9
16
  static initialize(): void;
@@ -104,5 +104,12 @@ class Trilateration {
104
104
  }
105
105
  }
106
106
  exports.Trilateration = Trilateration;
107
+ /**
108
+ * A list of all reference points for trilateration (e.g. Rooms, {@link iBluetoothDetector}s)
109
+ */
107
110
  Trilateration.basePoints = [];
111
+ /**
112
+ * A list of all possible points for trilateration in this home, used for increased calculation speed
113
+ * This list is filled mostly by {@link Trilateration.addRoom} thus resulting in the air outside the house not being included
114
+ */
108
115
  Trilateration.possiblePoints = [];
@@ -6,7 +6,13 @@ export declare class TrilaterationBasePoint {
6
6
  readonly z: number;
7
7
  readonly roomName: string;
8
8
  private readonly _maximumDistance;
9
+ /**
10
+ * The coordinates of this point in Space
11
+ */
9
12
  readonly ownPoint: TrilaterationPoint;
13
+ /**
14
+ * A precalculated map of distances to all existing points in the home (@see {@link Trilateration.possiblePoints})
15
+ */
10
16
  readonly precalculatedDistancesMap: Map<number, string[]>;
11
17
  constructor(x: number, y: number, z: number, roomName: string, _maximumDistance?: number);
12
18
  getRatedCoordinates(distance: number): TrilaterationRatedCoordinate[];
@@ -12,6 +12,9 @@ class TrilaterationBasePoint {
12
12
  this.z = z;
13
13
  this.roomName = roomName;
14
14
  this._maximumDistance = _maximumDistance;
15
+ /**
16
+ * A precalculated map of distances to all existing points in the home (@see {@link Trilateration.possiblePoints})
17
+ */
15
18
  this.precalculatedDistancesMap = new Map();
16
19
  this.ownPoint = new trilaterationPoint_1.TrilaterationPoint(x, y, z, roomName);
17
20
  }