hoffmation-base 3.0.0-alpha.4 → 3.0.0-alpha.40

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 (501) hide show
  1. package/lib/index.d.ts +5 -1
  2. package/lib/index.js +20 -20
  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/humiditySensorChangeAction.d.ts +16 -0
  8. package/lib/models/action/humiditySensorChangeAction.js +15 -0
  9. package/lib/models/action/index.d.ts +7 -0
  10. package/lib/models/action/index.js +25 -0
  11. package/lib/models/action/motionSensorAction.d.ts +16 -0
  12. package/lib/models/action/motionSensorAction.js +15 -0
  13. package/lib/models/action/presenceGroupFirstEnterAction.d.ts +7 -0
  14. package/lib/models/action/presenceGroupFirstEnterAction.js +13 -0
  15. package/lib/models/action/presenceGroupLastLeftAction.d.ts +7 -0
  16. package/lib/models/action/presenceGroupLastLeftAction.js +13 -0
  17. package/lib/models/action/shutterPositionChangedAction.d.ts +13 -0
  18. package/lib/models/action/shutterPositionChangedAction.js +15 -0
  19. package/lib/models/action/temperatureSensorChangeAction.d.ts +16 -0
  20. package/lib/models/action/temperatureSensorChangeAction.js +15 -0
  21. package/lib/models/blockAutomaticSettings.d.ts +23 -0
  22. package/lib/models/blockAutomaticSettings.js +19 -0
  23. package/lib/models/command/ShutterSetLevelCommand.d.ts +9 -1
  24. package/lib/models/command/ShutterSetLevelCommand.js +9 -1
  25. package/lib/models/command/WindowRestoreDesiredPositionCommand.d.ts +7 -1
  26. package/lib/models/command/WindowRestoreDesiredPositionCommand.js +7 -1
  27. package/lib/models/command/WindowSetDesiredPositionCommand.d.ts +8 -1
  28. package/lib/models/command/WindowSetDesiredPositionCommand.js +8 -1
  29. package/lib/models/command/WindowSetRolloByWeatherStatusCommand.d.ts +7 -1
  30. package/lib/models/command/WindowSetRolloByWeatherStatusCommand.js +7 -1
  31. package/lib/models/command/actuatorSetStateCommand.d.ts +18 -3
  32. package/lib/models/command/actuatorSetStateCommand.js +15 -6
  33. package/lib/models/command/actuatorToggleCommand.d.ts +7 -2
  34. package/lib/models/command/actuatorToggleCommand.js +7 -4
  35. package/lib/models/command/actuatorWriteStateToDeviceCommand.d.ts +9 -2
  36. package/lib/models/command/actuatorWriteStateToDeviceCommand.js +13 -2
  37. package/lib/models/command/baseCommand.d.ts +23 -2
  38. package/lib/models/command/baseCommand.js +41 -1
  39. package/lib/models/command/blockAutomaticCommand.d.ts +32 -0
  40. package/lib/models/command/blockAutomaticCommand.js +40 -0
  41. package/lib/models/command/blockAutomaticLiftBlockCommand.d.ts +18 -0
  42. package/lib/models/command/blockAutomaticLiftBlockCommand.js +23 -0
  43. package/lib/models/command/blockAutomaticUntilCommand.d.ts +27 -0
  44. package/lib/models/command/blockAutomaticUntilCommand.js +32 -0
  45. package/lib/models/command/commandSource.d.ts +19 -0
  46. package/lib/models/command/commandSource.js +20 -0
  47. package/lib/models/command/commandType.d.ts +9 -0
  48. package/lib/models/command/commandType.js +9 -0
  49. package/lib/models/command/dimmerSetLightCommand.d.ts +13 -8
  50. package/lib/models/command/dimmerSetLightCommand.js +20 -14
  51. package/lib/models/command/floorSetAllShuttersCommand.d.ts +6 -5
  52. package/lib/models/command/floorSetAllShuttersCommand.js +6 -5
  53. package/lib/models/command/index.d.ts +3 -0
  54. package/lib/models/command/index.js +7 -1
  55. package/lib/models/command/lampSetLightCommand.d.ts +13 -2
  56. package/lib/models/command/lampSetLightCommand.js +15 -4
  57. package/lib/models/command/lampSetTimeBasedCommand.d.ts +15 -8
  58. package/lib/models/command/lampSetTimeBasedCommand.js +9 -11
  59. package/lib/models/command/lampToggleLightCommand.d.ts +7 -6
  60. package/lib/models/command/lampToggleLightCommand.js +7 -6
  61. package/lib/models/command/ledSetLightCommand.d.ts +21 -11
  62. package/lib/models/command/ledSetLightCommand.js +27 -17
  63. package/lib/models/command/lightGroupSwitchTimeConditionalCommand.d.ts +8 -1
  64. package/lib/models/command/lightGroupSwitchTimeConditionalCommand.js +8 -1
  65. package/lib/models/command/restoreTargetAutomaticValueCommand.d.ts +7 -2
  66. package/lib/models/command/restoreTargetAutomaticValueCommand.js +7 -4
  67. package/lib/models/command/roomRestoreLightCommand.d.ts +7 -1
  68. package/lib/models/command/roomRestoreLightCommand.js +7 -1
  69. package/lib/models/command/roomRestoreShutterPositionCommand.d.ts +8 -1
  70. package/lib/models/command/roomRestoreShutterPositionCommand.js +8 -1
  71. package/lib/models/command/roomSetLightTimeBasedCommand.d.ts +5 -4
  72. package/lib/models/command/roomSetLightTimeBasedCommand.js +5 -4
  73. package/lib/models/command/shutterSunriseUpCommand.d.ts +7 -1
  74. package/lib/models/command/shutterSunriseUpCommand.js +7 -1
  75. package/lib/models/command/shutterSunsetDownCommand.d.ts +7 -1
  76. package/lib/models/command/shutterSunsetDownCommand.js +7 -1
  77. package/lib/models/command/wledSetLightCommand.d.ts +16 -2
  78. package/lib/models/command/wledSetLightCommand.js +23 -7
  79. package/lib/models/connectionCallbacks.d.ts +4 -4
  80. package/lib/models/connectionCallbacks.js +1 -0
  81. package/lib/models/deviceConfig.d.ts +3 -3
  82. package/lib/models/deviceSettings/acSettings.d.ts +19 -5
  83. package/lib/models/deviceSettings/acSettings.js +23 -8
  84. package/lib/models/deviceSettings/actuatorSettings.d.ts +13 -4
  85. package/lib/models/deviceSettings/actuatorSettings.js +19 -9
  86. package/lib/models/deviceSettings/cameraSettings.d.ts +12 -0
  87. package/lib/models/deviceSettings/cameraSettings.js +12 -0
  88. package/lib/models/deviceSettings/dachsSettings.d.ts +3 -0
  89. package/lib/models/deviceSettings/dachsSettings.js +3 -0
  90. package/lib/models/deviceSettings/deviceSettings.d.ts +10 -0
  91. package/lib/models/deviceSettings/deviceSettings.js +16 -0
  92. package/lib/models/deviceSettings/dimmerSettings.d.ts +20 -0
  93. package/lib/models/deviceSettings/dimmerSettings.js +20 -0
  94. package/lib/models/deviceSettings/garageDoorOpenerSettings.d.ts +0 -1
  95. package/lib/models/deviceSettings/garageDoorOpenerSettings.js +0 -1
  96. package/lib/models/deviceSettings/handleSettings.d.ts +9 -0
  97. package/lib/models/deviceSettings/handleSettings.js +9 -0
  98. package/lib/models/deviceSettings/heaterSettings.d.ts +21 -9
  99. package/lib/models/deviceSettings/heaterSettings.js +21 -9
  100. package/lib/models/deviceSettings/ledSettings.d.ts +66 -0
  101. package/lib/models/deviceSettings/ledSettings.js +76 -18
  102. package/lib/models/deviceSettings/motionSensorSettings.d.ts +5 -1
  103. package/lib/models/deviceSettings/motionSensorSettings.js +5 -1
  104. package/lib/models/deviceSettings/sceneSettings.d.ts +4 -0
  105. package/lib/models/deviceSettings/shutterSettings.d.ts +11 -3
  106. package/lib/models/deviceSettings/shutterSettings.js +11 -3
  107. package/lib/models/deviceSettings/sonosDeviceSettings.d.ts +4 -0
  108. package/lib/models/deviceSettings/sonosDeviceSettings.js +4 -0
  109. package/lib/models/deviceSettings/tvSettings.d.ts +4 -0
  110. package/lib/models/deviceSettings/victronDeviceSettings.d.ts +34 -0
  111. package/lib/models/deviceSettings/victronDeviceSettings.js +34 -0
  112. package/lib/models/deviceSettings/wledSettings.d.ts +48 -0
  113. package/lib/models/deviceSettings/wledSettings.js +37 -13
  114. package/lib/models/groupSettings/heatGroupSettings.d.ts +12 -1
  115. package/lib/models/groupSettings/heatGroupSettings.js +12 -1
  116. package/lib/models/iIdHolder.d.ts +18 -0
  117. package/lib/models/index.d.ts +2 -1
  118. package/lib/models/index.js +4 -1
  119. package/lib/models/objectSettings.d.ts +5 -2
  120. package/lib/models/objectSettings.js +2 -2
  121. package/lib/models/persistence/EnergyCalculation.d.ts +27 -0
  122. package/lib/models/persistence/EnergyCalculation.js +30 -4
  123. package/lib/models/persistence/index.d.ts +0 -2
  124. package/lib/models/persistence/index.js +0 -2
  125. package/lib/models/rooms/RoomBase.d.ts +12 -1
  126. package/lib/models/rooms/RoomBase.js +17 -8
  127. package/lib/models/rooms/RoomSettings/RoomInitializationSettings.d.ts +2 -1
  128. package/lib/models/rooms/RoomSettings/RoomInitializationSettings.js +2 -2
  129. package/lib/models/rooms/RoomSettings/RoomSettingsController.d.ts +10 -1
  130. package/lib/models/rooms/RoomSettings/RoomSettingsController.js +2 -2
  131. package/lib/models/rooms/RoomSettings/iRoomDefaultSettings.d.ts +53 -3
  132. package/lib/models/rooms/RoomSettings/iRoomInitializationSettings.d.ts +10 -1
  133. package/lib/models/rooms/RoomSettings/roomDeviceAddingSettings.d.ts +4 -1
  134. package/lib/models/rooms/RoomSettings/roomDeviceAddingSettings.js +3 -0
  135. package/lib/models/rooms/RoomSettings/roomSettings.d.ts +55 -0
  136. package/lib/models/rooms/RoomSettings/roomSettings.js +55 -0
  137. package/lib/models/rooms/iRoomBase.d.ts +39 -0
  138. package/lib/models/rooms/iRoomImportEnforcer.d.ts +8 -0
  139. package/lib/models/timeCallback.d.ts +7 -0
  140. package/lib/models/timeCallback.js +16 -6
  141. package/lib/server/config/heatingMode.d.ts +2 -1
  142. package/lib/server/config/heatingMode.js +2 -1
  143. package/lib/server/config/iAsusConfig.d.ts +15 -0
  144. package/lib/server/config/iBlockAutomaticHandlerDefaults.d.ts +23 -0
  145. package/lib/server/config/iBlueIrisSettings.d.ts +14 -0
  146. package/lib/server/config/iBluetoothTrackingSettings.d.ts +9 -0
  147. package/lib/server/config/iConfig.d.ts +92 -5
  148. package/lib/server/config/iDachsSettings.d.ts +16 -0
  149. package/lib/server/config/iDaikinSettings.d.ts +17 -0
  150. package/lib/server/config/iEnergyManagerSettings.d.ts +13 -0
  151. package/lib/server/config/iEspresenseSettings.d.ts +10 -0
  152. package/lib/server/config/iHeaterSettings.d.ts +8 -0
  153. package/lib/server/config/iIobrokerSettigns.d.ts +8 -0
  154. package/lib/server/config/iLogSettings.d.ts +36 -1
  155. package/lib/server/config/iMp3Settings.d.ts +10 -0
  156. package/lib/server/config/iMuellSettings.d.ts +7 -0
  157. package/lib/server/config/iNewsSettings.d.ts +13 -0
  158. package/lib/server/config/iPersistenceSettings.d.ts +10 -0
  159. package/lib/server/config/iPollySettings.d.ts +22 -0
  160. package/lib/server/config/iRestSettings.d.ts +10 -0
  161. package/lib/server/config/iSonosSettings.d.ts +10 -0
  162. package/lib/server/config/iTelegramSettings.d.ts +17 -0
  163. package/lib/server/config/iTibberSettings.d.ts +10 -0
  164. package/lib/server/config/iTimePair.d.ts +9 -0
  165. package/lib/server/config/iTimeSettings.d.ts +9 -0
  166. package/lib/server/config/iTranslationSettings.d.ts +10 -0
  167. package/lib/server/config/iUnifiConnectionOptions.d.ts +31 -0
  168. package/lib/server/config/iUnifiSettings.d.ts +8 -0
  169. package/lib/server/config/iVictronSettings.d.ts +14 -0
  170. package/lib/server/config/iWeatherSettings.d.ts +13 -0
  171. package/lib/server/config/index.d.ts +1 -0
  172. package/lib/server/devices/DeviceCapability.d.ts +1 -0
  173. package/lib/server/devices/DeviceCapability.js +1 -0
  174. package/lib/server/devices/DeviceInfo.d.ts +9 -0
  175. package/lib/server/devices/DeviceInfo.js +6 -0
  176. package/lib/server/devices/Griffe.js +1 -2
  177. package/lib/server/devices/Heizgruppen.js +2 -2
  178. package/lib/server/devices/IoBrokerBaseDevice.d.ts +34 -18
  179. package/lib/server/devices/IoBrokerBaseDevice.js +37 -21
  180. package/lib/server/devices/IoBrokerDeviceInfo.d.ts +2 -2
  181. package/lib/server/devices/IoBrokerDeviceInfo.js +6 -4
  182. package/lib/server/devices/baseDeviceInterfaces/iAcDevice.d.ts +41 -3
  183. package/lib/server/devices/baseDeviceInterfaces/iActuator.d.ts +18 -0
  184. package/lib/server/devices/baseDeviceInterfaces/iBaseDevice.d.ts +26 -1
  185. package/lib/server/devices/baseDeviceInterfaces/iBatteryDevice.d.ts +12 -1
  186. package/lib/server/devices/baseDeviceInterfaces/iBluetoothDetector.d.ts +15 -7
  187. package/lib/server/devices/baseDeviceInterfaces/iButtonSwitch.d.ts +42 -0
  188. package/lib/server/devices/baseDeviceInterfaces/iCameraDevice.d.ts +46 -3
  189. package/lib/server/devices/baseDeviceInterfaces/iDimmableLamp.d.ts +17 -2
  190. package/lib/server/devices/baseDeviceInterfaces/iEnergyManager.d.ts +32 -2
  191. package/lib/server/devices/baseDeviceInterfaces/iExcessEnergyConsumer.d.ts +30 -2
  192. package/lib/server/devices/baseDeviceInterfaces/iGarageDoorOpener.d.ts +21 -0
  193. package/lib/server/devices/baseDeviceInterfaces/iHandleSensor.d.ts +24 -0
  194. package/lib/server/devices/baseDeviceInterfaces/iHeater.d.ts +40 -4
  195. package/lib/server/devices/baseDeviceInterfaces/iHumiditySensor.d.ts +21 -1
  196. package/lib/server/devices/baseDeviceInterfaces/iIlluminationSensor.d.ts +11 -0
  197. package/lib/server/devices/baseDeviceInterfaces/iLamp.d.ts +7 -2
  198. package/lib/server/devices/baseDeviceInterfaces/iLedRgbCct.d.ts +20 -0
  199. package/lib/server/devices/baseDeviceInterfaces/iLoadMeter.d.ts +5 -0
  200. package/lib/server/devices/baseDeviceInterfaces/iMagnetSensor.d.ts +31 -0
  201. package/lib/server/devices/baseDeviceInterfaces/iMagnetSensor.js +2 -0
  202. package/lib/server/devices/baseDeviceInterfaces/iMotionSensor.d.ts +23 -3
  203. package/lib/server/devices/baseDeviceInterfaces/iRoomDevice.d.ts +6 -0
  204. package/lib/server/devices/baseDeviceInterfaces/iScene.d.ts +31 -1
  205. package/lib/server/devices/baseDeviceInterfaces/iShutter.d.ts +25 -1
  206. package/lib/server/devices/baseDeviceInterfaces/iSmokeDetectorDevice.d.ts +12 -0
  207. package/lib/server/devices/baseDeviceInterfaces/iSpeaker.d.ts +30 -0
  208. package/lib/server/devices/baseDeviceInterfaces/iTemperatureSensor.d.ts +32 -2
  209. package/lib/server/devices/baseDeviceInterfaces/iTemporaryDisableAutomatic.d.ts +13 -0
  210. package/lib/server/devices/baseDeviceInterfaces/iTvDevice.d.ts +20 -0
  211. package/lib/server/devices/baseDeviceInterfaces/iVibrationSensor.d.ts +24 -5
  212. package/lib/server/devices/baseDeviceInterfaces/index.d.ts +1 -0
  213. package/lib/server/devices/blueIris/cameraDevice.d.ts +49 -34
  214. package/lib/server/devices/blueIris/cameraDevice.js +75 -75
  215. package/lib/server/devices/button/button.d.ts +0 -1
  216. package/lib/server/devices/button/button.js +0 -4
  217. package/lib/server/devices/button/buttonCallback.d.ts +5 -0
  218. package/lib/server/devices/button/buttonCallback.js +10 -0
  219. package/lib/server/devices/button/buttonCapabilities.d.ts +12 -0
  220. package/lib/server/devices/button/buttonCapabilities.js +12 -0
  221. package/lib/server/devices/button/index.d.ts +1 -0
  222. package/lib/server/devices/button/index.js +3 -0
  223. package/lib/server/devices/dachs/dachs.d.ts +31 -9
  224. package/lib/server/devices/dachs/dachs.js +28 -18
  225. package/lib/server/devices/dachs/dachsTemperatureSensor.d.ts +22 -3
  226. package/lib/server/devices/dachs/dachsTemperatureSensor.js +23 -5
  227. package/lib/server/devices/dachs/interfaces/DachsClientOptions.d.ts +30 -0
  228. package/lib/server/devices/dachs/interfaces/KeyListEntity.d.ts +0 -8
  229. package/lib/server/devices/dachs/interfaces/KeyListEntity.js +0 -8
  230. package/lib/server/devices/dachs/interfaces/dachsInfluxDataPoint.d.ts +12 -0
  231. package/lib/server/devices/dachs/interfaces/influxDbConnectionOptions.d.ts +21 -1
  232. package/lib/server/devices/dachs/lib/dachsHttpClient.d.ts +1 -1
  233. package/lib/server/devices/dachs/lib/dachsHttpClient.js +2 -2
  234. package/lib/server/devices/device-cluster.d.ts +3 -0
  235. package/lib/server/devices/device-cluster.js +1 -1
  236. package/lib/server/devices/deviceUpdater.d.ts +0 -3
  237. package/lib/server/devices/deviceUpdater.js +1 -4
  238. package/lib/server/devices/devices.d.ts +43 -7
  239. package/lib/server/devices/devices.js +42 -6
  240. package/lib/server/devices/espresense/detectedBluetoothDevice.d.ts +13 -0
  241. package/lib/server/devices/espresense/detectedBluetoothDevice.js +14 -1
  242. package/lib/server/devices/espresense/espresenseDevice.d.ts +31 -1
  243. package/lib/server/devices/espresense/espresenseDevice.js +28 -4
  244. package/lib/server/devices/espresense/trackedDistanceData.d.ts +12 -0
  245. package/lib/server/devices/espresense/trackedDistanceData.js +3 -0
  246. package/lib/server/devices/espresense/trilateration.d.ts +7 -0
  247. package/lib/server/devices/espresense/trilateration.js +7 -0
  248. package/lib/server/devices/espresense/trilaterationBasePoint.d.ts +6 -0
  249. package/lib/server/devices/espresense/trilaterationBasePoint.js +3 -0
  250. package/lib/server/devices/espresense/trilaterationPoint.d.ts +1 -1
  251. package/lib/server/devices/espresense/trilaterationPoint.js +3 -1
  252. package/lib/server/devices/groups/Window.d.ts +9 -3
  253. package/lib/server/devices/groups/Window.js +19 -11
  254. package/lib/server/devices/groups/base-group.d.ts +4 -0
  255. package/lib/server/devices/groups/base-group.js +3 -0
  256. package/lib/server/devices/groups/heatGroup.d.ts +8 -6
  257. package/lib/server/devices/groups/heatGroup.js +11 -11
  258. package/lib/server/devices/groups/lightGroup.d.ts +10 -2
  259. package/lib/server/devices/groups/lightGroup.js +16 -34
  260. package/lib/server/devices/groups/presenceGroup.d.ts +11 -4
  261. package/lib/server/devices/groups/presenceGroup.js +52 -62
  262. package/lib/server/devices/groups/tasterGroup.js +6 -6
  263. package/lib/server/devices/groups/windowGroup.d.ts +11 -1
  264. package/lib/server/devices/groups/windowGroup.js +6 -6
  265. package/lib/server/devices/hmIPDevices/hmIpAccessPoint.d.ts +1 -0
  266. package/lib/server/devices/hmIPDevices/hmIpAccessPoint.js +1 -0
  267. package/lib/server/devices/hmIPDevices/hmIpBewegung.d.ts +9 -6
  268. package/lib/server/devices/hmIPDevices/hmIpBewegung.js +10 -11
  269. package/lib/server/devices/hmIPDevices/hmIpDevice.d.ts +1 -2
  270. package/lib/server/devices/hmIPDevices/hmIpDevice.js +2 -3
  271. package/lib/server/devices/hmIPDevices/hmIpGriff.d.ts +27 -5
  272. package/lib/server/devices/hmIPDevices/hmIpGriff.js +59 -37
  273. package/lib/server/devices/hmIPDevices/hmIpHeizgruppe.d.ts +25 -5
  274. package/lib/server/devices/hmIPDevices/hmIpHeizgruppe.js +27 -14
  275. package/lib/server/devices/hmIPDevices/hmIpHeizung.d.ts +1 -0
  276. package/lib/server/devices/hmIPDevices/hmIpHeizung.js +1 -0
  277. package/lib/server/devices/hmIPDevices/hmIpLampe.d.ts +7 -1
  278. package/lib/server/devices/hmIPDevices/hmIpLampe.js +11 -7
  279. package/lib/server/devices/hmIPDevices/hmIpPraezenz.d.ts +11 -9
  280. package/lib/server/devices/hmIPDevices/hmIpPraezenz.js +13 -11
  281. package/lib/server/devices/hmIPDevices/hmIpRoll.d.ts +4 -2
  282. package/lib/server/devices/hmIPDevices/hmIpRoll.js +25 -23
  283. package/lib/server/devices/hmIPDevices/hmIpTaster.d.ts +15 -0
  284. package/lib/server/devices/hmIPDevices/hmIpTaster.js +9 -0
  285. package/lib/server/devices/hmIPDevices/hmIpTherm.d.ts +1 -0
  286. package/lib/server/devices/hmIPDevices/hmIpTherm.js +1 -0
  287. package/lib/server/devices/hmIPDevices/hmIpTuer.d.ts +9 -1
  288. package/lib/server/devices/hmIPDevices/hmIpTuer.js +17 -4
  289. package/lib/server/devices/hmIPDevices/hmIpWippe.d.ts +27 -0
  290. package/lib/server/devices/hmIPDevices/hmIpWippe.js +3 -0
  291. package/lib/server/devices/iDeviceUpdater.d.ts +14 -0
  292. package/lib/server/devices/index.d.ts +5 -2
  293. package/lib/server/devices/index.js +8 -2
  294. package/lib/server/devices/jsObject/jsObjectEnergyManager.d.ts +3 -1
  295. package/lib/server/devices/jsObject/jsObjectEnergyManager.js +5 -3
  296. package/lib/server/devices/nameAmountValuePair.d.ts +5 -0
  297. package/lib/server/devices/nameAmountValuePair.js +10 -0
  298. package/lib/server/devices/scene/room-scene.d.ts +23 -6
  299. package/lib/server/devices/scene/room-scene.js +18 -4
  300. package/lib/server/devices/sharedFunctions/lampUtils.d.ts +11 -2
  301. package/lib/server/devices/sharedFunctions/lampUtils.js +80 -26
  302. package/lib/server/devices/shelly/shellyDevice.d.ts +2 -1
  303. package/lib/server/devices/shelly/shellyDevice.js +2 -1
  304. package/lib/server/devices/shelly/shellyTrv.d.ts +28 -16
  305. package/lib/server/devices/shelly/shellyTrv.js +46 -45
  306. package/lib/server/devices/tuya/tuyaDevice.d.ts +2 -1
  307. package/lib/server/devices/tuya/tuyaDevice.js +2 -1
  308. package/lib/server/devices/tuya/tuyaGarageOpener.d.ts +3 -0
  309. package/lib/server/devices/tuya/tuyaGarageOpener.js +3 -0
  310. package/lib/server/devices/tv/samsungTv.d.ts +1 -0
  311. package/lib/server/devices/tv/samsungTv.js +1 -0
  312. package/lib/server/devices/tv/tvDevice.d.ts +7 -1
  313. package/lib/server/devices/tv/tvDevice.js +4 -3
  314. package/lib/server/devices/wledDevice.d.ts +15 -3
  315. package/lib/server/devices/wledDevice.js +42 -16
  316. package/lib/server/devices/zigbee/BaseDevices/ZigbeeActuator.d.ts +17 -4
  317. package/lib/server/devices/zigbee/BaseDevices/ZigbeeActuator.js +30 -15
  318. package/lib/server/devices/zigbee/BaseDevices/index.d.ts +1 -0
  319. package/lib/server/devices/zigbee/BaseDevices/index.js +3 -0
  320. package/lib/server/devices/zigbee/BaseDevices/zigbeeDevice.d.ts +4 -5
  321. package/lib/server/devices/zigbee/BaseDevices/zigbeeDevice.js +15 -22
  322. package/lib/server/devices/zigbee/BaseDevices/zigbeeDimmer.d.ts +10 -25
  323. package/lib/server/devices/zigbee/BaseDevices/zigbeeDimmer.js +30 -65
  324. package/lib/server/devices/zigbee/BaseDevices/zigbeeHeater.d.ts +17 -4
  325. package/lib/server/devices/zigbee/BaseDevices/zigbeeHeater.js +17 -11
  326. package/lib/server/devices/zigbee/BaseDevices/zigbeeLamp.d.ts +16 -0
  327. package/lib/server/devices/zigbee/BaseDevices/zigbeeLamp.js +35 -0
  328. package/lib/server/devices/zigbee/BaseDevices/zigbeeLedRGBCCT.d.ts +9 -8
  329. package/lib/server/devices/zigbee/BaseDevices/zigbeeLedRGBCCT.js +16 -14
  330. package/lib/server/devices/zigbee/BaseDevices/zigbeeMagnetContact.d.ts +12 -2
  331. package/lib/server/devices/zigbee/BaseDevices/zigbeeMagnetContact.js +11 -1
  332. package/lib/server/devices/zigbee/BaseDevices/zigbeeMotionSensor.d.ts +22 -14
  333. package/lib/server/devices/zigbee/BaseDevices/zigbeeMotionSensor.js +46 -42
  334. package/lib/server/devices/zigbee/BaseDevices/zigbeeShutter.d.ts +12 -3
  335. package/lib/server/devices/zigbee/BaseDevices/zigbeeShutter.js +28 -19
  336. package/lib/server/devices/zigbee/BaseDevices/zigbeeSwitch.d.ts +9 -1
  337. package/lib/server/devices/zigbee/BaseDevices/zigbeeSwitch.js +8 -1
  338. package/lib/server/devices/zigbee/zigbeeAqaraMagnetContact.d.ts +1 -0
  339. package/lib/server/devices/zigbee/zigbeeAqaraMagnetContact.js +1 -0
  340. package/lib/server/devices/zigbee/zigbeeAqaraOpple3Switch.d.ts +16 -0
  341. package/lib/server/devices/zigbee/zigbeeAqaraOpple3Switch.js +16 -0
  342. package/lib/server/devices/zigbee/zigbeeAquaraMotion.d.ts +6 -0
  343. package/lib/server/devices/zigbee/zigbeeAquaraMotion.js +7 -3
  344. package/lib/server/devices/zigbee/zigbeeAquaraVibra.d.ts +49 -11
  345. package/lib/server/devices/zigbee/zigbeeAquaraVibra.js +98 -30
  346. package/lib/server/devices/zigbee/zigbeeAquaraWater.d.ts +12 -1
  347. package/lib/server/devices/zigbee/zigbeeAquaraWater.js +15 -11
  348. package/lib/server/devices/zigbee/zigbeeBlitzShp.d.ts +15 -5
  349. package/lib/server/devices/zigbee/zigbeeBlitzShp.js +22 -14
  350. package/lib/server/devices/zigbee/zigbeeEuroHeater.d.ts +10 -4
  351. package/lib/server/devices/zigbee/zigbeeEuroHeater.js +16 -10
  352. package/lib/server/devices/zigbee/zigbeeHeimanSmoke.d.ts +19 -1
  353. package/lib/server/devices/zigbee/zigbeeHeimanSmoke.js +25 -7
  354. package/lib/server/devices/zigbee/zigbeeIkeaShutter.d.ts +1 -0
  355. package/lib/server/devices/zigbee/zigbeeIkeaShutter.js +2 -1
  356. package/lib/server/devices/zigbee/zigbeeIkeaSteckdose.d.ts +2 -0
  357. package/lib/server/devices/zigbee/zigbeeIkeaSteckdose.js +3 -1
  358. package/lib/server/devices/zigbee/zigbeeIlluActuator.d.ts +1 -2
  359. package/lib/server/devices/zigbee/zigbeeIlluActuator.js +2 -11
  360. package/lib/server/devices/zigbee/zigbeeIlluDimmer.d.ts +1 -1
  361. package/lib/server/devices/zigbee/zigbeeIlluDimmer.js +1 -1
  362. package/lib/server/devices/zigbee/zigbeeIlluLampe.d.ts +3 -10
  363. package/lib/server/devices/zigbee/zigbeeIlluLampe.js +3 -32
  364. package/lib/server/devices/zigbee/zigbeeIlluLedRGBCCT.d.ts +1 -1
  365. package/lib/server/devices/zigbee/zigbeeIlluLedRGBCCT.js +1 -1
  366. package/lib/server/devices/zigbee/zigbeeIlluShutter.d.ts +1 -0
  367. package/lib/server/devices/zigbee/zigbeeIlluShutter.js +5 -4
  368. package/lib/server/devices/zigbee/zigbeeInnr142C.d.ts +1 -1
  369. package/lib/server/devices/zigbee/zigbeeInnr142C.js +1 -1
  370. package/lib/server/devices/zigbee/zigbeeLinkindLedRgbCct.d.ts +1 -1
  371. package/lib/server/devices/zigbee/zigbeeLinkindLedRgbCct.js +1 -1
  372. package/lib/server/devices/zigbee/zigbeeOsramDimmer.d.ts +1 -1
  373. package/lib/server/devices/zigbee/zigbeeOsramDimmer.js +1 -1
  374. package/lib/server/devices/zigbee/zigbeeSMaBiTMagnetContact.d.ts +1 -0
  375. package/lib/server/devices/zigbee/zigbeeSMaBiTMagnetContact.js +1 -0
  376. package/lib/server/devices/zigbee/zigbeeSonoffMotion.d.ts +1 -0
  377. package/lib/server/devices/zigbee/zigbeeSonoffMotion.js +1 -0
  378. package/lib/server/devices/zigbee/zigbeeSonoffTemp.d.ts +20 -2
  379. package/lib/server/devices/zigbee/zigbeeSonoffTemp.js +22 -5
  380. package/lib/server/devices/zigbee/zigbeeTuyaValve.d.ts +10 -3
  381. package/lib/server/devices/zigbee/zigbeeTuyaValve.js +11 -6
  382. package/lib/server/devices/zigbee/zigbeeUbisysActuator.d.ts +9 -2
  383. package/lib/server/devices/zigbee/zigbeeUbisysActuator.js +10 -8
  384. package/lib/server/devices/zigbee/zigbeeUbisysLampe.d.ts +8 -9
  385. package/lib/server/devices/zigbee/zigbeeUbisysLampe.js +14 -24
  386. package/lib/server/devices/zigbee/zigbeeUbisysShutter.d.ts +1 -0
  387. package/lib/server/devices/zigbee/zigbeeUbisysShutter.js +2 -1
  388. package/lib/server/ioBroker/connection.d.ts +21 -20
  389. package/lib/server/ioBroker/connection.js +37 -28
  390. package/lib/server/ioBroker/ioBroker.main.d.ts +3 -0
  391. package/lib/server/ioBroker/ioBroker.main.js +4 -3
  392. package/lib/server/ioBroker/iobrokerConnectionLogging.d.ts +3 -0
  393. package/lib/server/ioBroker/iobrokerConnectionLogging.js +4 -0
  394. package/lib/server/ioBroker/socketIOConnectOptions.d.ts +2 -2
  395. package/lib/server/ioBroker/socketIOConnectOptions.js +1 -0
  396. package/lib/server/ioBroker/socketIOVisCommand.d.ts +5 -1
  397. package/lib/server/ioBroker/socketIOVisCommand.js +1 -0
  398. package/lib/server/services/ShutterService.js +6 -6
  399. package/lib/server/services/Sonos/OwnSonosDevices.d.ts +3 -0
  400. package/lib/server/services/Sonos/OwnSonosDevices.js +3 -0
  401. package/lib/server/services/Sonos/mp3-server.d.ts +3 -1
  402. package/lib/server/services/Sonos/mp3-server.js +3 -1
  403. package/lib/server/services/Sonos/own-sonos-device.d.ts +4 -1
  404. package/lib/server/services/Sonos/own-sonos-device.js +4 -4
  405. package/lib/server/services/Sonos/polly-service.d.ts +7 -1
  406. package/lib/server/services/Sonos/polly-service.js +10 -8
  407. package/lib/server/services/Sonos/sonos-service.d.ts +0 -5
  408. package/lib/server/services/Sonos/sonos-service.js +6 -10
  409. package/lib/server/services/Telegram/telegram-Commands.js +5 -5
  410. package/lib/server/services/Telegram/telegram-service.d.ts +2 -1
  411. package/lib/server/services/Telegram/telegram-service.js +8 -3
  412. package/lib/server/services/Translation/IRessourceObject.d.ts +13 -0
  413. package/lib/server/services/Translation/IRessourceObject.js +2 -0
  414. package/lib/server/services/Translation/iRessources.d.ts +1 -4
  415. package/lib/server/services/Translation/index.d.ts +1 -0
  416. package/lib/server/services/Translation/res.d.ts +34 -19
  417. package/lib/server/services/Translation/res.js +34 -19
  418. package/lib/server/services/ac/ac-device.d.ts +48 -6
  419. package/lib/server/services/ac/ac-device.js +86 -36
  420. package/lib/server/services/ac/daikin-service.js +4 -3
  421. package/lib/server/services/ac/own-ac-devices.d.ts +3 -0
  422. package/lib/server/services/ac/own-ac-devices.js +3 -0
  423. package/lib/server/services/ac/own-daikin-device.d.ts +17 -0
  424. package/lib/server/services/ac/own-daikin-device.js +32 -7
  425. package/lib/server/services/api/api-service.d.ts +118 -53
  426. package/lib/server/services/api/api-service.js +170 -80
  427. package/lib/server/services/blockAutomaticHandler.d.ts +13 -8
  428. package/lib/server/services/blockAutomaticHandler.js +34 -15
  429. package/lib/server/services/calendar/index.d.ts +1 -0
  430. package/lib/server/services/calendar/index.js +3 -0
  431. package/lib/server/services/calendar/muell-tonne.d.ts +11 -1
  432. package/lib/server/services/calendar/muell-tonne.js +10 -0
  433. package/lib/server/services/calendar/m/303/274ll-service.d.ts +23 -8
  434. package/lib/server/services/calendar/m/303/274ll-service.js +11 -5
  435. package/lib/server/services/calendar/name-date-pair.d.ts +5 -0
  436. package/lib/server/services/calendar/name-date-pair.js +10 -0
  437. package/lib/server/services/dbo/iPersist.d.ts +103 -0
  438. package/lib/server/services/dbo/postgreSqlPersist.d.ts +23 -0
  439. package/lib/server/services/dbo/postgreSqlPersist.js +28 -5
  440. package/lib/server/services/file-info.d.ts +5 -0
  441. package/lib/server/services/file-info.js +10 -0
  442. package/lib/server/services/govee/govee-service.d.ts +1 -5
  443. package/lib/server/services/govee/govee-service.js +3 -5
  444. package/lib/server/services/govee/own-govee-device.d.ts +17 -13
  445. package/lib/server/services/govee/own-govee-device.js +27 -27
  446. package/lib/server/services/govee/own-govee-devices.d.ts +3 -0
  447. package/lib/server/services/govee/own-govee-devices.js +3 -0
  448. package/lib/server/services/https-service.d.ts +3 -2
  449. package/lib/server/services/https-service.js +4 -3
  450. package/lib/server/services/index.d.ts +1 -0
  451. package/lib/server/services/index.js +3 -0
  452. package/lib/server/services/log-service/index.d.ts +1 -0
  453. package/lib/server/services/log-service/index.js +3 -0
  454. package/lib/server/services/log-service/log-debug-type.d.ts +12 -0
  455. package/lib/server/services/log-service/log-debug-type.js +16 -0
  456. package/lib/server/services/log-service/log-filter-data.d.ts +21 -12
  457. package/lib/server/services/log-service/log-filter-data.js +6 -15
  458. package/lib/server/services/log-service/log-service.d.ts +17 -4
  459. package/lib/server/services/log-service/log-service.js +30 -17
  460. package/lib/server/services/news-service.d.ts +9 -7
  461. package/lib/server/services/news-service.js +14 -15
  462. package/lib/server/services/room-service/room-service.d.ts +20 -4
  463. package/lib/server/services/room-service/room-service.js +26 -10
  464. package/lib/server/services/settings-service.d.ts +6 -2
  465. package/lib/server/services/settings-service.js +3 -2
  466. package/lib/server/services/time-callback-service.js +1 -1
  467. package/lib/server/services/utils/RGB.d.ts +6 -0
  468. package/lib/server/services/utils/RGB.js +11 -0
  469. package/lib/server/services/utils/catchEmResult.d.ts +5 -0
  470. package/lib/server/services/utils/catchEmResult.js +10 -0
  471. package/lib/server/services/utils/energy-consumer-state-change.d.ts +6 -0
  472. package/lib/server/services/utils/energy-consumer-state-change.js +10 -0
  473. package/lib/server/services/utils/energy-manager-utils.d.ts +3 -14
  474. package/lib/server/services/utils/energy-manager-utils.js +2 -2
  475. package/lib/server/services/utils/iDisposeable.d.ts +6 -0
  476. package/lib/server/services/utils/index.d.ts +4 -1
  477. package/lib/server/services/utils/index.js +8 -1
  478. package/lib/server/services/utils/{ringstorage.d.ts → ringStorage.d.ts} +1 -1
  479. package/lib/server/services/utils/{ringstorage.js → ringStorage.js} +3 -3
  480. package/lib/server/services/utils/utils.d.ts +9 -13
  481. package/lib/server/services/victron/victron-device.d.ts +6 -2
  482. package/lib/server/services/victron/victron-device.js +12 -9
  483. package/lib/server/services/weather/index.d.ts +2 -0
  484. package/lib/server/services/weather/index.js +3 -0
  485. package/lib/server/services/weather/rain-next-minutes-info.d.ts +5 -0
  486. package/lib/server/services/weather/rain-next-minutes-info.js +10 -0
  487. package/lib/server/services/weather/weather-current.d.ts +0 -2
  488. package/lib/server/services/weather/weather-feelsLike.d.ts +15 -0
  489. package/lib/server/services/weather/weather-response.d.ts +16 -0
  490. package/lib/server/services/weather/weather-response.js +2 -0
  491. package/lib/server/services/weather/weather-service.d.ts +15 -18
  492. package/lib/server/services/weather/weather-service.js +32 -22
  493. package/lib/server/services/weather/weather-temp.d.ts +21 -0
  494. package/lib/tsconfig.tsbuildinfo +1 -1
  495. package/package.json +6 -7
  496. package/lib/models/iTemperaturDataPoint.d.ts +0 -9
  497. package/lib/models/persistence/RoomDetailInfo.d.ts +0 -6
  498. package/lib/models/persistence/RoomDetailInfo.js +0 -11
  499. package/lib/models/persistence/temperaturDataPoint.d.ts +0 -10
  500. package/lib/models/persistence/temperaturDataPoint.js +0 -14
  501. /package/lib/{models/iTemperaturDataPoint.js → server/config/iBlockAutomaticHandlerDefaults.js} +0 -0
@@ -21,113 +21,103 @@ class PresenceGroup extends base_group_1.BaseGroup {
21
21
  }
22
22
  initCallbacks() {
23
23
  this.getMotionDetector().forEach((b) => {
24
- b.addMovementCallback((val) => {
25
- var _a;
26
- if (!val) {
24
+ b.addMovementCallback((action) => {
25
+ if (action.motionDetected) {
26
+ this.motionSensorOnAnyMovement(action);
27
+ }
28
+ if (action.motionDetected || this.anyPresent()) {
29
+ // TODO: Possible Edge Case, if the other motion sensor doesn't fire motion end event this will never be called
30
+ this.resetLastLeftTimeout();
27
31
  return;
28
32
  }
29
- if (services_1.RoomService.awayModeActive || (services_1.RoomService.nightAlarmActive && !b.settings.excludeFromNightAlarm)) {
30
- services_1.RoomService.startIntrusionAlarm(this.getRoom(), b);
33
+ else if (!action.motionDetected && !this.anyPresent()) {
34
+ this.motionSensorOnLastLeft(action);
31
35
  }
32
- if (!b.settings.seesWindow) {
33
- (_a = this.getRoom().WindowGroup) === null || _a === void 0 ? void 0 : _a.changeVibrationMotionBlock(true);
36
+ if (action.motionDetected && this.presentAmount() === 1 && this._lastLeftTimeout === null) {
37
+ this.fireFistEnterCBs(action);
34
38
  }
35
- services_1.RoomService.movementHistory.add(`${services_1.Utils.nowString()}: Raum "${this.roomName}" Gerät "${b.info.fullName}"`);
39
+ this.motionSensorOnLastLeft(action);
36
40
  });
37
41
  });
38
- this.addLastLeftCallback(() => {
42
+ this.addLastLeftCallback((action) => {
39
43
  var _a, _b;
40
44
  (_a = this.getRoom().WindowGroup) === null || _a === void 0 ? void 0 : _a.changeVibrationMotionBlock(false);
41
- (_b = this.getRoom().LightGroup) === null || _b === void 0 ? void 0 : _b.switchAll(new models_1.ActuatorSetStateCommand(models_1.CommandSource.Automatic, false, 'Presence Group LastLeftCallback'));
45
+ (_b = this.getRoom().LightGroup) === null || _b === void 0 ? void 0 : _b.switchAll(new models_1.ActuatorSetStateCommand(action, false, 'Presence Group LastLeftCallback'));
42
46
  });
43
- this.addFirstEnterCallback(() => {
47
+ this.addFirstEnterCallback((action) => {
44
48
  if (!this.getRoom().settings.lampenBeiBewegung) {
45
49
  return;
46
50
  }
47
51
  this.log(models_1.LogLevel.DeepTrace, `Bewegung im Raum ${this.roomName} festgestellt --> Licht einschalten`);
48
- this.getRoom().setLightTimeBased(new models_1.RoomSetLightTimeBasedCommand(models_1.CommandSource.Automatic, true, 'Motion detected'));
49
- });
50
- this.getMotionDetector().forEach((b) => {
51
- b.addMovementCallback((val) => {
52
- this.motionSensorOnFirstEnter(val);
53
- });
54
- });
55
- this.getMotionDetector().forEach((b) => {
56
- b.addMovementCallback((val) => {
57
- this.motionSensorOnLastLeft(val);
58
- });
52
+ this.getRoom().setLightTimeBased(new models_1.RoomSetLightTimeBasedCommand(action, true));
59
53
  });
60
54
  }
61
55
  presentAmount() {
62
- let count = 0;
63
- for (let i = 0; i < this.getMotionDetector().length; i++) {
64
- if (this.getMotionDetector()[i].movementDetected) {
65
- count++;
66
- }
67
- }
68
- return count;
69
- }
70
- anyPresent() {
71
- for (let i = 0; i < this.getMotionDetector().length; i++) {
72
- if (this.getMotionDetector()[i].movementDetected) {
73
- return true;
74
- }
75
- }
76
- return false;
56
+ return this.getMotionDetector().filter((b) => b.movementDetected).length;
77
57
  }
78
58
  addLastLeftCallback(cb) {
79
59
  this._lastLeftCbs.push(cb);
80
60
  }
61
+ anyPresent() {
62
+ return this.getMotionDetector().find((b) => b.movementDetected) !== undefined;
63
+ }
64
+ fireFistEnterCBs(action) {
65
+ for (const cb of this._firstEnterCbs) {
66
+ cb(new models_1.PresenceGroupFirstEnterAction(action));
67
+ }
68
+ }
81
69
  addFirstEnterCallback(cb) {
82
70
  this._firstEnterCbs.push(cb);
83
71
  }
84
- motionSensorOnLastLeft(val) {
85
- if (val || this.anyPresent()) {
86
- this.resetLastLeftTimeout();
87
- return;
72
+ motionSensorOnAnyMovement(action) {
73
+ var _a;
74
+ this._lastMovement = new Date();
75
+ if (services_1.RoomService.awayModeActive || (services_1.RoomService.nightAlarmActive && !action.sensor.settings.excludeFromNightAlarm)) {
76
+ services_1.RoomService.startIntrusionAlarm(this.getRoom(), action.sensor);
77
+ }
78
+ if (!action.sensor.settings.seesWindow) {
79
+ (_a = this.getRoom().WindowGroup) === null || _a === void 0 ? void 0 : _a.changeVibrationMotionBlock(true);
88
80
  }
89
- let timeAfterReset = services_1.Utils.nowMS() - this._lastMovement.getTime() - this.getRoom().settings.movementResetTimer * 1000;
81
+ services_1.RoomService.movementHistory.add(`${services_1.Utils.nowString()}: Raum "${this.roomName}" Gerät "${action.sensor.info.fullName}"`);
82
+ }
83
+ motionSensorOnLastLeft(action) {
84
+ let timeAfterReset = this.getTimeAfterReset();
90
85
  if (timeAfterReset > 0) {
91
86
  this.log(models_1.LogLevel.Debug, `Movement reset. Active Motions: ${this.presentAmount()}\tTime after Last Movement including Reset: ${timeAfterReset}`);
92
- this.executeLastLeftCbs();
87
+ this.executeLastLeftCbs(new models_1.PresenceGroupLastLeftAction(action));
93
88
  return;
94
89
  }
95
90
  this.log(models_1.LogLevel.Debug, `Movement reset in ${this.roomName} delayed.`);
96
91
  this.resetLastLeftTimeout();
97
92
  this._lastLeftTimeout = services_1.Utils.guardedTimeout(() => {
98
- timeAfterReset =
99
- services_1.Utils.nowMS() - this._lastMovement.getTime() - this.getRoom().settings.movementResetTimer * 1000;
93
+ this._lastLeftTimeout = null;
94
+ timeAfterReset = this.getTimeAfterReset();
100
95
  const presentAmount = this.presentAmount();
101
- this.log(models_1.LogLevel.Debug, `Delayed Movement reset. Active Motions: ${this.presentAmount()}\tTime after Last Movement including Reset: ${timeAfterReset}`);
96
+ this.log(models_1.LogLevel.Debug, `Delayed Movement reset. Active Motions: ${presentAmount}\tTime after Last Movement including Reset: ${timeAfterReset}, action: ${action.reasonTrace}`);
102
97
  if (presentAmount <= 0 && timeAfterReset > 0) {
103
- this.executeLastLeftCbs();
98
+ this.executeLastLeftCbs(new models_1.PresenceGroupLastLeftAction(action));
104
99
  }
105
100
  }, Math.abs(timeAfterReset) + 500, this);
106
101
  }
102
+ /**
103
+ * Calculates whether we are after (negative if before) the time the movement
104
+ * reset timer should have reset the movement.
105
+ * @returns The time in milliseconds after the reset time.
106
+ */
107
+ getTimeAfterReset() {
108
+ return services_1.Utils.nowMS() - this._lastMovement.getTime() - this.getRoom().settings.movementResetTimer * 1000;
109
+ }
107
110
  /**
108
111
  * In case of an existing delayed last left callback timeout, this removes it.
109
- * @private
110
112
  */
111
113
  resetLastLeftTimeout() {
112
114
  if (this._lastLeftTimeout !== null) {
113
115
  clearTimeout(this._lastLeftTimeout);
114
116
  }
115
117
  }
116
- motionSensorOnFirstEnter(val) {
117
- if (!val) {
118
- return;
119
- }
120
- this._lastMovement = new Date();
121
- if (this.presentAmount() > 1) {
122
- return;
123
- }
124
- for (const cb of this._firstEnterCbs) {
125
- cb();
126
- }
127
- }
128
- executeLastLeftCbs() {
118
+ executeLastLeftCbs(action) {
129
119
  for (const cb of this._lastLeftCbs) {
130
- cb();
120
+ cb(action);
131
121
  }
132
122
  }
133
123
  }
@@ -25,42 +25,42 @@ class TasterGroup extends base_group_1.BaseGroup {
25
25
  return;
26
26
  }
27
27
  (_a = this.getRoom().WindowGroup) === null || _a === void 0 ? void 0 : _a.setDesiredPosition(new models_1.WindowSetDesiredPositionCommand(models_1.CommandSource.Manual, 0, 'Button Top Left pressed long'));
28
- }, `Close all Rollos in this room`);
28
+ }, 'Close all Rollos in this room');
29
29
  (_b = t.buttonTopLeft) === null || _b === void 0 ? void 0 : _b.addCb(button_1.ButtonPressType.short, (pValue) => {
30
30
  var _a;
31
31
  if (!pValue) {
32
32
  return;
33
33
  }
34
34
  (_a = this.getRoom().WindowGroup) === null || _a === void 0 ? void 0 : _a.setDesiredPosition(new models_1.WindowSetDesiredPositionCommand(models_1.CommandSource.Manual, 25, 'Button Top Left pressed short'));
35
- }, `Nearly closes all Rollos in this room`);
35
+ }, 'Nearly closes all Rollos in this room');
36
36
  (_c = t.buttonTopRight) === null || _c === void 0 ? void 0 : _c.addCb(button_1.ButtonPressType.long, (pValue) => {
37
37
  var _a;
38
38
  if (!pValue) {
39
39
  return;
40
40
  }
41
41
  (_a = this.getRoom().WindowGroup) === null || _a === void 0 ? void 0 : _a.setDesiredPosition(new models_1.WindowSetDesiredPositionCommand(models_1.CommandSource.Manual, 100, 'Button Top Right pressed long'));
42
- }, `Open all Rollos in this room`);
42
+ }, 'Open all Rollos in this room');
43
43
  (_d = t.buttonTopRight) === null || _d === void 0 ? void 0 : _d.addCb(button_1.ButtonPressType.short, (pValue) => {
44
44
  var _a;
45
45
  if (!pValue) {
46
46
  return;
47
47
  }
48
48
  (_a = this.getRoom().WindowGroup) === null || _a === void 0 ? void 0 : _a.setDesiredPosition(new models_1.WindowSetDesiredPositionCommand(models_1.CommandSource.Manual, 50, 'Button Top Right pressed short'));
49
- }, `All Rollos in this room to middle`);
49
+ }, 'All Rollos in this room to middle');
50
50
  (_e = t.buttonMidLeft) === null || _e === void 0 ? void 0 : _e.addCb(button_1.ButtonPressType.long, (pValue) => {
51
51
  var _a;
52
52
  if (!pValue) {
53
53
  return;
54
54
  }
55
55
  (_a = this.getRoom().LightGroup) === null || _a === void 0 ? void 0 : _a.switchAll(new models_1.ActuatorSetStateCommand(models_1.CommandSource.Manual, true, 'Button press to turn all lights on'));
56
- }, `Turn all Lights in this room on`);
56
+ }, 'Turn all Lights in this room on');
57
57
  (_f = t.buttonMidRight) === null || _f === void 0 ? void 0 : _f.addCb(button_1.ButtonPressType.long, (pValue) => {
58
58
  var _a;
59
59
  if (!pValue) {
60
60
  return;
61
61
  }
62
62
  (_a = this.getRoom().LightGroup) === null || _a === void 0 ? void 0 : _a.switchAll(new models_1.ActuatorSetStateCommand(models_1.CommandSource.Manual, false, 'Button press to turn all lights off'));
63
- }, `Turn all Lights in this room off`);
63
+ }, 'Turn all Lights in this room off');
64
64
  if (((_g = services_1.SettingsService.settings.sonos) === null || _g === void 0 ? void 0 : _g.buttonBotRightForRadio) === true) {
65
65
  const sonosGroup = this.getRoom().SonosGroup;
66
66
  if (sonosGroup !== undefined && sonosGroup.getOwnSonosDevices().length > 0) {
@@ -3,7 +3,17 @@ import { Window } from './Window';
3
3
  import { BaseGroup } from './base-group';
4
4
  export declare class WindowGroup extends BaseGroup {
5
5
  windows: Window[];
6
+ /**
7
+ * Timecallback for sunrise-shutter actions
8
+ * @remarks This callback is only set if needed and already calculated.
9
+ * @warning Manual setting of this callback is not recommended. Prefer {@link recalcTimeCallbacks} after changing settings.
10
+ */
6
11
  sunriseShutterCallback: TimeCallback | undefined;
12
+ /**
13
+ * Timecallback for sunset-shutter actions
14
+ * @remarks This callback is only set if needed and already calculated.
15
+ * @warning Manual setting of this callback is not recommended. Prefer {@link recalcTimeCallbacks} after changing settings.
16
+ */
7
17
  sunsetShutterCallback: TimeCallback | undefined;
8
18
  constructor(roomName: string, windows: Window[]);
9
19
  setDesiredPosition(c: WindowSetDesiredPositionCommand): void;
@@ -11,7 +21,7 @@ export declare class WindowGroup extends BaseGroup {
11
21
  recalcTimeCallbacks(): void;
12
22
  setRolloByWeatherStatus(c: WindowSetRolloByWeatherStatusCommand): void;
13
23
  sunriseUp(c: ShutterSunriseUpCommand): void;
14
- restoreRolloPosition(c: RoomRestoreShutterPositionCommand): void;
24
+ restoreShutterPosition(c: RoomRestoreShutterPositionCommand): void;
15
25
  changeVibrationMotionBlock(block: boolean): void;
16
26
  private sunsetDown;
17
27
  private reconfigureSunsetShutterCallback;
@@ -62,7 +62,7 @@ class WindowGroup extends base_group_1.BaseGroup {
62
62
  return;
63
63
  }
64
64
  if (darkOutside) {
65
- f.restoreDesiredPosition(new models_1.WindowRestoreDesiredPositionCommand(c, `It's dark outside.`));
65
+ f.restoreDesiredPosition(new models_1.WindowRestoreDesiredPositionCommand(c, "It's dark outside."));
66
66
  return;
67
67
  }
68
68
  let desiredPos = f.desiredPosition;
@@ -79,14 +79,14 @@ class WindowGroup extends base_group_1.BaseGroup {
79
79
  });
80
80
  }
81
81
  sunriseUp(c) {
82
- this.windows.forEach((f) => {
83
- if (!this.getRoom().settings.sonnenAufgangRollos || f.getShutter().length === 0) {
82
+ this.windows.forEach((w) => {
83
+ if (!this.getRoom().settings.sonnenAufgangRollos || w.getShutter().length === 0) {
84
84
  return;
85
85
  }
86
- f.setDesiredPosition(new models_1.WindowSetDesiredPositionCommand(c, 100));
86
+ w.setDesiredPosition(new models_1.WindowSetDesiredPositionCommand(c, 100));
87
87
  });
88
88
  }
89
- restoreRolloPosition(c) {
89
+ restoreShutterPosition(c) {
90
90
  if (!c.recalc) {
91
91
  this.windows.forEach((f) => {
92
92
  f.restoreDesiredPosition(new models_1.WindowRestoreDesiredPositionCommand(c));
@@ -164,7 +164,7 @@ class WindowGroup extends base_group_1.BaseGroup {
164
164
  }
165
165
  if (this.sunriseShutterCallback === undefined) {
166
166
  this.log(models_1.LogLevel.Debug, `Add Sunrise shutter TimeCallback for ${this.roomName}`);
167
- this.sunriseShutterCallback = new models_1.TimeCallback(`${this.roomName} Sonnenaufgang Rollos`, models_1.TimeCallbackType.Sunrise, () => {
167
+ this.sunriseShutterCallback = new models_1.TimeCallback(`${this.roomName} Sunrise Shutter`, models_1.TimeCallbackType.Sunrise, () => {
168
168
  if (room.skipNextRolloUp) {
169
169
  this.log(models_1.LogLevel.Info, `${this.roomName} skipped sunrise up due to room.skipNextRolloUp`);
170
170
  room.skipNextRolloUp = false;
@@ -4,6 +4,7 @@ export declare class HmIpAccessPoint extends HmIPDevice {
4
4
  constructor(pInfo: IoBrokerDeviceInfo);
5
5
  private _ip;
6
6
  get ip(): string;
7
+ /** @inheritDoc */
7
8
  update(idSplit: string[], state: ioBroker.State, initial?: boolean): void;
8
9
  private updateBaseInformation;
9
10
  }
@@ -12,6 +12,7 @@ class HmIpAccessPoint extends hmIpDevice_1.HmIPDevice {
12
12
  get ip() {
13
13
  return this._ip;
14
14
  }
15
+ /** @inheritDoc */
15
16
  update(idSplit, state, initial = false) {
16
17
  this.log(models_1.LogLevel.DeepTrace, `AP Update: ID: ${idSplit.join('.')} JSON: ${JSON.stringify(state)}`);
17
18
  super.update(idSplit, state, initial, true);
@@ -1,26 +1,29 @@
1
1
  import { HmIPDevice } from './hmIpDevice';
2
- import { MotionSensorSettings } from '../../../models';
2
+ import { MotionSensorAction, MotionSensorSettings } from '../../../models';
3
3
  import { iIlluminationSensor, iMotionSensor } from '../baseDeviceInterfaces';
4
4
  import { IoBrokerDeviceInfo } from '../IoBrokerDeviceInfo';
5
5
  export declare class HmIpBewegung extends HmIPDevice implements iIlluminationSensor, iMotionSensor {
6
6
  private static MOVEMENT_DETECTION;
7
7
  private static CURRENT_ILLUMINATION;
8
+ /** @inheritDoc */
8
9
  settings: MotionSensorSettings;
10
+ /** @inheritDoc */
9
11
  movementDetected: boolean;
12
+ /** @inheritDoc */
13
+ detectionsToday: number;
10
14
  private _movementDetectedCallback;
11
15
  private initialized;
12
16
  private _fallBackTimeout;
13
17
  private _lastMotionTime;
18
+ private _currentIllumination;
14
19
  constructor(pInfo: IoBrokerDeviceInfo);
20
+ /** @inheritDoc */
15
21
  get timeSinceLastMotion(): number;
16
- private _detectionsToday;
17
- get detectionsToday(): number;
18
- set detectionsToday(pVal: number);
19
- private _currentIllumination;
20
22
  get currentIllumination(): number;
21
23
  private set currentIllumination(value);
22
- addMovementCallback(pCallback: (pValue: boolean) => void): void;
24
+ addMovementCallback(pCallback: (action: MotionSensorAction) => void): void;
23
25
  persistMotionSensor(): void;
26
+ /** @inheritDoc */
24
27
  update(idSplit: string[], state: ioBroker.State, initial?: boolean): void;
25
28
  updateMovement(pVal: boolean): void;
26
29
  private resetFallbackTimeout;
@@ -10,12 +10,15 @@ class HmIpBewegung extends hmIpDevice_1.HmIPDevice {
10
10
  constructor(pInfo) {
11
11
  var _a;
12
12
  super(pInfo, deviceType_1.DeviceType.HmIpBewegung);
13
+ /** @inheritDoc */
13
14
  this.settings = new models_1.MotionSensorSettings();
15
+ /** @inheritDoc */
14
16
  this.movementDetected = false;
17
+ /** @inheritDoc */
18
+ this.detectionsToday = 0;
15
19
  this._movementDetectedCallback = [];
16
20
  this.initialized = false;
17
21
  this._lastMotionTime = 0;
18
- this._detectionsToday = 0;
19
22
  this._currentIllumination = -1;
20
23
  this.deviceCapabilities.push(DeviceCapability_1.DeviceCapability.motionSensor);
21
24
  this.deviceCapabilities.push(DeviceCapability_1.DeviceCapability.illuminationSensor);
@@ -33,15 +36,10 @@ class HmIpBewegung extends hmIpDevice_1.HmIPDevice {
33
36
  });
34
37
  }
35
38
  }
39
+ /** @inheritDoc */
36
40
  get timeSinceLastMotion() {
37
41
  return Math.floor((services_1.Utils.nowMS() - this._lastMotionTime) / 1000);
38
42
  }
39
- get detectionsToday() {
40
- return this._detectionsToday;
41
- }
42
- set detectionsToday(pVal) {
43
- this._detectionsToday = pVal;
44
- }
45
43
  get currentIllumination() {
46
44
  return this._currentIllumination;
47
45
  }
@@ -57,6 +55,7 @@ class HmIpBewegung extends hmIpDevice_1.HmIPDevice {
57
55
  var _a;
58
56
  (_a = services_1.Utils.dbo) === null || _a === void 0 ? void 0 : _a.persistMotionSensor(this);
59
57
  }
58
+ /** @inheritDoc */
60
59
  update(idSplit, state, initial = false) {
61
60
  this.log(models_1.LogLevel.DeepTrace, `Bewegungs Update: JSON: ${JSON.stringify(state)}ID: ${idSplit.join('.')}`);
62
61
  super.update(idSplit, state, initial, true);
@@ -75,7 +74,7 @@ class HmIpBewegung extends hmIpDevice_1.HmIPDevice {
75
74
  }
76
75
  updateMovement(pVal) {
77
76
  if (!this.initialized && pVal) {
78
- this.log(models_1.LogLevel.Trace, `Bewegung erkannt aber die Initialisierung aus der DB ist noch nicht erfolgt --> verzögern`);
77
+ this.log(models_1.LogLevel.Trace, 'Bewegung erkannt aber die Initialisierung aus der DB ist noch nicht erfolgt --> verzögern');
79
78
  services_1.Utils.guardedTimeout(() => {
80
79
  this.updateMovement(pVal);
81
80
  }, 1000, this);
@@ -100,18 +99,18 @@ class HmIpBewegung extends hmIpDevice_1.HmIPDevice {
100
99
  this.log(models_1.LogLevel.Trace, `Dies ist die ${this.detectionsToday} Bewegung `);
101
100
  }
102
101
  for (const c of this._movementDetectedCallback) {
103
- c(pVal);
102
+ c(new models_1.MotionSensorAction(this));
104
103
  }
105
104
  }
106
105
  resetFallbackTimeout() {
107
106
  if (this._fallBackTimeout) {
108
- this.log(models_1.LogLevel.Trace, `Fallback Timeout zurücksetzen`);
107
+ this.log(models_1.LogLevel.Trace, 'Fallback Timeout zurücksetzen');
109
108
  clearTimeout(this._fallBackTimeout);
110
109
  }
111
110
  }
112
111
  startFallbackTimeout() {
113
112
  this._fallBackTimeout = services_1.Utils.guardedTimeout(() => {
114
- this.log(models_1.LogLevel.Debug, `Benötige Fallback Bewegungs Reset `);
113
+ this.log(models_1.LogLevel.Debug, 'Benötige Fallback Bewegungs Reset ');
115
114
  this._fallBackTimeout = undefined;
116
115
  this.updateMovement(false);
117
116
  }, 270000, this);
@@ -2,8 +2,7 @@ import { IoBrokerBaseDevice } from '../IoBrokerBaseDevice';
2
2
  import { DeviceType } from '../deviceType';
3
3
  import { IoBrokerDeviceInfo } from '../IoBrokerDeviceInfo';
4
4
  export declare class HmIPDevice extends IoBrokerBaseDevice {
5
- lowBattery: boolean;
6
- stateMap: Map<string, ioBroker.State>;
7
5
  constructor(pInfo: IoBrokerDeviceInfo, pType: DeviceType);
6
+ /** @inheritDoc */
8
7
  update(idSplit: string[], state: ioBroker.State, initial?: boolean, pOverride?: boolean): void;
9
8
  }
@@ -6,9 +6,8 @@ const IoBrokerBaseDevice_1 = require("../IoBrokerBaseDevice");
6
6
  class HmIPDevice extends IoBrokerBaseDevice_1.IoBrokerBaseDevice {
7
7
  constructor(pInfo, pType) {
8
8
  super(pInfo, pType);
9
- this.lowBattery = false;
10
- this.stateMap = new Map();
11
9
  }
10
+ /** @inheritDoc */
12
11
  update(idSplit, state, initial = false, pOverride = false) {
13
12
  if (!pOverride) {
14
13
  this.log(models_1.LogLevel.Trace, `Keine Update Überschreibung :\n\tID: ${idSplit.join('.')}`);
@@ -20,7 +19,7 @@ class HmIPDevice extends IoBrokerBaseDevice_1.IoBrokerBaseDevice {
20
19
  case '0.LOW_BAT':
21
20
  const newBatLowVal = state.val;
22
21
  if (newBatLowVal) {
23
- this.log(models_1.LogLevel.Warn, `!!BATTERIE FAST LEER!!`);
22
+ this.log(models_1.LogLevel.Warn, '!!BATTERIE FAST LEER!!');
24
23
  }
25
24
  break;
26
25
  }
@@ -7,29 +7,51 @@ import { HmIPDevice } from './hmIpDevice';
7
7
  import { iBatteryDevice, iHandleSensor } from '../baseDeviceInterfaces';
8
8
  import { HandleSettings } from '../../../models/deviceSettings/handleSettings';
9
9
  export declare class HmIpGriff extends HmIPDevice implements iHandleSensor, iBatteryDevice, iDisposable {
10
+ /** @inheritDoc */
10
11
  settings: HandleSettings;
12
+ /** @inheritDoc */
13
+ position: WindowPosition;
14
+ /** @inheritDoc */
15
+ minutesOpen: number;
11
16
  private _battery;
12
17
  private _lastBatteryPersist;
13
18
  private _lastHandlePersist;
14
- get lastBatteryPersist(): number;
15
- get battery(): number;
16
- position: WindowPosition;
17
19
  private _kippCallback;
18
20
  private _closedCallback;
19
21
  private _offenCallback;
20
22
  private _iOpenTimeout;
21
- minutesOpen: number;
22
23
  private _window;
23
24
  private _helpingRoomTemp;
25
+ /**
26
+ * Creates an instance of {@link DeviceType.HmIpGriff}.
27
+ * @param pInfo - Device creation information
28
+ */
24
29
  constructor(pInfo: IoBrokerDeviceInfo);
30
+ /** @inheritDoc */
31
+ get lastBatteryPersist(): number;
32
+ /** @inheritDoc */
33
+ get battery(): number;
34
+ /**
35
+ * Adds a window to this device
36
+ */
25
37
  set window(value: Window);
38
+ /** @inheritDoc */
26
39
  addOffenCallback(pCallback: (pValue: boolean) => void): void;
40
+ /** @inheritDoc */
27
41
  addKippCallback(pCallback: (pValue: boolean) => void): void;
42
+ /** @inheritDoc */
28
43
  addClosedCallback(pCallback: (pValue: boolean) => void): void;
44
+ /** @inheritDoc */
29
45
  update(idSplit: string[], state: ioBroker.State, initial?: boolean): void;
30
- updatePosition(pValue: WindowPosition): void;
46
+ /** @inheritDoc */
31
47
  persistBatteryDevice(): void;
48
+ /**
49
+ * Persists the handle sensor state to the persistence layer
50
+ */
32
51
  persistHandleSensor(): void;
52
+ /** @inheritDoc */
33
53
  dispose(): void;
54
+ /** @inheritDoc */
34
55
  toJSON(): Partial<IoBrokerBaseDevice>;
56
+ private updatePosition;
35
57
  }
@@ -13,40 +13,56 @@ const hmIpDevice_1 = require("./hmIpDevice");
13
13
  const DeviceCapability_1 = require("../DeviceCapability");
14
14
  const handleSettings_1 = require("../../../models/deviceSettings/handleSettings");
15
15
  class HmIpGriff extends hmIpDevice_1.HmIPDevice {
16
- get lastBatteryPersist() {
17
- return this._lastBatteryPersist;
18
- }
19
- get battery() {
20
- return this._battery;
21
- }
16
+ /**
17
+ * Creates an instance of {@link DeviceType.HmIpGriff}.
18
+ * @param pInfo - Device creation information
19
+ */
22
20
  constructor(pInfo) {
23
21
  super(pInfo, deviceType_1.DeviceType.HmIpGriff);
22
+ /** @inheritDoc */
24
23
  this.settings = new handleSettings_1.HandleSettings();
24
+ /** @inheritDoc */
25
+ this.position = models_1.WindowPosition.geschlossen;
26
+ /** @inheritDoc */
27
+ this.minutesOpen = 0;
25
28
  this._battery = -99;
26
29
  this._lastBatteryPersist = 0;
27
30
  this._lastHandlePersist = 0;
28
- this.position = models_1.WindowPosition.geschlossen;
29
31
  this._kippCallback = [];
30
32
  this._closedCallback = [];
31
33
  this._offenCallback = [];
32
- this.minutesOpen = 0;
33
34
  this._window = undefined;
34
35
  this._helpingRoomTemp = false;
35
36
  this.deviceCapabilities.push(DeviceCapability_1.DeviceCapability.handleSensor);
36
37
  this.deviceCapabilities.push(DeviceCapability_1.DeviceCapability.batteryDriven);
37
38
  }
39
+ /** @inheritDoc */
40
+ get lastBatteryPersist() {
41
+ return this._lastBatteryPersist;
42
+ }
43
+ /** @inheritDoc */
44
+ get battery() {
45
+ return this._battery;
46
+ }
47
+ /**
48
+ * Adds a window to this device
49
+ */
38
50
  set window(value) {
39
51
  this._window = value;
40
52
  }
53
+ /** @inheritDoc */
41
54
  addOffenCallback(pCallback) {
42
55
  this._offenCallback.push(pCallback);
43
56
  }
57
+ /** @inheritDoc */
44
58
  addKippCallback(pCallback) {
45
59
  this._kippCallback.push(pCallback);
46
60
  }
61
+ /** @inheritDoc */
47
62
  addClosedCallback(pCallback) {
48
63
  this._closedCallback.push(pCallback);
49
64
  }
65
+ /** @inheritDoc */
50
66
  update(idSplit, state, initial = false) {
51
67
  this.log(models_2.LogLevel.DeepTrace, `Griff Update: JSON: ${JSON.stringify(state)}ID: ${idSplit.join('.')}`);
52
68
  super.update(idSplit, state, initial, true);
@@ -72,6 +88,40 @@ class HmIpGriff extends hmIpDevice_1.HmIPDevice {
72
88
  break;
73
89
  }
74
90
  }
91
+ /** @inheritDoc */
92
+ persistBatteryDevice() {
93
+ var _a;
94
+ const now = services_1.Utils.nowMS();
95
+ if (this._lastBatteryPersist + 60000 > now) {
96
+ return;
97
+ }
98
+ (_a = services_1.Utils.dbo) === null || _a === void 0 ? void 0 : _a.persistBatteryDevice(this);
99
+ this._lastBatteryPersist = now;
100
+ }
101
+ /**
102
+ * Persists the handle sensor state to the persistence layer
103
+ */
104
+ persistHandleSensor() {
105
+ var _a;
106
+ const now = services_1.Utils.nowMS();
107
+ if (this._lastHandlePersist + 2000 > now) {
108
+ return;
109
+ }
110
+ this.log(models_2.LogLevel.Debug, `Persist handle state: ${this.position}`);
111
+ (_a = services_1.Utils.dbo) === null || _a === void 0 ? void 0 : _a.persistHandleSensor(this);
112
+ this._lastHandlePersist = now;
113
+ }
114
+ /** @inheritDoc */
115
+ dispose() {
116
+ if (this._iOpenTimeout) {
117
+ clearInterval(this._iOpenTimeout);
118
+ this._iOpenTimeout = undefined;
119
+ }
120
+ }
121
+ /** @inheritDoc */
122
+ toJSON() {
123
+ return lodash_1.default.omit(super.toJSON(), ['_window']);
124
+ }
75
125
  updatePosition(pValue) {
76
126
  if (pValue === this.position) {
77
127
  if (this._lastHandlePersist == 0) {
@@ -116,7 +166,7 @@ class HmIpGriff extends hmIpDevice_1.HmIPDevice {
116
166
  const wouldHelp = (desiredTemp < currentTemp && outSideTemp < currentTemp) ||
117
167
  (desiredTemp > currentTemp && outSideTemp > currentTemp);
118
168
  if (!wouldHelp && this._helpingRoomTemp) {
119
- const info = `Window should be closed, as it doesn't help reaching target temperature.`;
169
+ const info = "Window should be closed, as it doesn't help reaching target temperature.";
120
170
  this.log(models_2.LogLevel.Info, info);
121
171
  if (this.settings.informNotHelping) {
122
172
  services_1.TelegramService.inform(info);
@@ -155,33 +205,5 @@ class HmIpGriff extends hmIpDevice_1.HmIPDevice {
155
205
  }
156
206
  }, 60000, this);
157
207
  }
158
- persistBatteryDevice() {
159
- var _a;
160
- const now = services_1.Utils.nowMS();
161
- if (this._lastBatteryPersist + 60000 > now) {
162
- return;
163
- }
164
- (_a = services_1.Utils.dbo) === null || _a === void 0 ? void 0 : _a.persistBatteryDevice(this);
165
- this._lastBatteryPersist = now;
166
- }
167
- persistHandleSensor() {
168
- var _a;
169
- const now = services_1.Utils.nowMS();
170
- if (this._lastHandlePersist + 2000 > now) {
171
- return;
172
- }
173
- this.log(models_2.LogLevel.Debug, `Persist handle state: ${this.position}`);
174
- (_a = services_1.Utils.dbo) === null || _a === void 0 ? void 0 : _a.persistHandleSensor(this);
175
- this._lastHandlePersist = now;
176
- }
177
- dispose() {
178
- if (this._iOpenTimeout) {
179
- clearInterval(this._iOpenTimeout);
180
- this._iOpenTimeout = undefined;
181
- }
182
- }
183
- toJSON() {
184
- return lodash_1.default.omit(super.toJSON(), ['_window']);
185
- }
186
208
  }
187
209
  exports.HmIpGriff = HmIpGriff;