hoffmation-base 3.0.0-alpha.9 → 3.0.0-alpha.90

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 (561) 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 +37 -1
  94. package/lib/models/deviceSettings/dachsSettings.js +47 -3
  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 +51 -0
  116. package/lib/models/deviceSettings/victronDeviceSettings.js +65 -9
  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/iJsonOmitKeys.d.ts +9 -0
  123. package/lib/models/index.d.ts +3 -1
  124. package/lib/models/index.js +4 -1
  125. package/lib/models/objectSettings.d.ts +5 -2
  126. package/lib/models/objectSettings.js +2 -2
  127. package/lib/models/persistence/EnergyCalculation.d.ts +27 -0
  128. package/lib/models/persistence/EnergyCalculation.js +30 -4
  129. package/lib/models/persistence/index.d.ts +0 -2
  130. package/lib/models/persistence/index.js +0 -2
  131. package/lib/models/rooms/RoomBase.d.ts +12 -1
  132. package/lib/models/rooms/RoomBase.js +17 -8
  133. package/lib/models/rooms/RoomSettings/RoomInitializationSettings.d.ts +2 -1
  134. package/lib/models/rooms/RoomSettings/RoomInitializationSettings.js +2 -2
  135. package/lib/models/rooms/RoomSettings/RoomSettingsController.d.ts +10 -1
  136. package/lib/models/rooms/RoomSettings/RoomSettingsController.js +2 -2
  137. package/lib/models/rooms/RoomSettings/iRoomDefaultSettings.d.ts +53 -3
  138. package/lib/models/rooms/RoomSettings/iRoomInitializationSettings.d.ts +10 -1
  139. package/lib/models/rooms/RoomSettings/roomDeviceAddingSettings.d.ts +4 -1
  140. package/lib/models/rooms/RoomSettings/roomDeviceAddingSettings.js +3 -0
  141. package/lib/models/rooms/RoomSettings/roomSettings.d.ts +55 -0
  142. package/lib/models/rooms/RoomSettings/roomSettings.js +55 -0
  143. package/lib/models/rooms/iRoomBase.d.ts +39 -0
  144. package/lib/models/rooms/iRoomImportEnforcer.d.ts +8 -0
  145. package/lib/models/timeCallback.d.ts +7 -0
  146. package/lib/models/timeCallback.js +16 -6
  147. package/lib/server/config/heatingMode.d.ts +2 -1
  148. package/lib/server/config/heatingMode.js +2 -1
  149. package/lib/server/config/iAsusConfig.d.ts +15 -0
  150. package/lib/server/config/iBlockAutomaticHandlerDefaults.d.ts +23 -0
  151. package/lib/server/config/iBlockAutomaticHandlerDefaults.js +2 -0
  152. package/lib/server/config/iBlueIrisSettings.d.ts +14 -0
  153. package/lib/server/config/iBluetoothTrackingSettings.d.ts +9 -0
  154. package/lib/server/config/iConfig.d.ts +94 -6
  155. package/lib/server/config/iDachsSettings.d.ts +16 -0
  156. package/lib/server/config/iDaikinSettings.d.ts +17 -0
  157. package/lib/server/config/iEnergyManagerSettings.d.ts +13 -0
  158. package/lib/server/config/iEspresenseSettings.d.ts +10 -0
  159. package/lib/server/config/iGoveeSettings.d.ts +9 -0
  160. package/lib/server/config/iGoveeSettings.js +2 -0
  161. package/lib/server/config/iHeaterSettings.d.ts +8 -0
  162. package/lib/server/config/iIobrokerSettigns.d.ts +8 -0
  163. package/lib/server/config/iLogSettings.d.ts +40 -1
  164. package/lib/server/config/iMp3Settings.d.ts +10 -0
  165. package/lib/server/config/iMuellSettings.d.ts +7 -0
  166. package/lib/server/config/iNewsSettings.d.ts +13 -0
  167. package/lib/server/config/iPersistenceSettings.d.ts +10 -0
  168. package/lib/server/config/iPollySettings.d.ts +22 -0
  169. package/lib/server/config/iRestSettings.d.ts +10 -0
  170. package/lib/server/config/iSonosSettings.d.ts +14 -0
  171. package/lib/server/config/iTelegramSettings.d.ts +17 -0
  172. package/lib/server/config/iTibberSettings.d.ts +10 -0
  173. package/lib/server/config/iTimePair.d.ts +9 -0
  174. package/lib/server/config/iTimeSettings.d.ts +9 -0
  175. package/lib/server/config/iTranslationSettings.d.ts +10 -0
  176. package/lib/server/config/iUnifiConnectionOptions.d.ts +31 -0
  177. package/lib/server/config/iUnifiSettings.d.ts +8 -0
  178. package/lib/server/config/iVictronSettings.d.ts +14 -0
  179. package/lib/server/config/iWeatherSettings.d.ts +13 -0
  180. package/lib/server/config/index.d.ts +2 -0
  181. package/lib/server/devices/DeviceCapability.d.ts +1 -0
  182. package/lib/server/devices/DeviceCapability.js +1 -0
  183. package/lib/server/devices/DeviceInfo.d.ts +9 -0
  184. package/lib/server/devices/DeviceInfo.js +6 -0
  185. package/lib/server/devices/Griffe.js +1 -2
  186. package/lib/server/devices/Heizgruppen.js +2 -2
  187. package/lib/server/devices/IoBrokerBaseDevice.d.ts +38 -20
  188. package/lib/server/devices/IoBrokerBaseDevice.js +40 -22
  189. package/lib/server/devices/IoBrokerDeviceInfo.d.ts +8 -6
  190. package/lib/server/devices/IoBrokerDeviceInfo.js +50 -46
  191. package/lib/server/devices/baseDeviceInterfaces/iAcDevice.d.ts +41 -3
  192. package/lib/server/devices/baseDeviceInterfaces/iActuator.d.ts +18 -0
  193. package/lib/server/devices/baseDeviceInterfaces/iBaseDevice.d.ts +26 -1
  194. package/lib/server/devices/baseDeviceInterfaces/iBatteryDevice.d.ts +15 -7
  195. package/lib/server/devices/baseDeviceInterfaces/iBluetoothDetector.d.ts +15 -7
  196. package/lib/server/devices/baseDeviceInterfaces/iButtonSwitch.d.ts +42 -0
  197. package/lib/server/devices/baseDeviceInterfaces/iCameraDevice.d.ts +46 -3
  198. package/lib/server/devices/baseDeviceInterfaces/iDimmableLamp.d.ts +17 -2
  199. package/lib/server/devices/baseDeviceInterfaces/iEnergyManager.d.ts +36 -2
  200. package/lib/server/devices/baseDeviceInterfaces/iExcessEnergyConsumer.d.ts +30 -2
  201. package/lib/server/devices/baseDeviceInterfaces/iGarageDoorOpener.d.ts +21 -0
  202. package/lib/server/devices/baseDeviceInterfaces/iHandleSensor.d.ts +34 -0
  203. package/lib/server/devices/baseDeviceInterfaces/iHeater.d.ts +40 -5
  204. package/lib/server/devices/baseDeviceInterfaces/iHumiditySensor.d.ts +19 -4
  205. package/lib/server/devices/baseDeviceInterfaces/iIlluminationSensor.d.ts +11 -0
  206. package/lib/server/devices/baseDeviceInterfaces/iLamp.d.ts +7 -2
  207. package/lib/server/devices/baseDeviceInterfaces/iLedRgbCct.d.ts +20 -0
  208. package/lib/server/devices/baseDeviceInterfaces/iLoadMeter.d.ts +5 -0
  209. package/lib/server/devices/baseDeviceInterfaces/iMagnetSensor.d.ts +31 -0
  210. package/lib/server/devices/baseDeviceInterfaces/iMagnetSensor.js +2 -0
  211. package/lib/server/devices/baseDeviceInterfaces/iMotionSensor.d.ts +23 -3
  212. package/lib/server/devices/baseDeviceInterfaces/iRoomDevice.d.ts +6 -0
  213. package/lib/server/devices/baseDeviceInterfaces/iScene.d.ts +31 -2
  214. package/lib/server/devices/baseDeviceInterfaces/iShutter.d.ts +25 -1
  215. package/lib/server/devices/baseDeviceInterfaces/iSmokeDetectorDevice.d.ts +12 -0
  216. package/lib/server/devices/baseDeviceInterfaces/iSpeaker.d.ts +30 -0
  217. package/lib/server/devices/baseDeviceInterfaces/iTemperatureSensor.d.ts +30 -5
  218. package/lib/server/devices/baseDeviceInterfaces/iTemporaryDisableAutomatic.d.ts +13 -0
  219. package/lib/server/devices/baseDeviceInterfaces/iTvDevice.d.ts +20 -0
  220. package/lib/server/devices/baseDeviceInterfaces/iVibrationSensor.d.ts +24 -5
  221. package/lib/server/devices/baseDeviceInterfaces/index.d.ts +1 -0
  222. package/lib/server/devices/blueIris/cameraDevice.d.ts +49 -34
  223. package/lib/server/devices/blueIris/cameraDevice.js +75 -75
  224. package/lib/server/devices/button/button.d.ts +0 -1
  225. package/lib/server/devices/button/button.js +0 -4
  226. package/lib/server/devices/button/buttonCallback.d.ts +5 -0
  227. package/lib/server/devices/button/buttonCallback.js +10 -0
  228. package/lib/server/devices/button/buttonCapabilities.d.ts +12 -0
  229. package/lib/server/devices/button/buttonCapabilities.js +12 -0
  230. package/lib/server/devices/button/index.d.ts +1 -0
  231. package/lib/server/devices/button/index.js +3 -0
  232. package/lib/server/devices/dachs/dachs.d.ts +51 -11
  233. package/lib/server/devices/dachs/dachs.js +136 -23
  234. package/lib/server/devices/dachs/dachsTemperatureSensor.d.ts +23 -10
  235. package/lib/server/devices/dachs/dachsTemperatureSensor.js +28 -32
  236. package/lib/server/devices/dachs/interfaces/DachsClientOptions.d.ts +30 -0
  237. package/lib/server/devices/dachs/interfaces/KeyListEntity.d.ts +0 -8
  238. package/lib/server/devices/dachs/interfaces/KeyListEntity.js +0 -8
  239. package/lib/server/devices/dachs/interfaces/dachsInfluxDataPoint.d.ts +12 -0
  240. package/lib/server/devices/dachs/interfaces/influxDbConnectionOptions.d.ts +21 -1
  241. package/lib/server/devices/dachs/lib/dachsHttpClient.d.ts +5 -2
  242. package/lib/server/devices/dachs/lib/dachsHttpClient.js +5 -4
  243. package/lib/server/devices/device-cluster.d.ts +4 -1
  244. package/lib/server/devices/device-cluster.js +9 -4
  245. package/lib/server/devices/deviceType.d.ts +6 -0
  246. package/lib/server/devices/deviceType.js +6 -0
  247. package/lib/server/devices/deviceUpdater.d.ts +0 -3
  248. package/lib/server/devices/deviceUpdater.js +26 -4
  249. package/lib/server/devices/devices.d.ts +53 -7
  250. package/lib/server/devices/devices.js +83 -19
  251. package/lib/server/devices/espresense/detectedBluetoothDevice.d.ts +13 -0
  252. package/lib/server/devices/espresense/detectedBluetoothDevice.js +14 -1
  253. package/lib/server/devices/espresense/espresenseDevice.d.ts +31 -1
  254. package/lib/server/devices/espresense/espresenseDevice.js +29 -5
  255. package/lib/server/devices/espresense/trackedDistanceData.d.ts +12 -0
  256. package/lib/server/devices/espresense/trackedDistanceData.js +3 -0
  257. package/lib/server/devices/espresense/trilateration.d.ts +7 -0
  258. package/lib/server/devices/espresense/trilateration.js +7 -0
  259. package/lib/server/devices/espresense/trilaterationBasePoint.d.ts +6 -0
  260. package/lib/server/devices/espresense/trilaterationBasePoint.js +3 -0
  261. package/lib/server/devices/espresense/trilaterationPoint.d.ts +1 -1
  262. package/lib/server/devices/espresense/trilaterationPoint.js +3 -1
  263. package/lib/server/devices/groups/Window.d.ts +16 -6
  264. package/lib/server/devices/groups/Window.js +31 -14
  265. package/lib/server/devices/groups/base-group.d.ts +4 -0
  266. package/lib/server/devices/groups/base-group.js +3 -0
  267. package/lib/server/devices/groups/heatGroup.d.ts +8 -6
  268. package/lib/server/devices/groups/heatGroup.js +11 -11
  269. package/lib/server/devices/groups/lightGroup.d.ts +10 -2
  270. package/lib/server/devices/groups/lightGroup.js +20 -39
  271. package/lib/server/devices/groups/presenceGroup.d.ts +17 -6
  272. package/lib/server/devices/groups/presenceGroup.js +73 -63
  273. package/lib/server/devices/groups/tasterGroup.js +18 -9
  274. package/lib/server/devices/groups/windowGroup.d.ts +16 -1
  275. package/lib/server/devices/groups/windowGroup.js +24 -9
  276. package/lib/server/devices/hmIPDevices/hmIpAccessPoint.d.ts +1 -0
  277. package/lib/server/devices/hmIPDevices/hmIpAccessPoint.js +1 -0
  278. package/lib/server/devices/hmIPDevices/hmIpBewegung.d.ts +9 -6
  279. package/lib/server/devices/hmIPDevices/hmIpBewegung.js +10 -11
  280. package/lib/server/devices/hmIPDevices/hmIpDevice.d.ts +1 -2
  281. package/lib/server/devices/hmIPDevices/hmIpDevice.js +2 -3
  282. package/lib/server/devices/hmIPDevices/hmIpGriff.d.ts +23 -18
  283. package/lib/server/devices/hmIPDevices/hmIpGriff.js +39 -140
  284. package/lib/server/devices/hmIPDevices/hmIpHeizgruppe.d.ts +29 -18
  285. package/lib/server/devices/hmIPDevices/hmIpHeizgruppe.js +51 -74
  286. package/lib/server/devices/hmIPDevices/hmIpHeizung.d.ts +6 -6
  287. package/lib/server/devices/hmIPDevices/hmIpHeizung.js +8 -20
  288. package/lib/server/devices/hmIPDevices/hmIpLampe.d.ts +7 -1
  289. package/lib/server/devices/hmIPDevices/hmIpLampe.js +11 -7
  290. package/lib/server/devices/hmIPDevices/hmIpPraezenz.d.ts +11 -10
  291. package/lib/server/devices/hmIPDevices/hmIpPraezenz.js +12 -22
  292. package/lib/server/devices/hmIPDevices/hmIpRoll.d.ts +4 -2
  293. package/lib/server/devices/hmIPDevices/hmIpRoll.js +27 -25
  294. package/lib/server/devices/hmIPDevices/hmIpTaster.d.ts +19 -5
  295. package/lib/server/devices/hmIPDevices/hmIpTaster.js +16 -19
  296. package/lib/server/devices/hmIPDevices/hmIpTherm.d.ts +5 -5
  297. package/lib/server/devices/hmIPDevices/hmIpTherm.js +8 -20
  298. package/lib/server/devices/hmIPDevices/hmIpTuer.d.ts +9 -1
  299. package/lib/server/devices/hmIPDevices/hmIpTuer.js +17 -4
  300. package/lib/server/devices/hmIPDevices/hmIpWippe.d.ts +27 -0
  301. package/lib/server/devices/hmIPDevices/hmIpWippe.js +3 -0
  302. package/lib/server/devices/iDeviceUpdater.d.ts +14 -0
  303. package/lib/server/devices/index.d.ts +8 -2
  304. package/lib/server/devices/index.js +11 -2
  305. package/lib/server/devices/jsObject/jsObjectEnergyManager.d.ts +5 -1
  306. package/lib/server/devices/jsObject/jsObjectEnergyManager.js +9 -3
  307. package/lib/server/devices/models/WindowPosition.d.ts +3 -3
  308. package/lib/server/devices/models/WindowPosition.js +3 -3
  309. package/lib/server/devices/nameAmountValuePair.d.ts +5 -0
  310. package/lib/server/devices/nameAmountValuePair.js +10 -0
  311. package/lib/server/devices/scene/room-scene.d.ts +23 -7
  312. package/lib/server/devices/scene/room-scene.js +18 -4
  313. package/lib/server/devices/sharedFunctions/battery.d.ts +31 -0
  314. package/lib/server/devices/sharedFunctions/battery.js +65 -0
  315. package/lib/server/devices/sharedFunctions/handleSensor.d.ts +45 -0
  316. package/lib/server/devices/sharedFunctions/handleSensor.js +150 -0
  317. package/lib/server/devices/sharedFunctions/humiditySensor.d.ts +18 -0
  318. package/lib/server/devices/sharedFunctions/humiditySensor.js +46 -0
  319. package/lib/server/devices/sharedFunctions/index.d.ts +4 -0
  320. package/lib/server/devices/sharedFunctions/index.js +4 -0
  321. package/lib/server/devices/sharedFunctions/lampUtils.d.ts +11 -2
  322. package/lib/server/devices/sharedFunctions/lampUtils.js +79 -25
  323. package/lib/server/devices/sharedFunctions/temperatureSensor.d.ts +31 -0
  324. package/lib/server/devices/sharedFunctions/temperatureSensor.js +57 -0
  325. package/lib/server/devices/shelly/index.d.ts +1 -0
  326. package/lib/server/devices/shelly/index.js +3 -1
  327. package/lib/server/devices/shelly/shellyActuator.d.ts +33 -0
  328. package/lib/server/devices/shelly/shellyActuator.js +84 -0
  329. package/lib/server/devices/shelly/shellyDevice.d.ts +2 -1
  330. package/lib/server/devices/shelly/shellyDevice.js +2 -1
  331. package/lib/server/devices/shelly/shellyTrv.d.ts +27 -19
  332. package/lib/server/devices/shelly/shellyTrv.js +39 -52
  333. package/lib/server/devices/smartGarden/index.d.ts +6 -0
  334. package/lib/server/devices/smartGarden/index.js +22 -0
  335. package/lib/server/devices/smartGarden/smartGardenDevice.d.ts +21 -0
  336. package/lib/server/devices/smartGarden/smartGardenDevice.js +63 -0
  337. package/lib/server/devices/smartGarden/smartGardenDeviceRegistrationInfo.d.ts +9 -0
  338. package/lib/server/devices/smartGarden/smartGardenDeviceRegistrationInfo.js +13 -0
  339. package/lib/server/devices/smartGarden/smartGardenMower.d.ts +35 -0
  340. package/lib/server/devices/smartGarden/smartGardenMower.js +107 -0
  341. package/lib/server/devices/smartGarden/smartGardenSensor.d.ts +32 -0
  342. package/lib/server/devices/smartGarden/smartGardenSensor.js +76 -0
  343. package/lib/server/devices/smartGarden/smartGardenService.d.ts +7 -0
  344. package/lib/server/devices/smartGarden/smartGardenService.js +52 -0
  345. package/lib/server/devices/smartGarden/smartGardenValve.d.ts +36 -0
  346. package/lib/server/devices/smartGarden/smartGardenValve.js +105 -0
  347. package/lib/server/devices/tuya/tuyaDevice.d.ts +2 -1
  348. package/lib/server/devices/tuya/tuyaDevice.js +2 -1
  349. package/lib/server/devices/tuya/tuyaGarageOpener.d.ts +3 -0
  350. package/lib/server/devices/tuya/tuyaGarageOpener.js +3 -0
  351. package/lib/server/devices/tv/samsungTv.d.ts +1 -0
  352. package/lib/server/devices/tv/samsungTv.js +1 -0
  353. package/lib/server/devices/tv/tvDevice.d.ts +7 -1
  354. package/lib/server/devices/tv/tvDevice.js +4 -3
  355. package/lib/server/devices/velux/index.d.ts +4 -0
  356. package/lib/server/devices/velux/index.js +11 -0
  357. package/lib/server/devices/velux/veluxDevice.d.ts +13 -0
  358. package/lib/server/devices/velux/veluxDevice.js +43 -0
  359. package/lib/server/devices/velux/veluxDeviceRegistrationInfo.d.ts +9 -0
  360. package/lib/server/devices/velux/veluxDeviceRegistrationInfo.js +13 -0
  361. package/lib/server/devices/velux/veluxService.d.ts +7 -0
  362. package/lib/server/devices/velux/veluxService.js +44 -0
  363. package/lib/server/devices/velux/veluxShutter.d.ts +27 -0
  364. package/lib/server/devices/velux/veluxShutter.js +124 -0
  365. package/lib/server/devices/wledDevice.d.ts +15 -3
  366. package/lib/server/devices/wledDevice.js +42 -16
  367. package/lib/server/devices/zigbee/BaseDevices/ZigbeeActuator.d.ts +17 -4
  368. package/lib/server/devices/zigbee/BaseDevices/ZigbeeActuator.js +30 -15
  369. package/lib/server/devices/zigbee/BaseDevices/index.d.ts +2 -0
  370. package/lib/server/devices/zigbee/BaseDevices/index.js +5 -0
  371. package/lib/server/devices/zigbee/BaseDevices/zigbeeDevice.d.ts +4 -5
  372. package/lib/server/devices/zigbee/BaseDevices/zigbeeDevice.js +8 -17
  373. package/lib/server/devices/zigbee/BaseDevices/zigbeeDimmer.d.ts +10 -25
  374. package/lib/server/devices/zigbee/BaseDevices/zigbeeDimmer.js +25 -60
  375. package/lib/server/devices/zigbee/BaseDevices/zigbeeHeater.d.ts +23 -13
  376. package/lib/server/devices/zigbee/BaseDevices/zigbeeHeater.js +34 -41
  377. package/lib/server/devices/zigbee/BaseDevices/zigbeeLamp.d.ts +16 -0
  378. package/lib/server/devices/zigbee/BaseDevices/zigbeeLamp.js +35 -0
  379. package/lib/server/devices/zigbee/BaseDevices/zigbeeLedRGBCCT.d.ts +7 -7
  380. package/lib/server/devices/zigbee/BaseDevices/zigbeeLedRGBCCT.js +14 -14
  381. package/lib/server/devices/zigbee/BaseDevices/zigbeeMagnetContact.d.ts +16 -8
  382. package/lib/server/devices/zigbee/BaseDevices/zigbeeMagnetContact.js +25 -28
  383. package/lib/server/devices/zigbee/BaseDevices/zigbeeMotionSensor.d.ts +20 -16
  384. package/lib/server/devices/zigbee/BaseDevices/zigbeeMotionSensor.js +35 -45
  385. package/lib/server/devices/zigbee/BaseDevices/zigbeeShutter.d.ts +12 -4
  386. package/lib/server/devices/zigbee/BaseDevices/zigbeeShutter.js +30 -21
  387. package/lib/server/devices/zigbee/BaseDevices/zigbeeSwitch.d.ts +9 -1
  388. package/lib/server/devices/zigbee/BaseDevices/zigbeeSwitch.js +8 -1
  389. package/lib/server/devices/zigbee/BaseDevices/zigbeeWindowHandle.d.ts +36 -0
  390. package/lib/server/devices/zigbee/BaseDevices/zigbeeWindowHandle.js +82 -0
  391. package/lib/server/devices/zigbee/index.d.ts +1 -0
  392. package/lib/server/devices/zigbee/index.js +1 -0
  393. package/lib/server/devices/zigbee/zigbeeAqaraMagnetContact.d.ts +1 -0
  394. package/lib/server/devices/zigbee/zigbeeAqaraMagnetContact.js +1 -0
  395. package/lib/server/devices/zigbee/zigbeeAqaraOpple3Switch.d.ts +16 -0
  396. package/lib/server/devices/zigbee/zigbeeAqaraOpple3Switch.js +16 -0
  397. package/lib/server/devices/zigbee/zigbeeAquaraMotion.d.ts +6 -0
  398. package/lib/server/devices/zigbee/zigbeeAquaraMotion.js +7 -3
  399. package/lib/server/devices/zigbee/zigbeeAquaraVibra.d.ts +47 -12
  400. package/lib/server/devices/zigbee/zigbeeAquaraVibra.js +87 -33
  401. package/lib/server/devices/zigbee/zigbeeAquaraWater.d.ts +16 -9
  402. package/lib/server/devices/zigbee/zigbeeAquaraWater.js +27 -37
  403. package/lib/server/devices/zigbee/zigbeeBlitzShp.d.ts +15 -5
  404. package/lib/server/devices/zigbee/zigbeeBlitzShp.js +22 -14
  405. package/lib/server/devices/zigbee/zigbeeEuroHeater.d.ts +10 -4
  406. package/lib/server/devices/zigbee/zigbeeEuroHeater.js +16 -10
  407. package/lib/server/devices/zigbee/zigbeeHeimanSmoke.d.ts +24 -10
  408. package/lib/server/devices/zigbee/zigbeeHeimanSmoke.js +33 -29
  409. package/lib/server/devices/zigbee/zigbeeIkeaShutter.d.ts +1 -0
  410. package/lib/server/devices/zigbee/zigbeeIkeaShutter.js +2 -1
  411. package/lib/server/devices/zigbee/zigbeeIkeaSteckdose.d.ts +2 -0
  412. package/lib/server/devices/zigbee/zigbeeIkeaSteckdose.js +3 -1
  413. package/lib/server/devices/zigbee/zigbeeIlluActuator.d.ts +1 -2
  414. package/lib/server/devices/zigbee/zigbeeIlluActuator.js +2 -11
  415. package/lib/server/devices/zigbee/zigbeeIlluDimmer.d.ts +1 -1
  416. package/lib/server/devices/zigbee/zigbeeIlluDimmer.js +1 -1
  417. package/lib/server/devices/zigbee/zigbeeIlluLampe.d.ts +3 -10
  418. package/lib/server/devices/zigbee/zigbeeIlluLampe.js +3 -32
  419. package/lib/server/devices/zigbee/zigbeeIlluLedRGBCCT.d.ts +1 -1
  420. package/lib/server/devices/zigbee/zigbeeIlluLedRGBCCT.js +1 -1
  421. package/lib/server/devices/zigbee/zigbeeIlluShutter.d.ts +1 -0
  422. package/lib/server/devices/zigbee/zigbeeIlluShutter.js +5 -4
  423. package/lib/server/devices/zigbee/zigbeeInnr142C.d.ts +1 -1
  424. package/lib/server/devices/zigbee/zigbeeInnr142C.js +1 -1
  425. package/lib/server/devices/zigbee/zigbeeLinkindLedRgbCct.d.ts +1 -1
  426. package/lib/server/devices/zigbee/zigbeeLinkindLedRgbCct.js +1 -1
  427. package/lib/server/devices/zigbee/zigbeeOsramDimmer.d.ts +1 -1
  428. package/lib/server/devices/zigbee/zigbeeOsramDimmer.js +1 -1
  429. package/lib/server/devices/zigbee/zigbeeSMaBiTMagnetContact.d.ts +1 -0
  430. package/lib/server/devices/zigbee/zigbeeSMaBiTMagnetContact.js +1 -0
  431. package/lib/server/devices/zigbee/zigbeeSodaHandle.d.ts +34 -0
  432. package/lib/server/devices/zigbee/zigbeeSodaHandle.js +96 -0
  433. package/lib/server/devices/zigbee/zigbeeSonoffMotion.d.ts +1 -0
  434. package/lib/server/devices/zigbee/zigbeeSonoffMotion.js +1 -0
  435. package/lib/server/devices/zigbee/zigbeeSonoffTemp.d.ts +24 -19
  436. package/lib/server/devices/zigbee/zigbeeSonoffTemp.js +38 -74
  437. package/lib/server/devices/zigbee/zigbeeTuyaValve.d.ts +10 -3
  438. package/lib/server/devices/zigbee/zigbeeTuyaValve.js +11 -6
  439. package/lib/server/devices/zigbee/zigbeeUbisysActuator.d.ts +9 -2
  440. package/lib/server/devices/zigbee/zigbeeUbisysActuator.js +10 -8
  441. package/lib/server/devices/zigbee/zigbeeUbisysLampe.d.ts +8 -9
  442. package/lib/server/devices/zigbee/zigbeeUbisysLampe.js +14 -24
  443. package/lib/server/devices/zigbee/zigbeeUbisysShutter.d.ts +1 -0
  444. package/lib/server/devices/zigbee/zigbeeUbisysShutter.js +2 -1
  445. package/lib/server/ioBroker/connection.d.ts +21 -22
  446. package/lib/server/ioBroker/connection.js +50 -33
  447. package/lib/server/ioBroker/ioBroker.main.d.ts +3 -0
  448. package/lib/server/ioBroker/ioBroker.main.js +12 -5
  449. package/lib/server/ioBroker/iobrokerConnectionLogging.d.ts +3 -0
  450. package/lib/server/ioBroker/iobrokerConnectionLogging.js +4 -0
  451. package/lib/server/ioBroker/socketIOConnectOptions.d.ts +2 -2
  452. package/lib/server/ioBroker/socketIOConnectOptions.js +1 -0
  453. package/lib/server/ioBroker/socketIOVisCommand.d.ts +5 -1
  454. package/lib/server/ioBroker/socketIOVisCommand.js +1 -0
  455. package/lib/server/services/ShutterService.js +7 -6
  456. package/lib/server/services/Sonos/OwnSonosDevices.d.ts +3 -0
  457. package/lib/server/services/Sonos/OwnSonosDevices.js +3 -0
  458. package/lib/server/services/Sonos/mp3-server.d.ts +3 -1
  459. package/lib/server/services/Sonos/mp3-server.js +3 -1
  460. package/lib/server/services/Sonos/own-sonos-device.d.ts +4 -1
  461. package/lib/server/services/Sonos/own-sonos-device.js +4 -4
  462. package/lib/server/services/Sonos/polly-service.d.ts +7 -1
  463. package/lib/server/services/Sonos/polly-service.js +10 -8
  464. package/lib/server/services/Sonos/sonos-service.d.ts +1 -5
  465. package/lib/server/services/Sonos/sonos-service.js +19 -18
  466. package/lib/server/services/Telegram/telegram-Commands.js +5 -5
  467. package/lib/server/services/Telegram/telegram-service.d.ts +2 -1
  468. package/lib/server/services/Telegram/telegram-service.js +8 -3
  469. package/lib/server/services/Translation/IRessourceObject.d.ts +13 -0
  470. package/lib/server/services/Translation/IRessourceObject.js +2 -0
  471. package/lib/server/services/Translation/iRessources.d.ts +1 -4
  472. package/lib/server/services/Translation/index.d.ts +1 -0
  473. package/lib/server/services/Translation/res.d.ts +34 -19
  474. package/lib/server/services/Translation/res.js +34 -19
  475. package/lib/server/services/ac/ac-device.d.ts +50 -9
  476. package/lib/server/services/ac/ac-device.js +121 -41
  477. package/lib/server/services/ac/daikin-service.js +4 -3
  478. package/lib/server/services/ac/own-ac-devices.d.ts +3 -0
  479. package/lib/server/services/ac/own-ac-devices.js +3 -0
  480. package/lib/server/services/ac/own-daikin-device.d.ts +25 -0
  481. package/lib/server/services/ac/own-daikin-device.js +40 -7
  482. package/lib/server/services/api/api-service.d.ts +118 -53
  483. package/lib/server/services/api/api-service.js +170 -80
  484. package/lib/server/services/blockAutomaticHandler.d.ts +13 -8
  485. package/lib/server/services/blockAutomaticHandler.js +34 -15
  486. package/lib/server/services/calendar/index.d.ts +1 -0
  487. package/lib/server/services/calendar/index.js +3 -0
  488. package/lib/server/services/calendar/muell-tonne.d.ts +11 -1
  489. package/lib/server/services/calendar/muell-tonne.js +10 -0
  490. package/lib/server/services/calendar/m/303/274ll-service.d.ts +23 -8
  491. package/lib/server/services/calendar/m/303/274ll-service.js +11 -5
  492. package/lib/server/services/calendar/name-date-pair.d.ts +5 -0
  493. package/lib/server/services/calendar/name-date-pair.js +10 -0
  494. package/lib/server/services/dbo/iPersist.d.ts +103 -0
  495. package/lib/server/services/dbo/postgreSqlPersist.d.ts +23 -0
  496. package/lib/server/services/dbo/postgreSqlPersist.js +29 -6
  497. package/lib/server/services/file-info.d.ts +5 -0
  498. package/lib/server/services/file-info.js +10 -0
  499. package/lib/server/services/govee/govee-device-data.d.ts +25 -0
  500. package/lib/server/services/govee/govee-device-data.js +2 -0
  501. package/lib/server/services/govee/govee-service.d.ts +7 -9
  502. package/lib/server/services/govee/govee-service.js +73 -48
  503. package/lib/server/services/govee/own-govee-device.d.ts +20 -17
  504. package/lib/server/services/govee/own-govee-device.js +72 -58
  505. package/lib/server/services/govee/own-govee-devices.d.ts +3 -0
  506. package/lib/server/services/govee/own-govee-devices.js +3 -0
  507. package/lib/server/services/https-service.d.ts +3 -2
  508. package/lib/server/services/https-service.js +4 -3
  509. package/lib/server/services/index.d.ts +1 -0
  510. package/lib/server/services/index.js +3 -0
  511. package/lib/server/services/log-service/index.d.ts +1 -0
  512. package/lib/server/services/log-service/index.js +3 -0
  513. package/lib/server/services/log-service/log-debug-type.d.ts +13 -0
  514. package/lib/server/services/log-service/log-debug-type.js +17 -0
  515. package/lib/server/services/log-service/log-filter-data.d.ts +21 -12
  516. package/lib/server/services/log-service/log-filter-data.js +6 -15
  517. package/lib/server/services/log-service/log-service.d.ts +17 -4
  518. package/lib/server/services/log-service/log-service.js +30 -17
  519. package/lib/server/services/news-service.d.ts +9 -7
  520. package/lib/server/services/news-service.js +14 -15
  521. package/lib/server/services/room-service/room-service.d.ts +20 -4
  522. package/lib/server/services/room-service/room-service.js +26 -10
  523. package/lib/server/services/settings-service.d.ts +6 -2
  524. package/lib/server/services/settings-service.js +3 -2
  525. package/lib/server/services/time-callback-service.js +1 -1
  526. package/lib/server/services/utils/RGB.d.ts +6 -0
  527. package/lib/server/services/utils/RGB.js +11 -0
  528. package/lib/server/services/utils/catchEmResult.d.ts +5 -0
  529. package/lib/server/services/utils/catchEmResult.js +10 -0
  530. package/lib/server/services/utils/energy-consumer-state-change.d.ts +6 -0
  531. package/lib/server/services/utils/energy-consumer-state-change.js +10 -0
  532. package/lib/server/services/utils/energy-manager-utils.d.ts +3 -14
  533. package/lib/server/services/utils/energy-manager-utils.js +2 -2
  534. package/lib/server/services/utils/iDisposeable.d.ts +6 -0
  535. package/lib/server/services/utils/index.d.ts +4 -1
  536. package/lib/server/services/utils/index.js +8 -1
  537. package/lib/server/services/utils/{ringstorage.d.ts → ringStorage.d.ts} +1 -1
  538. package/lib/server/services/utils/{ringstorage.js → ringStorage.js} +3 -3
  539. package/lib/server/services/utils/utils.d.ts +9 -14
  540. package/lib/server/services/utils/utils.js +5 -1
  541. package/lib/server/services/victron/victron-device.d.ts +21 -10
  542. package/lib/server/services/victron/victron-device.js +69 -25
  543. package/lib/server/services/weather/index.d.ts +2 -0
  544. package/lib/server/services/weather/index.js +3 -0
  545. package/lib/server/services/weather/rain-next-minutes-info.d.ts +5 -0
  546. package/lib/server/services/weather/rain-next-minutes-info.js +10 -0
  547. package/lib/server/services/weather/weather-current.d.ts +0 -2
  548. package/lib/server/services/weather/weather-feelsLike.d.ts +15 -0
  549. package/lib/server/services/weather/weather-response.d.ts +16 -0
  550. package/lib/server/services/weather/weather-response.js +2 -0
  551. package/lib/server/services/weather/weather-service.d.ts +16 -18
  552. package/lib/server/services/weather/weather-service.js +39 -24
  553. package/lib/server/services/weather/weather-temp.d.ts +21 -0
  554. package/lib/tsconfig.tsbuildinfo +1 -1
  555. package/package.json +31 -31
  556. package/lib/models/iTemperaturDataPoint.d.ts +0 -9
  557. package/lib/models/persistence/RoomDetailInfo.d.ts +0 -6
  558. package/lib/models/persistence/RoomDetailInfo.js +0 -11
  559. package/lib/models/persistence/temperaturDataPoint.d.ts +0 -10
  560. package/lib/models/persistence/temperaturDataPoint.js +0 -14
  561. /package/lib/models/{iTemperaturDataPoint.js → iJsonOmitKeys.js} +0 -0
@@ -1,12 +1,37 @@
1
- /// <reference types="node" />
2
1
  import { iRoomDevice } from './iRoomDevice';
2
+ import { TemperatureSensorChangeAction } from '../../../models';
3
+ import { TemperatureSensor } from '../sharedFunctions';
3
4
  export declare const UNDEFINED_TEMP_VALUE = -99;
5
+ /**
6
+ * This interface represents a temperature sensor device.
7
+ *
8
+ * For devices with {@link DeviceCapability.temperatureSensor} capability.
9
+ */
4
10
  export interface iTemperatureSensor extends iRoomDevice {
5
- readonly persistTemperatureSensorInterval: NodeJS.Timeout;
11
+ /**
12
+ * Service which handles common aspects of the temperature sensor like persisting
13
+ */
14
+ readonly temperatureSensor: TemperatureSensor;
15
+ /**
16
+ * The current room temperature as a number in Celsius
17
+ */
6
18
  roomTemperature: number;
7
- iTemperature: number;
19
+ /**
20
+ * The devices measured Temperature as a number in Celsius
21
+ */
22
+ readonly iTemperature: number;
23
+ /**
24
+ * Formatted Temperature as a string in Celsius
25
+ */
8
26
  sTemperature: string;
9
- addTempChangeCallback(pCallback: (pValue: number) => void): void;
27
+ /**
28
+ * Adds a callback to be called when the temperature changes
29
+ * @param pCallback - The callback to be called
30
+ */
31
+ addTempChangeCallback(pCallback: (action: TemperatureSensorChangeAction) => void): void;
32
+ /**
33
+ * Inform the temperature sensor that the temperature in the room has changed
34
+ * @param newTemperatur - The new temperature in the room in Celsius
35
+ */
10
36
  onTemperaturChange(newTemperatur: number): void;
11
- persistTemperaturSensor(): void;
12
37
  }
@@ -1,7 +1,20 @@
1
1
  import { BlockAutomaticHandler } from '../../services/blockAutomaticHandler';
2
2
  import { iBaseDevice } from './iBaseDevice';
3
3
  import { RestoreTargetAutomaticValueCommand } from '../../../models';
4
+ /**
5
+ * This interface represents a device which automatic action can be temporarily disabled.
6
+ * E.g. Forcing a lamp to stay on, even if the automatic would turn it off.
7
+ *
8
+ * For devices with {@link DeviceCapability.blockAutomatic} capability.
9
+ */
4
10
  export interface iTemporaryDisableAutomatic extends iBaseDevice {
11
+ /**
12
+ * The block automation handler containing the current block state/time, etc.
13
+ */
5
14
  readonly blockAutomationHandler: BlockAutomaticHandler;
15
+ /**
16
+ * Restores the automatic value/state of the device
17
+ * @param command - The command to restore the automatic value/state
18
+ */
6
19
  restoreTargetAutomaticValue(command: RestoreTargetAutomaticValueCommand): void;
7
20
  }
@@ -1,8 +1,28 @@
1
1
  import { iRoomDevice } from './iRoomDevice';
2
+ /**
3
+ * This interface represents a TV device.
4
+ *
5
+ * For devices with {@link DeviceCapability.tv} capability.
6
+ */
2
7
  export interface iTvDevice extends iRoomDevice {
8
+ /**
9
+ * Whether the TV is currently on
10
+ */
3
11
  readonly on: boolean;
12
+ /**
13
+ * Turns the TV on
14
+ */
4
15
  turnOn(): void;
16
+ /**
17
+ * Turns the TV off
18
+ */
5
19
  turnOff(): void;
20
+ /**
21
+ * Increases the volume of the TV
22
+ */
6
23
  volumeUp(): void;
24
+ /**
25
+ * Decreases the volume of the TV
26
+ */
7
27
  volumeDown(): void;
8
28
  }
@@ -1,9 +1,28 @@
1
1
  import { iRoomDevice } from './iRoomDevice';
2
+ /**
3
+ * This interface represents a vibration sensor device.
4
+ *
5
+ * For devices with {@link DeviceCapability.vibrationSensor} capability.
6
+ */
2
7
  export interface iVibrationSensor extends iRoomDevice {
3
- vibrationBlockedByGriff: boolean;
4
- vibrationBlockedByGriffTimeStamp: number;
8
+ /**
9
+ * Whether the vibration sensor is currently blocked by a handle.
10
+ */
11
+ vibrationBlockedByHandle: boolean;
12
+ /**
13
+ * The timestamp when the vibration sensor was blocked by a handle.
14
+ */
15
+ readonly vibrationBlockedByHandleTimeStamp: number;
16
+ /**
17
+ * Whether the vibration sensor is currently blocked by a motion event.
18
+ */
5
19
  vibrationBlockedByMotion: boolean;
6
- vibrationBlockedByMotionTimeStamp: number;
7
- vibration: boolean;
8
- alarmCheck(): void;
20
+ /**
21
+ * The timestamp when the vibration sensor was last blocked by a motion event.
22
+ */
23
+ readonly vibrationBlockedByMotionTimeStamp: number;
24
+ /**
25
+ * Whether the vibration sensor is currently detecting a vibration.
26
+ */
27
+ readonly vibration: boolean;
9
28
  }
@@ -22,3 +22,4 @@ export * from './iTemperatureSensor';
22
22
  export * from './iTemporaryDisableAutomatic';
23
23
  export * from './iTvDevice';
24
24
  export * from './iVibrationSensor';
25
+ export { iMagnetSensor } from './iMagnetSensor';
@@ -1,68 +1,83 @@
1
- import { iCameraDevice, iRoomDevice } from '../baseDeviceInterfaces';
2
- import { CameraSettings, LogLevel, RoomBase } from '../../../models';
1
+ import { iBaseDevice, iCameraDevice, iRoomDevice } from '../baseDeviceInterfaces';
2
+ import { CameraSettings, LogLevel, MotionSensorAction, RoomBase } from '../../../models';
3
3
  import { LogDebugType } from '../../services';
4
4
  import { DeviceInfo } from '../DeviceInfo';
5
5
  import { DeviceCapability } from '../DeviceCapability';
6
6
  import { DeviceType } from '../deviceType';
7
7
  export declare class CameraDevice implements iCameraDevice {
8
+ /**
9
+ * The name of the camera in BlueIris
10
+ */
8
11
  readonly blueIrisName: string;
12
+ /** @inheritDoc */
13
+ settings: CameraSettings;
14
+ /** @inheritDoc */
15
+ readonly deviceCapabilities: DeviceCapability[];
16
+ /** @inheritDoc */
17
+ deviceType: DeviceType;
18
+ /**
19
+ * The human readable name of this device
20
+ */
21
+ readonly name: string;
22
+ /** @inheritDoc */
23
+ readonly mpegStreamLink: string;
24
+ /** @inheritDoc */
25
+ readonly h264IosStreamLink: string;
26
+ /** @inheritDoc */
27
+ readonly rtspStreamLink: string;
28
+ /** @inheritDoc */
29
+ readonly currentImageLink: string;
30
+ /** @inheritDoc */
31
+ detectionsToday: number;
32
+ protected _lastMotion: number;
9
33
  private _personDetectFallbackTimeout;
10
34
  private _movementDetectFallbackTimeout;
11
35
  private _dogDetectFallbackTimeout;
12
36
  private _personDetectedStateId;
13
37
  private _dogDetectedStateId;
14
38
  private _movementDetectedStateId;
15
- get lastImage(): string;
16
- settings: CameraSettings;
17
- readonly deviceCapabilities: DeviceCapability[];
18
- deviceType: DeviceType;
19
- readonly name: string;
20
- protected _lastMotion: number;
21
39
  private _initialized;
22
40
  private _movementDetectedCallback;
23
41
  private _lastImage;
24
42
  private _personDetected;
25
43
  private _dogDetected;
26
- private _alarmGriffBlockCount;
27
- private _alarmBlockedByGriffTimeStamp;
28
- readonly mpegStreamLink: string;
29
- readonly h264IosStreamLink: string;
30
- readonly rtspStreamLink: string;
31
- readonly currentImageLink: string;
44
+ private _devicesBlockingAlarmMap;
45
+ private _movementDetected;
46
+ private _info;
47
+ constructor(mqttName: string, roomName: string, blueIrisName: string);
48
+ /** @inheritDoc */
49
+ get lastImage(): string;
50
+ /** @inheritDoc */
32
51
  get dogDetected(): boolean;
52
+ /** @inheritDoc */
33
53
  get personDetected(): boolean;
34
- get alarmBlockedByGriffTimeStamp(): number;
35
- get alarmBlockedByGriff(): boolean;
36
- constructor(mqttName: string, roomName: string, blueIrisName: string);
37
- private _detectionsToday;
38
- get detectionsToday(): number;
39
- set detectionsToday(pVal: number);
40
- private _movementDetected;
54
+ /** @inheritDoc */
55
+ get alarmBlockedByDevices(): boolean;
56
+ /** @inheritDoc */
41
57
  get movementDetected(): boolean;
42
- private _info;
58
+ /** @inheritDoc */
43
59
  get info(): DeviceInfo;
44
- set info(info: DeviceInfo);
45
- /**
46
- * Time since Last Motion in seconds
47
- * @returns {number}
48
- */
60
+ /** @inheritDoc */
49
61
  get timeSinceLastMotion(): number;
62
+ /** @inheritDoc */
50
63
  get customName(): string;
64
+ /** @inheritDoc */
51
65
  get id(): string;
66
+ /** @inheritDoc */
52
67
  get room(): RoomBase | undefined;
53
- /**
54
- * Adds a callback for when a motion state has changed.
55
- * @param pCallback Function that accepts the new state as parameter
56
- */
57
- addMovementCallback(pCallback: (newState: boolean) => void): void;
58
- onGriffUpdate(open: boolean): void;
68
+ /** @inheritDoc */
69
+ addMovementCallback(pCallback: (action: MotionSensorAction) => void): void;
70
+ /** @inheritDoc */
71
+ blockForDevice(device: iBaseDevice, block: boolean): void;
72
+ /** @inheritDoc */
59
73
  persistMotionSensor(): void;
74
+ /** @inheritDoc */
60
75
  update(idSplit: string[], state: ioBroker.State): void;
61
- updateMovement(newState: boolean): void;
62
76
  log(level: LogLevel, message: string, debugType?: LogDebugType): void;
63
77
  toJSON(): Partial<iRoomDevice>;
64
78
  persistDeviceInfo(): void;
65
79
  loadDeviceSettings(): void;
80
+ private updateMovement;
66
81
  private resetPersonDetectFallbackTimer;
67
82
  private resetDogDetectFallbackTimer;
68
83
  private resetMovementFallbackTimer;
@@ -14,45 +14,37 @@ const DeviceCapability_1 = require("../DeviceCapability");
14
14
  const deviceType_1 = require("../deviceType");
15
15
  const ioBroker_1 = require("../../ioBroker");
16
16
  class CameraDevice {
17
- get lastImage() {
18
- return this._lastImage;
19
- }
20
- get dogDetected() {
21
- return this._dogDetected;
22
- }
23
- get personDetected() {
24
- return this._personDetected;
25
- }
26
- get alarmBlockedByGriffTimeStamp() {
27
- return this._alarmBlockedByGriffTimeStamp;
28
- }
29
- get alarmBlockedByGriff() {
30
- return this._alarmGriffBlockCount > 0;
31
- }
32
17
  constructor(mqttName, roomName, blueIrisName) {
33
18
  var _a;
19
+ /** @inheritDoc */
20
+ this.settings = new models_1.CameraSettings();
21
+ /** @inheritDoc */
22
+ this.deviceCapabilities = [DeviceCapability_1.DeviceCapability.camera, DeviceCapability_1.DeviceCapability.motionSensor];
23
+ /** @inheritDoc */
24
+ this.deviceType = deviceType_1.DeviceType.Camera;
25
+ /** @inheritDoc */
26
+ this.mpegStreamLink = '';
27
+ /** @inheritDoc */
28
+ this.h264IosStreamLink = '';
29
+ /** @inheritDoc */
30
+ this.rtspStreamLink = '';
31
+ /** @inheritDoc */
32
+ this.currentImageLink = '';
33
+ /** @inheritDoc */
34
+ this.detectionsToday = 0;
35
+ this._lastMotion = 0;
34
36
  this._personDetectFallbackTimeout = null;
35
37
  this._movementDetectFallbackTimeout = null;
36
38
  this._dogDetectFallbackTimeout = null;
37
39
  this._personDetectedStateId = undefined;
38
40
  this._dogDetectedStateId = undefined;
39
41
  this._movementDetectedStateId = undefined;
40
- this.settings = new models_1.CameraSettings();
41
- this.deviceCapabilities = [DeviceCapability_1.DeviceCapability.camera, DeviceCapability_1.DeviceCapability.motionSensor];
42
- this.deviceType = deviceType_1.DeviceType.Camera;
43
- this._lastMotion = 0;
44
42
  this._initialized = false;
45
43
  this._movementDetectedCallback = [];
46
44
  this._lastImage = '';
47
45
  this._personDetected = false;
48
46
  this._dogDetected = false;
49
- this._alarmGriffBlockCount = 0;
50
- this._alarmBlockedByGriffTimeStamp = 0;
51
- this.mpegStreamLink = '';
52
- this.h264IosStreamLink = '';
53
- this.rtspStreamLink = '';
54
- this.currentImageLink = '';
55
- this._detectionsToday = 0;
47
+ this._devicesBlockingAlarmMap = new Map();
56
48
  this._movementDetected = false;
57
49
  this.blueIrisName = blueIrisName;
58
50
  this.name = mqttName;
@@ -87,59 +79,67 @@ class CameraDevice {
87
79
  });
88
80
  }
89
81
  }
90
- get detectionsToday() {
91
- return this._detectionsToday;
82
+ /** @inheritDoc */
83
+ get lastImage() {
84
+ return this._lastImage;
85
+ }
86
+ /** @inheritDoc */
87
+ get dogDetected() {
88
+ return this._dogDetected;
89
+ }
90
+ /** @inheritDoc */
91
+ get personDetected() {
92
+ return this._personDetected;
92
93
  }
93
- set detectionsToday(pVal) {
94
- this._detectionsToday = pVal;
94
+ /** @inheritDoc */
95
+ get alarmBlockedByDevices() {
96
+ return this._devicesBlockingAlarmMap.size > 0;
95
97
  }
98
+ /** @inheritDoc */
96
99
  get movementDetected() {
97
100
  return this._movementDetected;
98
101
  }
102
+ /** @inheritDoc */
99
103
  get info() {
100
104
  return this._info;
101
105
  }
102
- set info(info) {
103
- this._info = info;
104
- }
105
- /**
106
- * Time since Last Motion in seconds
107
- * @returns {number}
108
- */
106
+ /** @inheritDoc */
109
107
  get timeSinceLastMotion() {
110
108
  return Math.round((services_1.Utils.nowMS() - this._lastMotion) / 1000);
111
109
  }
110
+ /** @inheritDoc */
112
111
  get customName() {
113
112
  return this.info.customName;
114
113
  }
114
+ /** @inheritDoc */
115
115
  get id() {
116
116
  var _a;
117
117
  return (_a = this.info.allDevicesKey) !== null && _a !== void 0 ? _a : `camera-${this.info.room}-${this.info.customName}`;
118
118
  }
119
+ /** @inheritDoc */
119
120
  get room() {
120
121
  return services_1.API.getRoom(this.info.room);
121
122
  }
122
- /**
123
- * Adds a callback for when a motion state has changed.
124
- * @param pCallback Function that accepts the new state as parameter
125
- */
123
+ /** @inheritDoc */
126
124
  addMovementCallback(pCallback) {
127
125
  this._movementDetectedCallback.push(pCallback);
128
126
  }
129
- onGriffUpdate(open) {
130
- this._alarmGriffBlockCount += open ? 1 : -1;
131
- if (this._alarmGriffBlockCount < 0) {
132
- this._alarmGriffBlockCount = 0;
127
+ /** @inheritDoc */
128
+ blockForDevice(device, block) {
129
+ if (block) {
130
+ this._devicesBlockingAlarmMap.set(device.id, device);
133
131
  }
134
- if (this._alarmGriffBlockCount == 1) {
135
- this._alarmBlockedByGriffTimeStamp = new Date().getTime();
132
+ else {
133
+ this._devicesBlockingAlarmMap.delete(device.id);
136
134
  }
137
- this.log(models_1.LogLevel.Debug, `Handle change to open (${open}), new open amount: ${this._alarmGriffBlockCount}`);
135
+ this.log(models_1.LogLevel.Debug, `Handle device ${block ? 'block' : 'unblock'}, new blocking amount: ${this._devicesBlockingAlarmMap.size}`);
138
136
  }
137
+ /** @inheritDoc */
139
138
  persistMotionSensor() {
140
139
  var _a;
141
140
  (_a = services_1.Utils.dbo) === null || _a === void 0 ? void 0 : _a.persistMotionSensor(this);
142
141
  }
142
+ /** @inheritDoc */
143
143
  update(idSplit, state) {
144
144
  const stateName = idSplit[4];
145
145
  switch (stateName) {
@@ -160,7 +160,7 @@ class CameraDevice {
160
160
  const newValue = state.val === 1;
161
161
  this.log(models_1.LogLevel.Debug, `Update for "${stateName}" to value: ${state.val}`);
162
162
  if (newValue) {
163
- this.log(models_1.LogLevel.Info, `Person Detected`);
163
+ this.log(models_1.LogLevel.Info, 'Person Detected');
164
164
  this.resetPersonDetectFallbackTimer();
165
165
  }
166
166
  this._personDetected = newValue;
@@ -173,7 +173,7 @@ class CameraDevice {
173
173
  const newDogDetectionVal = state.val === 1;
174
174
  this.log(models_1.LogLevel.Debug, `Update for "${stateName}" to value: ${state.val}`);
175
175
  if (newDogDetectionVal) {
176
- this.log(models_1.LogLevel.Info, `Dog Detected`);
176
+ this.log(models_1.LogLevel.Info, 'Dog Detected');
177
177
  this.resetDogDetectFallbackTimer();
178
178
  }
179
179
  this._dogDetected = newDogDetectionVal;
@@ -185,36 +185,12 @@ class CameraDevice {
185
185
  this._lastImage = state.val;
186
186
  services_1.Utils.guardedTimeout(() => {
187
187
  // Give Person Detected Update some time, as otherwise personDetected might still be false
188
- if (this.settings.alertPersonOnTelegram && this._personDetected && !this.alarmBlockedByGriff) {
188
+ if (this.settings.alertPersonOnTelegram && this._personDetected && !this.alarmBlockedByDevices) {
189
189
  services_1.TelegramService.sendImage(`${this.name} detected Person`, new models_1.Base64Image(this._lastImage, 'person_alert'));
190
190
  }
191
191
  }, 1000);
192
192
  }
193
193
  }
194
- updateMovement(newState) {
195
- if (!this._initialized && newState) {
196
- this.log(models_1.LogLevel.Trace, `Movement recognized, but database initialization has not finished yet --> delay.`);
197
- services_1.Utils.guardedTimeout(() => {
198
- this.updateMovement(newState);
199
- }, 1000, this);
200
- return;
201
- }
202
- if (newState === this.movementDetected) {
203
- this.log(models_1.LogLevel.Debug, `Skip movement because state is already ${newState}`, services_1.LogDebugType.SkipUnchangedMovementState);
204
- return;
205
- }
206
- this._lastMotion = services_1.Utils.nowMS();
207
- this._movementDetected = newState;
208
- this.persistMotionSensor();
209
- this.log(models_1.LogLevel.Debug, `New movement state: ${newState}`, services_1.LogDebugType.NewMovementState);
210
- if (newState) {
211
- this.detectionsToday++;
212
- this.log(models_1.LogLevel.Trace, `This is movement no. ${this.detectionsToday}`);
213
- }
214
- for (const c of this._movementDetectedCallback) {
215
- c(newState);
216
- }
217
- }
218
194
  log(level, message, debugType = services_1.LogDebugType.None) {
219
195
  var _a, _b;
220
196
  services_1.ServerLogService.writeLog(level, `${this.name}: ${message}`, {
@@ -240,6 +216,30 @@ class CameraDevice {
240
216
  var _a;
241
217
  (_a = this.settings) === null || _a === void 0 ? void 0 : _a.initializeFromDb(this);
242
218
  }
219
+ updateMovement(newState) {
220
+ if (!this._initialized && newState) {
221
+ this.log(models_1.LogLevel.Trace, 'Movement recognized, but database initialization has not finished yet --> delay.');
222
+ services_1.Utils.guardedTimeout(() => {
223
+ this.updateMovement(newState);
224
+ }, 1000, this);
225
+ return;
226
+ }
227
+ if (newState === this.movementDetected) {
228
+ this.log(models_1.LogLevel.Debug, `Skip movement because state is already ${newState}`, services_1.LogDebugType.SkipUnchangedMovementState);
229
+ return;
230
+ }
231
+ this._lastMotion = services_1.Utils.nowMS();
232
+ this._movementDetected = newState;
233
+ this.persistMotionSensor();
234
+ this.log(models_1.LogLevel.Debug, `New movement state: ${newState}`, services_1.LogDebugType.NewMovementState);
235
+ if (newState) {
236
+ this.detectionsToday++;
237
+ this.log(models_1.LogLevel.Trace, `This is movement no. ${this.detectionsToday}`);
238
+ }
239
+ for (const c of this._movementDetectedCallback) {
240
+ c(new models_1.MotionSensorAction(this));
241
+ }
242
+ }
243
243
  resetPersonDetectFallbackTimer() {
244
244
  if (this._personDetectFallbackTimeout !== null) {
245
245
  clearTimeout(this._personDetectFallbackTimeout);
@@ -7,7 +7,6 @@ export declare class Button {
7
7
  private _callbacksMap;
8
8
  private _timeouts;
9
9
  constructor(name: string, buttonCapabilities: ButtonCapabilities);
10
- getState(type: ButtonPressType): boolean;
11
10
  addCb(buttonType: ButtonPressType, pCallback: (pValue: boolean) => void, description?: string): void;
12
11
  isPressActive(type: ButtonPressType): boolean | undefined;
13
12
  getDescription(): string;
@@ -32,10 +32,6 @@ class Button {
32
32
  this._statesMap.set(buttonPressType_1.ButtonPressType.triple, false);
33
33
  }
34
34
  }
35
- getState(type) {
36
- var _a;
37
- return (_a = this._statesMap.get(type)) !== null && _a !== void 0 ? _a : false;
38
- }
39
35
  addCb(buttonType, pCallback, description = 'Not described') {
40
36
  const cbArr = this._callbacksMap.get(buttonType);
41
37
  if (cbArr === undefined) {
@@ -0,0 +1,5 @@
1
+ export declare class ButtonCallback {
2
+ readonly cb: (pValue: boolean) => void;
3
+ readonly description: string;
4
+ constructor(cb: (pValue: boolean) => void, description: string);
5
+ }
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ButtonCallback = void 0;
4
+ class ButtonCallback {
5
+ constructor(cb, description) {
6
+ this.cb = cb;
7
+ this.description = description;
8
+ }
9
+ }
10
+ exports.ButtonCallback = ButtonCallback;
@@ -1,6 +1,18 @@
1
1
  export declare class ButtonCapabilities {
2
+ /**
3
+ * Whether the button supports short press
4
+ */
2
5
  shortPress: boolean;
6
+ /**
7
+ * Whether the button supports double press
8
+ */
3
9
  doublePress: boolean;
10
+ /**
11
+ * Whether the button supports triple press
12
+ */
4
13
  triplePress: boolean;
14
+ /**
15
+ * Whether the button supports long press
16
+ */
5
17
  longPress: boolean;
6
18
  }
@@ -3,9 +3,21 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.ButtonCapabilities = void 0;
4
4
  class ButtonCapabilities {
5
5
  constructor() {
6
+ /**
7
+ * Whether the button supports short press
8
+ */
6
9
  this.shortPress = true;
10
+ /**
11
+ * Whether the button supports double press
12
+ */
7
13
  this.doublePress = true;
14
+ /**
15
+ * Whether the button supports triple press
16
+ */
8
17
  this.triplePress = true;
18
+ /**
19
+ * Whether the button supports long press
20
+ */
9
21
  this.longPress = true;
10
22
  }
11
23
  }
@@ -2,3 +2,4 @@ export * from './button';
2
2
  export * from './buttonCapabilities';
3
3
  export * from './buttonPressType';
4
4
  export * from './buttonPosition';
5
+ export { ButtonCallback } from './buttonCallback';
@@ -14,7 +14,10 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
+ exports.ButtonCallback = void 0;
17
18
  __exportStar(require("./button"), exports);
18
19
  __exportStar(require("./buttonCapabilities"), exports);
19
20
  __exportStar(require("./buttonPressType"), exports);
20
21
  __exportStar(require("./buttonPosition"), exports);
22
+ var buttonCallback_1 = require("./buttonCallback");
23
+ Object.defineProperty(exports, "ButtonCallback", { enumerable: true, get: function () { return buttonCallback_1.ButtonCallback; } });