hoffmation-base 0.1.14 → 0.1.18

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 (365) hide show
  1. package/lib/index.d.ts +2 -0
  2. package/lib/index.js +14 -0
  3. package/lib/models/actuatorSettings.d.ts +5 -0
  4. package/lib/models/actuatorSettings.js +11 -0
  5. package/lib/models/connectionCallbacks.d.ts +10 -0
  6. package/lib/models/connectionCallbacks.js +6 -0
  7. package/lib/models/daytime.d.ts +5 -0
  8. package/lib/models/daytime.js +10 -0
  9. package/lib/models/deviceConfig.d.ts +11 -0
  10. package/lib/models/deviceConfig.js +2 -0
  11. package/lib/models/dimmerSettings.d.ts +5 -0
  12. package/lib/models/dimmerSettings.js +11 -0
  13. package/lib/models/iTemperaturDataPoint.d.ts +9 -0
  14. package/lib/models/iTemperaturDataPoint.js +2 -0
  15. package/lib/models/index.d.ts +12 -0
  16. package/lib/models/index.js +24 -0
  17. package/lib/models/ledSettings.d.ts +19 -0
  18. package/lib/models/ledSettings.js +25 -0
  19. package/lib/models/logLevel.d.ts +9 -0
  20. package/lib/models/logLevel.js +13 -0
  21. package/lib/models/persistence/BasicRoomInfo.d.ts +5 -0
  22. package/lib/models/persistence/BasicRoomInfo.js +10 -0
  23. package/lib/models/persistence/CurrentIlluminationDataPoint.d.ts +8 -0
  24. package/lib/models/persistence/CurrentIlluminationDataPoint.js +13 -0
  25. package/lib/models/persistence/DailyMovementCount.d.ts +7 -0
  26. package/lib/models/persistence/DailyMovementCount.js +12 -0
  27. package/lib/models/persistence/RoomDetailInfo.d.ts +6 -0
  28. package/lib/models/persistence/RoomDetailInfo.js +11 -0
  29. package/lib/models/persistence/index.d.ts +6 -0
  30. package/lib/models/persistence/index.js +18 -0
  31. package/lib/models/persistence/temperaturDataPoint.d.ts +10 -0
  32. package/lib/models/persistence/temperaturDataPoint.js +14 -0
  33. package/lib/models/persistence/todaysCount.d.ts +5 -0
  34. package/lib/models/persistence/todaysCount.js +10 -0
  35. package/lib/models/rooms/RoomBase.d.ts +81 -0
  36. package/lib/models/rooms/RoomBase.js +309 -0
  37. package/lib/models/rooms/RoomSettings/RoomSettings.d.ts +57 -0
  38. package/lib/models/rooms/RoomSettings/RoomSettings.js +120 -0
  39. package/lib/models/rooms/RoomSettings/hmIPRoomSettings.d.ts +17 -0
  40. package/lib/models/rooms/RoomSettings/hmIPRoomSettings.js +51 -0
  41. package/lib/models/rooms/RoomSettings/iRoomDefaultSettings.d.ts +16 -0
  42. package/lib/models/rooms/RoomSettings/iRoomDefaultSettings.js +2 -0
  43. package/lib/models/rooms/RoomSettings/index.d.ts +4 -0
  44. package/lib/models/rooms/RoomSettings/index.js +16 -0
  45. package/lib/models/rooms/RoomSettings/zigbeeRoomSettings.d.ts +17 -0
  46. package/lib/models/rooms/RoomSettings/zigbeeRoomSettings.js +51 -0
  47. package/{models/rooms/iRoomImportEnforcer.ts → lib/models/rooms/iRoomImportEnforcer.d.ts} +1 -1
  48. package/lib/models/rooms/iRoomImportEnforcer.js +2 -0
  49. package/lib/models/rooms/index.d.ts +3 -0
  50. package/lib/models/rooms/index.js +15 -0
  51. package/lib/models/temperaturSettings.d.ts +9 -0
  52. package/lib/models/temperaturSettings.js +21 -0
  53. package/lib/models/timeCallback.d.ts +19 -0
  54. package/lib/models/timeCallback.js +73 -0
  55. package/lib/server/config/iConfig.d.ts +45 -0
  56. package/lib/server/config/iConfig.js +2 -0
  57. package/lib/server/config/index.d.ts +1 -0
  58. package/lib/server/config/index.js +13 -0
  59. package/lib/server/devices/DeviceInfo.d.ts +17 -0
  60. package/lib/server/devices/DeviceInfo.js +48 -0
  61. package/lib/server/devices/Griffe.d.ts +5 -0
  62. package/lib/server/devices/Griffe.js +31 -0
  63. package/lib/server/devices/Heizgruppen.d.ts +8 -0
  64. package/lib/server/devices/Heizgruppen.js +78 -0
  65. package/lib/server/devices/Rollos.d.ts +5 -0
  66. package/lib/server/devices/Rollos.js +43 -0
  67. package/lib/server/devices/deviceUpdater.d.ts +13 -0
  68. package/lib/server/devices/deviceUpdater.js +64 -0
  69. package/lib/server/devices/devices.d.ts +21 -0
  70. package/lib/server/devices/devices.js +172 -0
  71. package/lib/server/devices/groups/fensterGroup.d.ts +15 -0
  72. package/lib/server/devices/groups/fensterGroup.js +138 -0
  73. package/lib/server/devices/groups/heatGroup.d.ts +9 -0
  74. package/lib/server/devices/groups/heatGroup.js +33 -0
  75. package/lib/server/devices/groups/index.d.ts +8 -0
  76. package/lib/server/devices/groups/index.js +20 -0
  77. package/lib/server/devices/groups/lampenGroup.d.ts +18 -0
  78. package/lib/server/devices/groups/lampenGroup.js +95 -0
  79. package/lib/server/devices/groups/praesenzGroup.d.ts +18 -0
  80. package/lib/server/devices/groups/praesenzGroup.js +145 -0
  81. package/lib/server/devices/groups/smokeGroup.d.ts +8 -0
  82. package/lib/server/devices/groups/smokeGroup.js +18 -0
  83. package/lib/server/devices/groups/sonosGroup.d.ts +11 -0
  84. package/lib/server/devices/groups/sonosGroup.js +38 -0
  85. package/lib/server/devices/groups/tasterGroup.d.ts +8 -0
  86. package/lib/server/devices/groups/tasterGroup.js +43 -0
  87. package/lib/server/devices/groups/waterGroup.d.ts +8 -0
  88. package/lib/server/devices/groups/waterGroup.js +18 -0
  89. package/lib/server/devices/hmIPDevices/Fenster.d.ts +22 -0
  90. package/lib/server/devices/hmIPDevices/Fenster.js +100 -0
  91. package/lib/server/devices/hmIPDevices/FensterPosition.d.ts +5 -0
  92. package/lib/server/devices/hmIPDevices/FensterPosition.js +9 -0
  93. package/lib/server/devices/hmIPDevices/TuerPosition.d.ts +4 -0
  94. package/lib/server/devices/hmIPDevices/TuerPosition.js +8 -0
  95. package/lib/server/devices/hmIPDevices/hmIpBewegung.d.ts +25 -0
  96. package/lib/server/devices/hmIPDevices/hmIpBewegung.js +106 -0
  97. package/lib/server/devices/hmIPDevices/hmIpDevice.d.ts +19 -0
  98. package/lib/server/devices/hmIPDevices/hmIpDevice.js +72 -0
  99. package/lib/server/devices/hmIPDevices/hmIpDeviceType.d.ts +14 -0
  100. package/lib/server/devices/hmIPDevices/hmIpDeviceType.js +18 -0
  101. package/lib/server/devices/hmIPDevices/hmIpGriff.d.ts +22 -0
  102. package/lib/server/devices/hmIPDevices/hmIpGriff.js +117 -0
  103. package/lib/server/devices/hmIPDevices/hmIpHeizgruppe.d.ts +34 -0
  104. package/lib/server/devices/hmIPDevices/hmIpHeizgruppe.js +143 -0
  105. package/lib/server/devices/hmIPDevices/hmIpHeizung.d.ts +15 -0
  106. package/lib/server/devices/hmIPDevices/hmIpHeizung.js +54 -0
  107. package/lib/server/devices/hmIPDevices/hmIpLampe.d.ts +27 -0
  108. package/lib/server/devices/hmIPDevices/hmIpLampe.js +96 -0
  109. package/lib/server/devices/hmIPDevices/hmIpPraezenz.d.ts +22 -0
  110. package/lib/server/devices/hmIPDevices/hmIpPraezenz.js +89 -0
  111. package/lib/server/devices/hmIPDevices/hmIpRoll.d.ts +22 -0
  112. package/lib/server/devices/hmIPDevices/hmIpRoll.js +105 -0
  113. package/lib/server/devices/hmIPDevices/hmIpTaster.d.ts +13 -0
  114. package/lib/server/devices/hmIPDevices/hmIpTaster.js +78 -0
  115. package/lib/server/devices/hmIPDevices/hmIpTherm.d.ts +7 -0
  116. package/lib/server/devices/hmIPDevices/hmIpTherm.js +17 -0
  117. package/lib/server/devices/hmIPDevices/hmIpTuer.d.ts +16 -0
  118. package/lib/server/devices/hmIPDevices/hmIpTuer.js +94 -0
  119. package/lib/server/devices/hmIPDevices/hmIpWippe.d.ts +12 -0
  120. package/lib/server/devices/hmIPDevices/hmIpWippe.js +50 -0
  121. package/lib/server/devices/hmIPDevices/index.d.ts +16 -0
  122. package/lib/server/devices/hmIPDevices/index.js +28 -0
  123. package/lib/server/devices/iDeviceUpdater.d.ts +5 -0
  124. package/lib/server/devices/iDeviceUpdater.js +2 -0
  125. package/{server/devices/iIlluminationSensor.ts → lib/server/devices/iIlluminationSensor.d.ts} +1 -1
  126. package/lib/server/devices/iIlluminationSensor.js +2 -0
  127. package/lib/server/devices/iIoBrokerDevice.d.ts +30 -0
  128. package/lib/server/devices/iIoBrokerDevice.js +37 -0
  129. package/lib/server/devices/iLamp.d.ts +8 -0
  130. package/lib/server/devices/iLamp.js +2 -0
  131. package/lib/server/devices/iTaster.d.ts +7 -0
  132. package/lib/server/devices/iTaster.js +2 -0
  133. package/lib/server/devices/index.d.ts +16 -0
  134. package/lib/server/devices/index.js +28 -0
  135. package/lib/server/devices/taste.d.ts +15 -0
  136. package/lib/server/devices/taste.js +64 -0
  137. package/lib/server/devices/wledDevice.d.ts +38 -0
  138. package/lib/server/devices/wledDevice.js +97 -0
  139. package/lib/server/devices/zigbee/ZigbeeActuator.d.ts +17 -0
  140. package/lib/server/devices/zigbee/ZigbeeActuator.js +83 -0
  141. package/lib/server/devices/zigbee/index.d.ts +13 -0
  142. package/lib/server/devices/zigbee/index.js +25 -0
  143. package/lib/server/devices/zigbee/zigbeeAquaraMotion.d.ts +31 -0
  144. package/lib/server/devices/zigbee/zigbeeAquaraMotion.js +137 -0
  145. package/lib/server/devices/zigbee/zigbeeAquaraVibra.d.ts +23 -0
  146. package/lib/server/devices/zigbee/zigbeeAquaraVibra.js +121 -0
  147. package/lib/server/devices/zigbee/zigbeeAquaraWater.d.ts +18 -0
  148. package/lib/server/devices/zigbee/zigbeeAquaraWater.js +84 -0
  149. package/lib/server/devices/zigbee/zigbeeBlitzShp.d.ts +16 -0
  150. package/lib/server/devices/zigbee/zigbeeBlitzShp.js +64 -0
  151. package/lib/server/devices/zigbee/zigbeeDevice.d.ts +20 -0
  152. package/lib/server/devices/zigbee/zigbeeDevice.js +83 -0
  153. package/lib/server/devices/zigbee/zigbeeDeviceType.d.ts +14 -0
  154. package/lib/server/devices/zigbee/zigbeeDeviceType.js +18 -0
  155. package/lib/server/devices/zigbee/zigbeeHeimanSmoke.d.ts +18 -0
  156. package/lib/server/devices/zigbee/zigbeeHeimanSmoke.js +89 -0
  157. package/lib/server/devices/zigbee/zigbeeIkeaSteckdose.d.ts +10 -0
  158. package/lib/server/devices/zigbee/zigbeeIkeaSteckdose.js +26 -0
  159. package/lib/server/devices/zigbee/zigbeeIlluActuator.d.ts +11 -0
  160. package/lib/server/devices/zigbee/zigbeeIlluActuator.js +28 -0
  161. package/lib/server/devices/zigbee/zigbeeIlluDimmer.d.ts +23 -0
  162. package/lib/server/devices/zigbee/zigbeeIlluDimmer.js +128 -0
  163. package/lib/server/devices/zigbee/zigbeeIlluLampe.d.ts +10 -0
  164. package/lib/server/devices/zigbee/zigbeeIlluLampe.js +31 -0
  165. package/lib/server/devices/zigbee/zigbeeIlluLedRGBCCT.d.ts +22 -0
  166. package/lib/server/devices/zigbee/zigbeeIlluLedRGBCCT.js +122 -0
  167. package/lib/server/index.d.ts +4 -0
  168. package/lib/server/index.js +16 -0
  169. package/lib/server/ioBroker/connection.d.ts +160 -0
  170. package/lib/server/ioBroker/connection.js +1419 -0
  171. package/lib/server/ioBroker/index.d.ts +6 -0
  172. package/lib/server/ioBroker/index.js +18 -0
  173. package/lib/server/ioBroker/ioBroker.main.d.ts +15 -0
  174. package/lib/server/ioBroker/ioBroker.main.js +85 -0
  175. package/lib/server/ioBroker/socketIOAuthInfo.d.ts +5 -0
  176. package/lib/server/ioBroker/socketIOAuthInfo.js +6 -0
  177. package/lib/server/ioBroker/socketIOConnectOptions.d.ts +6 -0
  178. package/lib/server/ioBroker/socketIOConnectOptions.js +6 -0
  179. package/lib/server/ioBroker/socketIOLogging.d.ts +12 -0
  180. package/lib/server/ioBroker/socketIOLogging.js +32 -0
  181. package/lib/server/ioBroker/socketIOVisCommand.d.ts +6 -0
  182. package/lib/server/ioBroker/socketIOVisCommand.js +11 -0
  183. package/lib/server/services/HTTPSOptions.d.ts +12 -0
  184. package/lib/server/services/HTTPSOptions.js +16 -0
  185. package/lib/server/services/Sonos/OwnSonosDevices.d.ts +7 -0
  186. package/lib/server/services/Sonos/OwnSonosDevices.js +10 -0
  187. package/lib/server/services/Sonos/index.d.ts +4 -0
  188. package/lib/server/services/Sonos/index.js +16 -0
  189. package/lib/server/services/Sonos/mp3-server.d.ts +7 -0
  190. package/lib/server/services/Sonos/mp3-server.js +90 -0
  191. package/lib/server/services/Sonos/polly-service.d.ts +12 -0
  192. package/lib/server/services/Sonos/polly-service.js +117 -0
  193. package/lib/server/services/Sonos/sonos-service.d.ts +30 -0
  194. package/lib/server/services/Sonos/sonos-service.js +140 -0
  195. package/lib/server/services/Telegram/index.d.ts +3 -0
  196. package/lib/server/services/Telegram/index.js +15 -0
  197. package/lib/server/services/Telegram/telegram-Commands.d.ts +3 -0
  198. package/lib/server/services/Telegram/telegram-Commands.js +128 -0
  199. package/lib/server/services/Telegram/telegram-service.d.ts +19 -0
  200. package/lib/server/services/Telegram/telegram-service.js +150 -0
  201. package/lib/server/services/Telegram/telegramMessageCalback.d.ts +9 -0
  202. package/lib/server/services/Telegram/telegramMessageCalback.js +13 -0
  203. package/lib/server/services/calendar/index.d.ts +2 -0
  204. package/lib/server/services/calendar/index.js +14 -0
  205. package/lib/server/services/calendar/muell-tonne.d.ts +12 -0
  206. package/lib/server/services/calendar/muell-tonne.js +73 -0
  207. package/lib/server/services/calendar/m/303/274ll-service.d.ts +24 -0
  208. package/lib/server/services/calendar/m/303/274ll-service.js +108 -0
  209. package/lib/server/services/dbo/index.d.ts +1 -0
  210. package/lib/server/services/dbo/index.js +13 -0
  211. package/lib/server/services/dbo/persist.d.ts +27 -0
  212. package/lib/server/services/dbo/persist.js +107 -0
  213. package/lib/server/services/https-service.d.ts +6 -0
  214. package/lib/server/services/https-service.js +87 -0
  215. package/lib/server/services/index.d.ts +12 -0
  216. package/lib/server/services/index.js +24 -0
  217. package/lib/server/services/log-service.d.ts +14 -0
  218. package/lib/server/services/log-service.js +41 -0
  219. package/lib/server/services/news-service.d.ts +10 -0
  220. package/lib/server/services/news-service.js +90 -0
  221. package/lib/server/services/settings-service.d.ts +6 -0
  222. package/lib/server/services/settings-service.js +19 -0
  223. package/lib/server/services/time-callback-service.d.ts +39 -0
  224. package/lib/server/services/time-callback-service.js +182 -0
  225. package/lib/server/services/utils/index.d.ts +2 -0
  226. package/lib/server/services/utils/index.js +14 -0
  227. package/lib/server/services/utils/ringstorage.d.ts +8 -0
  228. package/lib/server/services/utils/ringstorage.js +27 -0
  229. package/lib/server/services/utils/utils.d.ts +9 -0
  230. package/lib/server/services/utils/utils.js +44 -0
  231. package/lib/server/services/weather/index.d.ts +9 -0
  232. package/lib/server/services/weather/index.js +21 -0
  233. package/lib/server/services/weather/weather-alert.d.ts +7 -0
  234. package/lib/server/services/weather/weather-alert.js +2 -0
  235. package/lib/server/services/weather/weather-current.d.ts +25 -0
  236. package/lib/server/services/weather/weather-current.js +2 -0
  237. package/lib/server/services/weather/weather-daily.d.ts +21 -0
  238. package/lib/server/services/weather/weather-daily.js +2 -0
  239. package/lib/server/services/weather/weather-feelsLike.d.ts +6 -0
  240. package/lib/server/services/weather/weather-feelsLike.js +2 -0
  241. package/lib/server/services/weather/weather-hourly.d.ts +16 -0
  242. package/lib/server/services/weather/weather-hourly.js +2 -0
  243. package/lib/server/services/weather/weather-item.d.ts +6 -0
  244. package/lib/server/services/weather/weather-item.js +2 -0
  245. package/lib/server/services/weather/weather-minutes.d.ts +4 -0
  246. package/lib/server/services/weather/weather-minutes.js +2 -0
  247. package/lib/server/services/weather/weather-service.d.ts +37 -0
  248. package/lib/server/services/weather/weather-service.js +173 -0
  249. package/lib/server/services/weather/weather-temp.d.ts +8 -0
  250. package/lib/server/services/weather/weather-temp.js +2 -0
  251. package/lib/tsconfig.tsbuildinfo +1 -0
  252. package/package.json +21 -10
  253. package/.eslintrc.js +0 -27
  254. package/.github/workflows/npm-publish.yml +0 -33
  255. package/.prettierrc.js +0 -9
  256. package/index.js +0 -1
  257. package/models/actuatorSettings.ts +0 -5
  258. package/models/connectionCallbacks.ts +0 -13
  259. package/models/daytime.ts +0 -3
  260. package/models/deviceConfig.ts +0 -8
  261. package/models/dimmerSettings.ts +0 -5
  262. package/models/iTemperaturDataPoint.ts +0 -9
  263. package/models/ledSettings.ts +0 -19
  264. package/models/logLevel.ts +0 -9
  265. package/models/persistence/BasicRoomInfo.ts +0 -3
  266. package/models/persistence/CurrentIlluminationDataPoint.ts +0 -9
  267. package/models/persistence/DailyMovementCount.ts +0 -3
  268. package/models/persistence/RoomDetailInfo.ts +0 -4
  269. package/models/persistence/temperaturDataPoint.ts +0 -12
  270. package/models/persistence/todaysCount.ts +0 -3
  271. package/models/rooms/RoomBase.ts +0 -358
  272. package/models/rooms/RoomSettings/RoomSettings.ts +0 -159
  273. package/models/rooms/RoomSettings/hmIPRoomSettings.ts +0 -53
  274. package/models/rooms/RoomSettings/iRoomDefaultSettings.ts +0 -17
  275. package/models/rooms/RoomSettings/readme.md +0 -18
  276. package/models/rooms/RoomSettings/zigbeeRoomSettings.ts +0 -51
  277. package/models/rooms/readme.md +0 -11
  278. package/models/temperaturSettings.ts +0 -22
  279. package/models/timeCallback.ts +0 -90
  280. package/server/config/config-readme.md +0 -19
  281. package/server/config/iConfig.ts +0 -53
  282. package/server/config/private/mainConfig.json +0 -64
  283. package/server/devices/DeviceInfo.ts +0 -66
  284. package/server/devices/Griffe.ts +0 -31
  285. package/server/devices/Heizgruppen.ts +0 -91
  286. package/server/devices/Rollos.ts +0 -48
  287. package/server/devices/deviceUpdater.ts +0 -72
  288. package/server/devices/devices.ts +0 -193
  289. package/server/devices/groups/fensterGroup.ts +0 -175
  290. package/server/devices/groups/heatGroup.ts +0 -32
  291. package/server/devices/groups/lampenGroup.ts +0 -106
  292. package/server/devices/groups/praesenzGroup.ts +0 -187
  293. package/server/devices/groups/smokeGroup.ts +0 -16
  294. package/server/devices/groups/sonosGroup.ts +0 -33
  295. package/server/devices/groups/tasterGroup.ts +0 -48
  296. package/server/devices/groups/waterGroup.ts +0 -16
  297. package/server/devices/hmIPDevices/Fenster.ts +0 -114
  298. package/server/devices/hmIPDevices/FensterPosition.ts +0 -5
  299. package/server/devices/hmIPDevices/TuerPosition.ts +0 -4
  300. package/server/devices/hmIPDevices/hmIpBewegung.ts +0 -145
  301. package/server/devices/hmIPDevices/hmIpDevice.ts +0 -90
  302. package/server/devices/hmIPDevices/hmIpDeviceType.ts +0 -14
  303. package/server/devices/hmIPDevices/hmIpGriff.ts +0 -143
  304. package/server/devices/hmIPDevices/hmIpHeizgruppe.ts +0 -172
  305. package/server/devices/hmIPDevices/hmIpHeizung.ts +0 -69
  306. package/server/devices/hmIPDevices/hmIpLampe.ts +0 -120
  307. package/server/devices/hmIPDevices/hmIpPraezenz.ts +0 -117
  308. package/server/devices/hmIPDevices/hmIpRoll.ts +0 -133
  309. package/server/devices/hmIPDevices/hmIpTaster.ts +0 -82
  310. package/server/devices/hmIPDevices/hmIpTherm.ts +0 -19
  311. package/server/devices/hmIPDevices/hmIpTuer.ts +0 -115
  312. package/server/devices/hmIPDevices/hmIpWippe.ts +0 -55
  313. package/server/devices/iDeviceUpdater.ts +0 -4
  314. package/server/devices/iIoBrokerDevice.ts +0 -44
  315. package/server/devices/iLamp.ts +0 -10
  316. package/server/devices/iTaster.ts +0 -6
  317. package/server/devices/taste.ts +0 -84
  318. package/server/devices/wledDevice.ts +0 -124
  319. package/server/devices/zigbee/ZigbeeActuator.ts +0 -113
  320. package/server/devices/zigbee/zigbeeAquaraMotion.ts +0 -205
  321. package/server/devices/zigbee/zigbeeAquaraVibra.ts +0 -171
  322. package/server/devices/zigbee/zigbeeAquaraWater.ts +0 -94
  323. package/server/devices/zigbee/zigbeeBlitzShp.ts +0 -77
  324. package/server/devices/zigbee/zigbeeDevice.ts +0 -115
  325. package/server/devices/zigbee/zigbeeDeviceType.ts +0 -14
  326. package/server/devices/zigbee/zigbeeHeimanSmoke.ts +0 -99
  327. package/server/devices/zigbee/zigbeeIkeaSteckdose.ts +0 -31
  328. package/server/devices/zigbee/zigbeeIlluActuator.ts +0 -37
  329. package/server/devices/zigbee/zigbeeIlluDimmer.ts +0 -166
  330. package/server/devices/zigbee/zigbeeIlluLampe.ts +0 -33
  331. package/server/devices/zigbee/zigbeeIlluLedRGBCCT.ts +0 -137
  332. package/server/ioBroker/connection.ts +0 -1655
  333. package/server/ioBroker/ioBroker.main.ts +0 -99
  334. package/server/ioBroker/socketIOAuthInfo.ts +0 -5
  335. package/server/ioBroker/socketIOConnectOptions.ts +0 -6
  336. package/server/ioBroker/socketIOLogging.ts +0 -29
  337. package/server/ioBroker/socketIOVisCommand.ts +0 -11
  338. package/server/services/HTTPSOptions.ts +0 -14
  339. package/server/services/Sonos/OwnSonosDevices.ts +0 -9
  340. package/server/services/Sonos/mp3-server.ts +0 -75
  341. package/server/services/Sonos/polly-service.ts +0 -100
  342. package/server/services/Sonos/sonos-service.ts +0 -194
  343. package/server/services/Telegram/telegram-Commands.ts +0 -237
  344. package/server/services/Telegram/telegram-service.ts +0 -177
  345. package/server/services/Telegram/telegramMessageCalback.ts +0 -11
  346. package/server/services/calendar/muell-tonne.ts +0 -82
  347. package/server/services/calendar/m/303/274ll-service.ts +0 -147
  348. package/server/services/dbo/persist.ts +0 -142
  349. package/server/services/https-service.ts +0 -71
  350. package/server/services/log-service.ts +0 -69
  351. package/server/services/news-service.ts +0 -81
  352. package/server/services/settings-service.ts +0 -15
  353. package/server/services/time-callback-service.ts +0 -223
  354. package/server/services/utils/ringstorage.ts +0 -24
  355. package/server/services/utils/utils.ts +0 -52
  356. package/server/services/weather/weather-alert.ts +0 -7
  357. package/server/services/weather/weather-current.ts +0 -26
  358. package/server/services/weather/weather-daily.ts +0 -22
  359. package/server/services/weather/weather-feelsLike.ts +0 -6
  360. package/server/services/weather/weather-hourly.ts +0 -17
  361. package/server/services/weather/weather-item.ts +0 -6
  362. package/server/services/weather/weather-minutes.ts +0 -4
  363. package/server/services/weather/weather-service.ts +0 -277
  364. package/server/services/weather/weather-temp.ts +0 -8
  365. package/tsconfig.json +0 -58
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,3 @@
1
+ export * from './RoomBase';
2
+ export * from './iRoomImportEnforcer';
3
+ export * from './RoomSettings/index';
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
5
+ }) : (function(o, m, k, k2) {
6
+ if (k2 === undefined) k2 = k;
7
+ o[k2] = m[k];
8
+ }));
9
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
10
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
11
+ };
12
+ Object.defineProperty(exports, "__esModule", { value: true });
13
+ __exportStar(require("./RoomBase"), exports);
14
+ __exportStar(require("./iRoomImportEnforcer"), exports);
15
+ __exportStar(require("./RoomSettings/index"), exports);
@@ -0,0 +1,9 @@
1
+ import { Daytime } from './daytime';
2
+ export declare class TemperaturSettings {
3
+ start: Daytime;
4
+ end: Daytime;
5
+ temperatur: number;
6
+ active: boolean;
7
+ constructor(start: Daytime, end: Daytime, temperatur: number, active?: boolean);
8
+ isNowInRange(): boolean;
9
+ }
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.TemperaturSettings = void 0;
4
+ class TemperaturSettings {
5
+ constructor(start, end, temperatur, active = true) {
6
+ this.start = start;
7
+ this.end = end;
8
+ this.temperatur = temperatur;
9
+ this.active = active;
10
+ }
11
+ isNowInRange() {
12
+ const now = new Date().getTime();
13
+ const todayStart = new Date().setHours(this.start.hour, this.start.minute);
14
+ if (now < todayStart) {
15
+ return false;
16
+ }
17
+ const todayEnd = new Date().setHours(this.end.hour, this.end.minute);
18
+ return now < todayEnd;
19
+ }
20
+ }
21
+ exports.TemperaturSettings = TemperaturSettings;
@@ -0,0 +1,19 @@
1
+ import { SunTimeOffsets } from '../server/services/time-callback-service';
2
+ export declare class TimeCallback {
3
+ name: string;
4
+ type: TimeCallbackType;
5
+ cFunction: () => void;
6
+ minuteOffset: number;
7
+ hours?: number | undefined;
8
+ minutes?: number | undefined;
9
+ sunTimeOffset?: SunTimeOffsets | undefined;
10
+ lastDone: Date;
11
+ nextToDo?: Date;
12
+ constructor(name: string, type: TimeCallbackType, cFunction: () => void, minuteOffset: number, hours?: number | undefined, minutes?: number | undefined, sunTimeOffset?: SunTimeOffsets | undefined);
13
+ recalcNextToDo(now: Date): void;
14
+ }
15
+ export declare enum TimeCallbackType {
16
+ TimeOfDay = 1,
17
+ Sunrise = 2,
18
+ SunSet = 3
19
+ }
@@ -0,0 +1,73 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.TimeCallbackType = exports.TimeCallback = void 0;
4
+ const logLevel_1 = require("./logLevel");
5
+ const log_service_1 = require("../server/services/log-service");
6
+ const time_callback_service_1 = require("../server/services/time-callback-service");
7
+ class TimeCallback {
8
+ constructor(name, type, cFunction, minuteOffset, hours, minutes, sunTimeOffset) {
9
+ this.name = name;
10
+ this.type = type;
11
+ this.cFunction = cFunction;
12
+ this.minuteOffset = minuteOffset;
13
+ this.hours = hours;
14
+ this.minutes = minutes;
15
+ this.sunTimeOffset = sunTimeOffset;
16
+ this.lastDone = new Date(0);
17
+ }
18
+ recalcNextToDo(now) {
19
+ const today = new Date(now.getTime());
20
+ today.setHours(0, 0, 0, 0);
21
+ switch (this.type) {
22
+ case TimeCallbackType.TimeOfDay:
23
+ if (this.hours === undefined) {
24
+ this.hours = 0;
25
+ }
26
+ if (this.minutes === undefined) {
27
+ this.minutes = 0;
28
+ }
29
+ this.nextToDo = new Date(today.getTime() + this.hours * 60 * 60 * 1000 + (this.minutes + this.minuteOffset) * 60 * 1000);
30
+ if (this.nextToDo < now) {
31
+ // Heute ist schon abgelaufen, also morgen festlegen
32
+ this.nextToDo = new Date(this.nextToDo.getTime() + 24 * 60 * 60 * 1000);
33
+ }
34
+ log_service_1.ServerLogService.writeLog(logLevel_1.LogLevel.Trace, `Nächste Zeitevent für "${this.name}" um ${this.nextToDo.toLocaleTimeString('de-DE')}`);
35
+ break;
36
+ case TimeCallbackType.Sunrise:
37
+ let fixedSRDate = new Date(time_callback_service_1.TimeCallbackService.nextSunRise.getTime() + this.minuteOffset * 60 * 1000);
38
+ if (this.sunTimeOffset) {
39
+ const nextMinSR = this.sunTimeOffset.getNextMinimumSunrise();
40
+ if (nextMinSR > fixedSRDate && fixedSRDate.getDate() === nextMinSR.getDate()) {
41
+ fixedSRDate = nextMinSR;
42
+ }
43
+ }
44
+ if (now > fixedSRDate) {
45
+ return;
46
+ }
47
+ log_service_1.ServerLogService.writeLog(logLevel_1.LogLevel.Trace, `Nächste Zeitevent für "${this.name}" um ${fixedSRDate.toLocaleTimeString('de-DE')}`);
48
+ this.nextToDo = fixedSRDate;
49
+ break;
50
+ case TimeCallbackType.SunSet:
51
+ let fixedSSDate = new Date(time_callback_service_1.TimeCallbackService.nextSunSet.getTime() + this.minuteOffset * 60 * 1000);
52
+ if (this.sunTimeOffset) {
53
+ const nextMaxSS = this.sunTimeOffset.getNextMaximumSunset();
54
+ if (nextMaxSS < fixedSSDate && fixedSSDate.getDate() === nextMaxSS.getDate()) {
55
+ fixedSSDate = nextMaxSS;
56
+ }
57
+ }
58
+ if (now > fixedSSDate) {
59
+ return;
60
+ }
61
+ log_service_1.ServerLogService.writeLog(logLevel_1.LogLevel.Trace, `Nächste Zeitevent für "${this.name}" um ${fixedSSDate.toLocaleTimeString('de-DE')}`);
62
+ this.nextToDo = fixedSSDate;
63
+ break;
64
+ }
65
+ }
66
+ }
67
+ exports.TimeCallback = TimeCallback;
68
+ var TimeCallbackType;
69
+ (function (TimeCallbackType) {
70
+ TimeCallbackType[TimeCallbackType["TimeOfDay"] = 1] = "TimeOfDay";
71
+ TimeCallbackType[TimeCallbackType["Sunrise"] = 2] = "Sunrise";
72
+ TimeCallbackType[TimeCallbackType["SunSet"] = 3] = "SunSet";
73
+ })(TimeCallbackType = exports.TimeCallbackType || (exports.TimeCallbackType = {}));
@@ -0,0 +1,45 @@
1
+ import { LogLevel } from '../../models/logLevel';
2
+ import { iRoomDefaultSettings } from '../../models/rooms/RoomSettings/iRoomDefaultSettings';
3
+ export interface iConfig {
4
+ roomDefault: iRoomDefaultSettings;
5
+ timeSettings: iTimeSettings;
6
+ ioBrokerUrl: string;
7
+ telegram?: iTelegramSettings;
8
+ polly?: iPollySettings;
9
+ mp3Server?: iMp3Settings;
10
+ weather?: iWeatherSettings;
11
+ muell?: iMuellSettings;
12
+ }
13
+ export interface iTimePair {
14
+ hours: number;
15
+ minutes: number;
16
+ }
17
+ export interface iTimeSettings {
18
+ nightStart: iTimePair;
19
+ nightEnd: iTimePair;
20
+ }
21
+ export interface iTelegramSettings {
22
+ logLevel: LogLevel;
23
+ telegramToken: string;
24
+ allowedIDs: number[];
25
+ subscribedIDs: number[];
26
+ }
27
+ export interface iPollySettings {
28
+ mp3Path: string;
29
+ region: string;
30
+ signatureVersion: string;
31
+ accessKeyId: string;
32
+ secretAccessKey: string;
33
+ voiceID: string;
34
+ }
35
+ export interface iMp3Settings {
36
+ path: string;
37
+ }
38
+ export interface iWeatherSettings {
39
+ lattitude: string;
40
+ longitude: string;
41
+ appid: string;
42
+ }
43
+ export interface iMuellSettings {
44
+ calendarURL: string;
45
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1 @@
1
+ export * from './iConfig';
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
5
+ }) : (function(o, m, k, k2) {
6
+ if (k2 === undefined) k2 = k;
7
+ o[k2] = m[k];
8
+ }));
9
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
10
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
11
+ };
12
+ Object.defineProperty(exports, "__esModule", { value: true });
13
+ __exportStar(require("./iConfig"), exports);
@@ -0,0 +1,17 @@
1
+ import { deviceConfig } from '../../models/deviceConfig';
2
+ export declare class DeviceInfo {
3
+ devID: string;
4
+ room: string;
5
+ deviceType: string;
6
+ deviceRoomIndex: number;
7
+ type: 'device' | 'channel' | 'state';
8
+ fullName: string;
9
+ private _customName?;
10
+ fullID: string;
11
+ channel?: number;
12
+ valueName?: string;
13
+ devConf: deviceConfig;
14
+ constructor(pDevConf: deviceConfig);
15
+ set customName(val: string);
16
+ get customName(): string;
17
+ }
@@ -0,0 +1,48 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DeviceInfo = void 0;
4
+ class DeviceInfo {
5
+ constructor(pDevConf) {
6
+ this.devConf = pDevConf;
7
+ this.type = pDevConf.type;
8
+ this.fullID = pDevConf._id;
9
+ /**
10
+ * 0: hm-rpc
11
+ * 1: rcpInstance
12
+ * 2: Device ID
13
+ * 3?: Channel
14
+ * 4?: ValueName
15
+ */
16
+ const idSplit = pDevConf._id.split('.');
17
+ this.devID = idSplit[2];
18
+ if (idSplit.length > 3) {
19
+ this.channel = Number(idSplit[3]);
20
+ }
21
+ if (idSplit.length > 4) {
22
+ this.valueName = idSplit[4];
23
+ }
24
+ this.fullName = pDevConf.common.name;
25
+ /**
26
+ * 0: Indikator own "00"
27
+ * 1: "HmIP"
28
+ * 2: Raum
29
+ * 3: Was für ein Gerät
30
+ * 4: Index dieses Gerätes im Raum (ggf. + :Channel)
31
+ * 5?: Name des Wertes
32
+ */
33
+ const nameSplit = pDevConf.common.name.split('-');
34
+ this.room = nameSplit[2];
35
+ this.deviceType = nameSplit[3];
36
+ this.deviceRoomIndex = Number(nameSplit[4].split(':')[0]);
37
+ }
38
+ set customName(val) {
39
+ this._customName = val;
40
+ }
41
+ get customName() {
42
+ if (this._customName !== undefined) {
43
+ return this._customName;
44
+ }
45
+ return this.fullName;
46
+ }
47
+ }
48
+ exports.DeviceInfo = DeviceInfo;
@@ -0,0 +1,5 @@
1
+ import { HmIpGriff } from './hmIPDevices/hmIpGriff';
2
+ export declare class Griffe {
3
+ static getGriffPosition(): string;
4
+ static getAllGriffe(): HmIpGriff[];
5
+ }
@@ -0,0 +1,31 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Griffe = void 0;
4
+ const devices_1 = require("./devices");
5
+ const FensterPosition_1 = require("./hmIPDevices/FensterPosition");
6
+ const hmIpDeviceType_1 = require("./hmIPDevices/hmIpDeviceType");
7
+ class Griffe {
8
+ static getGriffPosition() {
9
+ const griffe = Griffe.getAllGriffe();
10
+ griffe.sort((a, b) => {
11
+ a.position;
12
+ return b.position - a.position;
13
+ });
14
+ const response = [`Dies sind die aktuellen Stellungen der FensterGriffe:`];
15
+ for (const g of griffe) {
16
+ response.push(`${FensterPosition_1.FensterPosition[g.position]} Fenster: "${g.info.customName}"`);
17
+ }
18
+ return response.join('\n');
19
+ }
20
+ static getAllGriffe() {
21
+ const griffe = [];
22
+ for (const dID in devices_1.Devices.hmIP) {
23
+ const d = devices_1.Devices.hmIP[dID];
24
+ if (d.deviceType === hmIpDeviceType_1.HmIpDeviceType.HmIpGriff) {
25
+ griffe.push(d);
26
+ }
27
+ }
28
+ return griffe;
29
+ }
30
+ }
31
+ exports.Griffe = Griffe;
@@ -0,0 +1,8 @@
1
+ import { HmIpHeizgruppe } from './hmIPDevices/hmIpHeizgruppe';
2
+ export declare class Heizgruppen {
3
+ static getInfo(): string;
4
+ static getSpecificInfo(pText: string | undefined): Promise<string>;
5
+ static getProblems(): string;
6
+ static getAllGruppen(): HmIpHeizgruppe[];
7
+ static getSpecificGroup(name: string): HmIpHeizgruppe | undefined;
8
+ }
@@ -0,0 +1,78 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Heizgruppen = void 0;
4
+ const persist_1 = require("../services/dbo/persist");
5
+ const devices_1 = require("./devices");
6
+ const hmIpDeviceType_1 = require("./hmIPDevices/hmIpDeviceType");
7
+ class Heizgruppen {
8
+ static getInfo() {
9
+ const gruppen = Heizgruppen.getAllGruppen();
10
+ gruppen.sort((a, b) => {
11
+ return a.info.customName.localeCompare(b.info.customName);
12
+ });
13
+ const response = [`Dies sind die aktuellen Informationen der Heizungen:`];
14
+ response.push(`Name\t\tLuft Feuchtigkeit\t\tAktuelle Temperatur\t\tSoll Temperatur\t\tVentilstellung`);
15
+ for (const g of gruppen) {
16
+ response.push(`${g.info.customName}:\t\t${g.humidity}%\t\t${g.sTemperatur}\t\t${g.desiredTemperatur}°C\t\t${g.sLevel}`);
17
+ }
18
+ return response.join('\n');
19
+ }
20
+ static async getSpecificInfo(pText) {
21
+ if (pText === undefined || !pText.includes('"')) {
22
+ return `Bitte übergeben Sie eine Heizgruppe innerhalb von "". z.B. "EG Flur HeizGr"`;
23
+ }
24
+ const searchText = pText.split('"')[1];
25
+ const group = this.getSpecificGroup(searchText);
26
+ if (group === undefined) {
27
+ return `"${searchText}" ist keine gültige Heizgruppe, im Folgenden ist eine Liste aller gültigen Heizgruppen:\n${this.getInfo()}`;
28
+ }
29
+ const results = await persist_1.Persist.readTemperaturDataPoint(group, 20);
30
+ const response = [`Dies sind die letzten 20 Messpunkte der Heizgruppe:`];
31
+ response.push(`Zeitpunkt\t\tIst-Temperatur\t\tSoll-Temperatur\t\tVentilstellung`);
32
+ for (const r of results) {
33
+ response.push(`${r.date.toLocaleTimeString('de-DE')}:\t\t${r.istTemperatur}°C\t\t${r.sollTemperatur}°C\t\t${r.level}%`);
34
+ }
35
+ return response.join('\n');
36
+ }
37
+ static getProblems() {
38
+ const groups = this.getAllGruppen();
39
+ const response = [`Dies sind die bestehenden Differenzen:`];
40
+ response.push(`Raumname\t\tIst-Temperatur\t\tGerät`);
41
+ for (const g of groups) {
42
+ const heizungen = g.getBelongingHeizungen();
43
+ const tempProblem = [`${g.info.room}\t\t${g.iTemperatur}°C\t\t${g.info.customName}`];
44
+ let print = false;
45
+ for (const h of heizungen) {
46
+ if (h.iTemperatur !== g.iTemperatur) {
47
+ print = true;
48
+ }
49
+ tempProblem.push(`${h.info.room}\t\t${h.iTemperatur}°C\t\t${h.info.customName}`);
50
+ }
51
+ if (print) {
52
+ response.push(tempProblem.join('\n'));
53
+ response.push(' ');
54
+ }
55
+ }
56
+ return response.join('\n');
57
+ }
58
+ static getAllGruppen() {
59
+ const gruppen = [];
60
+ for (const dID in devices_1.Devices.hmIP) {
61
+ const d = devices_1.Devices.hmIP[dID];
62
+ if (d.deviceType === hmIpDeviceType_1.HmIpDeviceType.HmIpHeizgruppe) {
63
+ gruppen.push(d);
64
+ }
65
+ }
66
+ return gruppen;
67
+ }
68
+ static getSpecificGroup(name) {
69
+ for (const dID in devices_1.Devices.hmIP) {
70
+ const d = devices_1.Devices.hmIP[dID];
71
+ if (d.deviceType === hmIpDeviceType_1.HmIpDeviceType.HmIpHeizgruppe && d.info.customName === name) {
72
+ return d;
73
+ }
74
+ }
75
+ return undefined;
76
+ }
77
+ }
78
+ exports.Heizgruppen = Heizgruppen;
@@ -0,0 +1,5 @@
1
+ import { HmIpRoll } from './hmIPDevices/hmIpRoll';
2
+ export declare class Rolladen {
3
+ static getRolladenPosition(): string;
4
+ static getAllRollos(): HmIpRoll[];
5
+ }
@@ -0,0 +1,43 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Rolladen = void 0;
4
+ const devices_1 = require("./devices");
5
+ const hmIpDeviceType_1 = require("./hmIPDevices/hmIpDeviceType");
6
+ const RoomBase_1 = require("../../models/rooms/RoomBase");
7
+ class Rolladen {
8
+ static getRolladenPosition() {
9
+ var _a, _b, _c, _d;
10
+ const rollos = Rolladen.getAllRollos();
11
+ rollos.sort((a, b) => {
12
+ return b.currentLevel - a.currentLevel;
13
+ });
14
+ const response = [`Dies sind die aktuellen Rollo Positionen:`];
15
+ for (const r of rollos) {
16
+ response.push(`${r.currentLevel}% Rollo: "${r.info.customName}" Gewünschte Position: ${r.desiredFensterLevel}`);
17
+ }
18
+ response.push(`\nDie nächsten Zeiten zum Hochfahren:`);
19
+ const down = [`\nDie nächsten Zeiten zum Runterfahren:`];
20
+ const rooms = RoomBase_1.RoomBase.allRooms;
21
+ for (const r of rooms) {
22
+ for (const f of r.FensterGroup.fenster) {
23
+ if (f.rollo) {
24
+ response.push(`Rollo: "${f.rollo.info.customName}"\t${f.noRolloOnSunrise ? 'Hochfahren inaktiv' : (_b = (_a = r.sonnenAufgangCallback) === null || _a === void 0 ? void 0 : _a.nextToDo) === null || _b === void 0 ? void 0 : _b.toLocaleTimeString()}`);
25
+ down.push(`Rollo: "${f.rollo.info.customName}"\t${(_d = (_c = r.sonnenUntergangCallback) === null || _c === void 0 ? void 0 : _c.nextToDo) === null || _d === void 0 ? void 0 : _d.toLocaleTimeString()}`);
26
+ }
27
+ }
28
+ }
29
+ response.push(down.join('\n'));
30
+ return response.join('\n');
31
+ }
32
+ static getAllRollos() {
33
+ const rollos = [];
34
+ for (const dID in devices_1.Devices.hmIP) {
35
+ const d = devices_1.Devices.hmIP[dID];
36
+ if (d.deviceType === hmIpDeviceType_1.HmIpDeviceType.HmIpRoll) {
37
+ rollos.push(d);
38
+ }
39
+ }
40
+ return rollos;
41
+ }
42
+ }
43
+ exports.Rolladen = Rolladen;
@@ -0,0 +1,13 @@
1
+ /// <reference types="iobroker" />
2
+ import { Devices } from './devices';
3
+ import { IDeviceUpdater } from './iDeviceUpdater';
4
+ export declare class DeviceUpdater implements IDeviceUpdater {
5
+ private static IDENTIFIER_HOMEMATIC;
6
+ private static IDENTIFIER_ZIGBEE;
7
+ devices: Devices;
8
+ constructor(pDevices: Devices);
9
+ updateObject(pId: string, pObj: ioBroker.Object): void;
10
+ updateState(id: string, state: ioBroker.State, initial?: boolean): void;
11
+ private updateHomeMaticDevice;
12
+ private updateZigbeeDevice;
13
+ }
@@ -0,0 +1,64 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DeviceUpdater = void 0;
4
+ const logLevel_1 = require("../../models/logLevel");
5
+ const log_service_1 = require("../services/log-service");
6
+ const devices_1 = require("./devices");
7
+ class DeviceUpdater {
8
+ constructor(pDevices) {
9
+ this.devices = pDevices;
10
+ }
11
+ updateObject(pId, pObj) {
12
+ const idSplit = pId.split('.');
13
+ if (idSplit.length < 2)
14
+ return;
15
+ if (idSplit[0] === DeviceUpdater.IDENTIFIER_HOMEMATIC) {
16
+ console.log(`Neuer Wert in HomematicIP für ${pId}: ${JSON.stringify(pObj)}`);
17
+ }
18
+ }
19
+ updateState(id, state, initial = false) {
20
+ if (state === null) {
21
+ // Ignore null states
22
+ return;
23
+ }
24
+ const idSplit = id.split('.');
25
+ if (idSplit.length < 2)
26
+ return;
27
+ if (idSplit[0] === DeviceUpdater.IDENTIFIER_HOMEMATIC) {
28
+ try {
29
+ this.updateHomeMaticDevice(idSplit, state, initial);
30
+ }
31
+ catch (e) {
32
+ log_service_1.ServerLogService.writeLog(logLevel_1.LogLevel.Alert, `deviceUpdater.updateState('${id}', '${state}'): Error occured updating Device: ${e} \n ${e.stack}`);
33
+ }
34
+ }
35
+ else if (idSplit[0] === DeviceUpdater.IDENTIFIER_ZIGBEE) {
36
+ try {
37
+ this.updateZigbeeDevice(idSplit, state, initial);
38
+ }
39
+ catch (e) {
40
+ log_service_1.ServerLogService.writeLog(logLevel_1.LogLevel.Alert, `deviceUpdater.updateState('${id}', '${state}'): Error occured updating Device: ${e} \n ${e.stack}`);
41
+ }
42
+ }
43
+ else {
44
+ log_service_1.ServerLogService.writeLog(logLevel_1.LogLevel.DeepTrace, `unbekannter Identifier: "${idSplit[0]}"`);
45
+ }
46
+ }
47
+ updateHomeMaticDevice(idSplit, state, initial = false) {
48
+ const device = devices_1.Devices.hmIP[idSplit[2]];
49
+ if (typeof device === 'undefined') {
50
+ return;
51
+ }
52
+ device.update(idSplit, state, initial);
53
+ }
54
+ updateZigbeeDevice(idSplit, state, initial = false) {
55
+ const device = devices_1.Devices.Zigbee[idSplit[2]];
56
+ if (typeof device === 'undefined') {
57
+ return;
58
+ }
59
+ device.update(idSplit, state, initial);
60
+ }
61
+ }
62
+ exports.DeviceUpdater = DeviceUpdater;
63
+ DeviceUpdater.IDENTIFIER_HOMEMATIC = 'hm-rpc';
64
+ DeviceUpdater.IDENTIFIER_ZIGBEE = 'zigbee';
@@ -0,0 +1,21 @@
1
+ import { IOBrokerConnection } from '../ioBroker/connection';
2
+ import { HmIPDevice } from './hmIPDevices/hmIpDevice';
3
+ import { ZigbeeDevice } from './zigbee/zigbeeDevice';
4
+ import { deviceConfig } from '../../models/deviceConfig';
5
+ import { iRoomImportEnforcer } from '../../models/rooms/iRoomImportEnforcer';
6
+ export declare class Devices {
7
+ static hmIP: {
8
+ [id: string]: HmIPDevice;
9
+ };
10
+ static Zigbee: {
11
+ [id: string]: ZigbeeDevice;
12
+ };
13
+ constructor(pDeviceData: {
14
+ [id: string]: deviceConfig;
15
+ }, pRoomImportEnforcer: iRoomImportEnforcer);
16
+ static addIoConnection(pIoConnection: IOBrokerConnection): void;
17
+ static midnightReset(): void;
18
+ static resetPraesenzCount(): void;
19
+ private processZigbeeDevice;
20
+ private processHMIPDevice;
21
+ }