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,309 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.RoomBase = void 0;
4
+ const hmIpDevice_1 = require("../../server/devices/hmIPDevices/hmIpDevice");
5
+ const tasterGroup_1 = require("../../server/devices/groups/tasterGroup");
6
+ const praesenzGroup_1 = require("../../server/devices/groups/praesenzGroup");
7
+ const ringstorage_1 = require("../../server/services/utils/ringstorage");
8
+ const telegram_service_1 = require("../../server/services/Telegram/telegram-service");
9
+ const heatGroup_1 = require("../../server/devices/groups/heatGroup");
10
+ const logLevel_1 = require("../logLevel");
11
+ const waterGroup_1 = require("../../server/devices/groups/waterGroup");
12
+ const log_service_1 = require("../../server/services/log-service");
13
+ const utils_1 = require("../../server/services/utils/utils");
14
+ const lampenGroup_1 = require("../../server/devices/groups/lampenGroup");
15
+ const smokeGroup_1 = require("../../server/devices/groups/smokeGroup");
16
+ const fensterGroup_1 = require("../../server/devices/groups/fensterGroup");
17
+ const zigbeeDevice_1 = require("../../server/devices/zigbee/zigbeeDevice");
18
+ const persist_1 = require("../../server/services/dbo/persist");
19
+ const time_callback_service_1 = require("../../server/services/time-callback-service");
20
+ const sonos_service_1 = require("../../server/services/Sonos/sonos-service");
21
+ const sonosGroup_1 = require("../../server/devices/groups/sonosGroup");
22
+ class RoomBase {
23
+ constructor(roomName, Einstellungen) {
24
+ this.roomName = roomName;
25
+ this.Einstellungen = Einstellungen;
26
+ this.FensterGroup = new fensterGroup_1.FensterGroup(this, []);
27
+ this.PraesenzGroup = new praesenzGroup_1.PraesenzGroup(this, [], []);
28
+ this.LampenGroup = new lampenGroup_1.LampenGroup(this, [], [], []);
29
+ this.TasterGroup = new tasterGroup_1.TasterGroup(this, []);
30
+ this.SonosGroup = new sonosGroup_1.SonosGroup(this, []);
31
+ this.SmokeGroup = new smokeGroup_1.SmokeGroup(this, []);
32
+ this.WaterGroup = new waterGroup_1.WaterGroup(this, []);
33
+ this.HeatGroup = new heatGroup_1.HeatGroup(this, []);
34
+ this.skipNextRolloUp = false;
35
+ if (Einstellungen.etage !== undefined) {
36
+ const level = Einstellungen.etage;
37
+ if (RoomBase.floors[level] === undefined) {
38
+ RoomBase.floors[level] = [];
39
+ }
40
+ RoomBase.floors[level].push(this);
41
+ }
42
+ Einstellungen.room = this;
43
+ this.Settings = Einstellungen;
44
+ RoomBase.allRooms.push(this);
45
+ }
46
+ static registerRoomForDevices(roomSettings) {
47
+ if (roomSettings.hmIpSettings !== undefined) {
48
+ hmIpDevice_1.HmIPDevice.addRoom(roomSettings.shortName, roomSettings.hmIpSettings);
49
+ }
50
+ if (roomSettings.zigbeeSettings !== undefined) {
51
+ zigbeeDevice_1.ZigbeeDevice.addRoom(roomSettings.shortName, roomSettings.zigbeeSettings);
52
+ }
53
+ }
54
+ static addToRoomList(room) {
55
+ RoomBase.Rooms[room.roomName] = room;
56
+ }
57
+ static getAllRoomsOfFloor(floor) {
58
+ return this.floors[floor];
59
+ }
60
+ /**
61
+ * Set ALl Roolos of a specific floor
62
+ * !!floor -1 sets all rollos in house instead!!
63
+ * @param floor the level on which all rollos shall be changed -1 equals all rooms
64
+ * @param position (0 equals down, 100 up)
65
+ */
66
+ static setAllRolloOfFloor(floor = -1, position = 0) {
67
+ const rooms = floor > -1 ? this.getAllRoomsOfFloor(floor) : this.allRooms;
68
+ for (const room of rooms) {
69
+ room.FensterGroup.allRolloToLevel(position, true);
70
+ }
71
+ }
72
+ /**
73
+ * Set ALl Lamps of a specific floor
74
+ * !!floor -1 sets all lamps in house instead!!
75
+ * @param floor the level on which all lamps shall be changed -1 equals all rooms
76
+ * @param status
77
+ */
78
+ static setAllLampsOfFloor(floor, status = false) {
79
+ log_service_1.ServerLogService.writeLog(logLevel_1.LogLevel.Info, `Schalte alle Lampen in Etage ${floor} auf den Wert ${status}`);
80
+ const rooms = floor > -1 ? this.getAllRoomsOfFloor(floor) : this.allRooms;
81
+ for (const room of rooms) {
82
+ room.LampenGroup.setAllLampen(status, -1, true);
83
+ room.LampenGroup.setAllLED(status);
84
+ room.LampenGroup.setAllStecker(status, -1, true);
85
+ }
86
+ }
87
+ static clearAllAlarms() {
88
+ for (const r of RoomBase.allRooms) {
89
+ if (r.WaterGroup) {
90
+ r.WaterGroup.stopAlarm();
91
+ }
92
+ if (r.SmokeGroup) {
93
+ r.SmokeGroup.stopAlarm();
94
+ }
95
+ }
96
+ this.stopIntrusionAlarm();
97
+ this.restoreRolloPosition();
98
+ this.restoreLight();
99
+ }
100
+ static startAwayMode() {
101
+ sonos_service_1.SonosService.speakOnAll(`Alarmanlage wird scharfgeschaltet.`, 40);
102
+ if (this._awayModeTimer) {
103
+ clearTimeout(this._awayModeTimer);
104
+ }
105
+ this._awayModeTimer = utils_1.Utils.guardedTimeout(() => {
106
+ this.awayModeActive = true;
107
+ this._awayModeTimer = undefined;
108
+ telegram_service_1.TelegramService.inform(`Alarm ist nun scharf. Gute Reise!`);
109
+ }, 60000, this);
110
+ }
111
+ static startNightAlarmMode() {
112
+ sonos_service_1.SonosService.speakOnAll(`Alarmanlage wird für die Nacht scharfgeschaltet. Gute Nacht!`, 30);
113
+ if (this._nightModeTimer) {
114
+ clearTimeout(this._nightModeTimer);
115
+ }
116
+ this._nightModeTimer = utils_1.Utils.guardedTimeout(() => {
117
+ this.nightAlarmActive = true;
118
+ this._nightModeTimer = undefined;
119
+ telegram_service_1.TelegramService.inform(`Alarm ist nun scharf. Süße Träume!`);
120
+ }, 60000, this);
121
+ }
122
+ static startIntrusionAlarm(room, device) {
123
+ const message = `!Potenzieller Eindringling! Bewegung in ${room.roomName} von ${device.info.fullName} festgestellt`;
124
+ log_service_1.ServerLogService.writeLog(logLevel_1.LogLevel.Info, message);
125
+ if (!this.awayModeActive && !this.nightAlarmActive) {
126
+ this.stopIntrusionAlarm();
127
+ return;
128
+ }
129
+ utils_1.Utils.guardedNewThread(() => {
130
+ telegram_service_1.TelegramService.inform(message);
131
+ }, this);
132
+ if (this._intrusionAlarmActive) {
133
+ return;
134
+ }
135
+ this._intrusionAlarmActive = true;
136
+ this.performNextIntrusionLevel();
137
+ }
138
+ static endAlarmModes() {
139
+ if (this.awayModeActive) {
140
+ telegram_service_1.TelegramService.sendMessage(telegram_service_1.TelegramService.subscribedIDs, `Alarmanalage entschärft`);
141
+ sonos_service_1.SonosService.speakOnAll(`Willkommen Zuhause!`, 35);
142
+ }
143
+ if (this.nightAlarmActive) {
144
+ telegram_service_1.TelegramService.sendMessage(telegram_service_1.TelegramService.subscribedIDs, `Nachtmodus der Alarmanlage entschärft`);
145
+ sonos_service_1.SonosService.speakOnAll(`Guten Morgen!`, 30);
146
+ }
147
+ if (this._nightModeTimer) {
148
+ clearTimeout(this._nightModeTimer);
149
+ }
150
+ if (this._awayModeTimer) {
151
+ clearTimeout(this._awayModeTimer);
152
+ }
153
+ this.awayModeActive = false;
154
+ this.nightAlarmActive = false;
155
+ this.stopIntrusionAlarm();
156
+ }
157
+ static getLastMovements() {
158
+ return this.movementHistory.readAmount(15).join('\n');
159
+ }
160
+ initializeBase() {
161
+ log_service_1.ServerLogService.writeLog(logLevel_1.LogLevel.Debug, `RoomBase Init für ${this.roomName}`);
162
+ this.recalcTimeCallbacks();
163
+ this.PraesenzGroup.initCallbacks();
164
+ this.FensterGroup.initCallbacks();
165
+ this.TasterGroup.initCallbacks();
166
+ }
167
+ persist() {
168
+ persist_1.Persist.addRoom(this);
169
+ }
170
+ recalcTimeCallbacks() {
171
+ const now = new Date();
172
+ if (this.sonnenAufgangCallback && this.Einstellungen.rolloOffset) {
173
+ this.sonnenAufgangCallback.minuteOffset = this.Einstellungen.rolloOffset.sunrise;
174
+ this.sonnenAufgangCallback.sunTimeOffset = this.Einstellungen.rolloOffset;
175
+ this.sonnenAufgangCallback.recalcNextToDo(now);
176
+ }
177
+ if (this.sonnenUntergangCallback && this.Einstellungen.rolloOffset) {
178
+ this.sonnenUntergangCallback.minuteOffset = this.Einstellungen.rolloOffset.sunset;
179
+ this.sonnenUntergangCallback.sunTimeOffset = this.Einstellungen.rolloOffset;
180
+ this.sonnenUntergangCallback.recalcNextToDo(now);
181
+ }
182
+ if (this.sonnenAufgangLichtCallback && this.Einstellungen.lampOffset) {
183
+ this.sonnenAufgangLichtCallback.minuteOffset = this.Einstellungen.lampOffset.sunrise;
184
+ this.sonnenAufgangLichtCallback.recalcNextToDo(now);
185
+ }
186
+ }
187
+ /**
188
+ * Sets the light based on the current time, rollo Position and room Settings
189
+ * @param movementDependant Only turn light on if there was a movement in the same room
190
+ */
191
+ setLightTimeBased(movementDependant = false) {
192
+ if (movementDependant && !this.PraesenzGroup.anyPresent()) {
193
+ this.LampenGroup.switchAll(false);
194
+ return;
195
+ }
196
+ if (!this.Einstellungen.lampOffset) {
197
+ log_service_1.ServerLogService.writeLog(logLevel_1.LogLevel.Alert, `Beim Aufruf von "setLightTimeBased" im Raum ${this.roomName} liegt kein Lampen Offset vor`);
198
+ return;
199
+ }
200
+ let timeOfDay = time_callback_service_1.TimeCallbackService.dayType(this.Einstellungen.lampOffset);
201
+ if (timeOfDay === time_callback_service_1.TimeOfDay.Daylight &&
202
+ ((this.Einstellungen.lightIfNoWindows && this.FensterGroup.fenster.length === 0) ||
203
+ this.FensterGroup.fenster.some((f) => {
204
+ var _a, _b;
205
+ const rolloDown = ((_a = f.rollo) === null || _a === void 0 ? void 0 : _a.currentLevel) === 0;
206
+ log_service_1.ServerLogService.writeLog(logLevel_1.LogLevel.Debug, `Rollo ${(_b = f.rollo) === null || _b === void 0 ? void 0 : _b.info.customName} for light in ${this.roomName} is ${rolloDown ? '' : 'not '}down`);
207
+ return rolloDown;
208
+ }))) {
209
+ timeOfDay = time_callback_service_1.TimeOfDay.AfterSunset;
210
+ }
211
+ this.LampenGroup.switchTimeConditional(timeOfDay);
212
+ }
213
+ isNowLightTime() {
214
+ if (!this.Einstellungen.lampOffset) {
215
+ log_service_1.ServerLogService.writeLog(logLevel_1.LogLevel.Alert, `Beim Aufruf von "setLightTimeBased" im Raum ${this.roomName} liegt kein Lampen Offset vor`);
216
+ return false;
217
+ }
218
+ let timeOfDay = time_callback_service_1.TimeCallbackService.dayType(this.Einstellungen.lampOffset);
219
+ if (timeOfDay === time_callback_service_1.TimeOfDay.Daylight &&
220
+ this.FensterGroup.fenster.some((f) => {
221
+ var _a;
222
+ return ((_a = f.rollo) === null || _a === void 0 ? void 0 : _a.currentLevel) === 0;
223
+ })) {
224
+ timeOfDay = time_callback_service_1.TimeOfDay.AfterSunset;
225
+ }
226
+ return time_callback_service_1.TimeCallbackService.darkOutsideOrNight(timeOfDay);
227
+ }
228
+ static stopIntrusionAlarm() {
229
+ log_service_1.ServerLogService.writeLog(logLevel_1.LogLevel.Info, `Stoppe Intrusion Alarm`);
230
+ if (this._intrusionAlarmTimeout) {
231
+ clearTimeout(this._intrusionAlarmTimeout);
232
+ }
233
+ if (!this._intrusionAlarmActive) {
234
+ return;
235
+ }
236
+ this._intrusionAlarmActive = false;
237
+ this._intrusionAlarmLevel = 0;
238
+ log_service_1.ServerLogService.writeLog(logLevel_1.LogLevel.Alert, `Alarm wurde beendet --> Fahre Rollos in Ausgangsposition.`);
239
+ this.restoreRolloPosition();
240
+ this.restoreLight();
241
+ }
242
+ static performNextIntrusionLevel() {
243
+ this._intrusionAlarmTimeout = undefined;
244
+ if (!this.awayModeActive && !this._intrusionAlarmActive) {
245
+ return;
246
+ }
247
+ this._intrusionAlarmLevel += 1;
248
+ let speakMessage;
249
+ let volume = 50;
250
+ let newTimeout = 20000;
251
+ const alarmAutomaticEnd = 15;
252
+ if (this._intrusionAlarmLevel === 1) {
253
+ speakMessage = `Hallo potenzieller Eindringling! Das Alarmprotokoll ist initiiert bitte verlassen Sie umgehend das Gebäude!`;
254
+ volume = 40;
255
+ }
256
+ else if (this._intrusionAlarmLevel === 2) {
257
+ speakMessage = `Alle Rollos fahren hoch, bitte begeben Sie sich zum nächsten Ausgang`;
258
+ utils_1.Utils.guardedNewThread(() => {
259
+ this.setAllRolloOfFloor(-1, 100);
260
+ this.setAllLampsOfFloor(-1, true);
261
+ }, this);
262
+ }
263
+ else if (this._intrusionAlarmLevel === 3) {
264
+ volume = 70;
265
+ speakMessage = `Verlassen Sie sofort das Gebäude! Die Behörden sind informiert`;
266
+ }
267
+ else if (this._intrusionAlarmLevel <= 5) {
268
+ volume = 80;
269
+ speakMessage = `Weitere Abwehrmaßnahmen werden eingeleitet`;
270
+ }
271
+ else if (this._intrusionAlarmLevel >= alarmAutomaticEnd) {
272
+ this.stopIntrusionAlarm();
273
+ return;
274
+ }
275
+ else {
276
+ volume = 90;
277
+ speakMessage = `Alarm. Einbrecher erkannt.`;
278
+ newTimeout = 10000;
279
+ }
280
+ this._intrusionAlarmTimeout = utils_1.Utils.guardedTimeout(() => {
281
+ this.performNextIntrusionLevel();
282
+ }, newTimeout, this);
283
+ utils_1.Utils.guardedNewThread(() => {
284
+ sonos_service_1.SonosService.speakOnAll(speakMessage, volume);
285
+ telegram_service_1.TelegramService.inform(`Eindringling erhielt folgende Nachricht: "${speakMessage}"\nAlarmlevel ist ${this._intrusionAlarmLevel}\t Automatisches Ende bei ${alarmAutomaticEnd}`);
286
+ }, this);
287
+ }
288
+ static restoreRolloPosition() {
289
+ const rooms = this.allRooms;
290
+ for (const room of rooms) {
291
+ room.FensterGroup.restoreRolloPosition();
292
+ }
293
+ }
294
+ static restoreLight() {
295
+ const rooms = this.allRooms;
296
+ for (const room of rooms) {
297
+ room.setLightTimeBased(true);
298
+ }
299
+ }
300
+ }
301
+ exports.RoomBase = RoomBase;
302
+ RoomBase.Rooms = {};
303
+ RoomBase.allRooms = [];
304
+ RoomBase.floors = {};
305
+ RoomBase.awayModeActive = false;
306
+ RoomBase.nightAlarmActive = false;
307
+ RoomBase.movementHistory = new ringstorage_1.ringStorage(15);
308
+ RoomBase._intrusionAlarmActive = false;
309
+ RoomBase._intrusionAlarmLevel = 0;
@@ -0,0 +1,57 @@
1
+ import { HmIpRoomSettings } from './hmIPRoomSettings';
2
+ import { ZigbeeRoomSettings } from './zigbeeRoomSettings';
3
+ import { iRoomDefaultSettings } from './iRoomDefaultSettings';
4
+ import { SunTimeOffsets } from '../../../server/services/time-callback-service';
5
+ import { RoomBase } from '../RoomBase';
6
+ import { iTimePair } from '../../../server/config/iConfig';
7
+ export declare class RoomSettings implements iRoomDefaultSettings {
8
+ shortName: string;
9
+ defaultSettings: iRoomDefaultSettings;
10
+ private _lampenBeiBewegung;
11
+ private _lichtSonnenAufgangAus;
12
+ private _sonnenUntergangRollos;
13
+ private _sonnenAufgangRollos;
14
+ private _movementResetTimer;
15
+ private _sonnenUntergangRolloDelay;
16
+ private _sonnenUntergangRolloMaxTime;
17
+ private _sonnenUntergangLampenDelay;
18
+ private _sonnenAufgangRolloDelay;
19
+ private _sonnenAufgangRolloMinTime;
20
+ private _sonnenAufgangLampenDelay;
21
+ private _lightIfNoWindows;
22
+ hmIpSettings?: HmIpRoomSettings;
23
+ zigbeeSettings?: ZigbeeRoomSettings;
24
+ radioUrl: string;
25
+ etage: number;
26
+ rolloOffset: SunTimeOffsets;
27
+ lampOffset: SunTimeOffsets;
28
+ room?: RoomBase;
29
+ rolloHeatReduction: boolean;
30
+ constructor(shortName: string);
31
+ private recalcRolloOffset;
32
+ private recalcLampOffset;
33
+ get sonnenAufgangLampenDelay(): number;
34
+ set sonnenAufgangLampenDelay(value: number);
35
+ get sonnenAufgangRolloDelay(): number;
36
+ set sonnenAufgangRolloDelay(value: number);
37
+ get sonnenUntergangLampenDelay(): number;
38
+ set sonnenUntergangLampenDelay(value: number);
39
+ get sonnenUntergangRolloDelay(): number;
40
+ set sonnenUntergangRolloDelay(value: number);
41
+ get movementResetTimer(): number;
42
+ set movementResetTimer(value: number);
43
+ get lichtSonnenAufgangAus(): boolean;
44
+ get sonnenAufgangRollos(): boolean;
45
+ set sonnenAufgangRollos(value: boolean);
46
+ get sonnenUntergangRollos(): boolean;
47
+ set sonnenUntergangRollos(value: boolean);
48
+ set lichtSonnenAufgangAus(value: boolean);
49
+ get lampenBeiBewegung(): boolean;
50
+ set lampenBeiBewegung(value: boolean);
51
+ get sonnenUntergangRolloMaxTime(): iTimePair;
52
+ set sonnenUntergangRolloMaxTime(value: iTimePair);
53
+ get sonnenAufgangRolloMinTime(): iTimePair;
54
+ set sonnenAufgangRolloMinTime(value: iTimePair);
55
+ get lightIfNoWindows(): boolean;
56
+ set lightIfNoWindows(value: boolean);
57
+ }
@@ -0,0 +1,120 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.RoomSettings = void 0;
4
+ const settings_service_1 = require("../../../server/services/settings-service");
5
+ const time_callback_service_1 = require("../../../server/services/time-callback-service");
6
+ class RoomSettings {
7
+ constructor(shortName) {
8
+ this.shortName = shortName;
9
+ this.defaultSettings = settings_service_1.SettingsService.settings.roomDefault;
10
+ this._lampenBeiBewegung = this.defaultSettings.lampenBeiBewegung;
11
+ this._lichtSonnenAufgangAus = this.defaultSettings.lichtSonnenAufgangAus;
12
+ this._sonnenUntergangRollos = this.defaultSettings.sonnenUntergangRollos;
13
+ this._sonnenAufgangRollos = this.defaultSettings.sonnenAufgangRollos;
14
+ this._movementResetTimer = this.defaultSettings.movementResetTimer;
15
+ this._sonnenUntergangRolloDelay = this.defaultSettings.sonnenUntergangRolloDelay;
16
+ this._sonnenUntergangRolloMaxTime = this.defaultSettings.sonnenUntergangRolloMaxTime;
17
+ this._sonnenUntergangLampenDelay = this.defaultSettings.sonnenUntergangLampenDelay;
18
+ this._sonnenAufgangRolloDelay = this.defaultSettings.sonnenAufgangRolloDelay;
19
+ this._sonnenAufgangRolloMinTime = this.defaultSettings.sonnenAufgangRolloMinTime;
20
+ this._sonnenAufgangLampenDelay = this.defaultSettings.sonnenAufgangLampenDelay;
21
+ this._lightIfNoWindows = this.defaultSettings.lightIfNoWindows;
22
+ this.radioUrl = 'https://hermes.bcs-systems.de/hitradio-rtl_top40_64k_aac'; // Radio RTL
23
+ this.etage = -1;
24
+ this.rolloHeatReduction = this.defaultSettings.rolloHeatReduction;
25
+ this.rolloOffset = new time_callback_service_1.SunTimeOffsets(this.sonnenAufgangRolloDelay, this.sonnenUntergangRolloDelay, this.sonnenAufgangRolloMinTime.hours, this.sonnenAufgangRolloMinTime.minutes, this.sonnenUntergangRolloMaxTime.hours, this.sonnenUntergangRolloMaxTime.minutes);
26
+ this.lampOffset = new time_callback_service_1.SunTimeOffsets(this.sonnenAufgangLampenDelay, this.sonnenUntergangLampenDelay);
27
+ }
28
+ recalcRolloOffset() {
29
+ this.rolloOffset = new time_callback_service_1.SunTimeOffsets(this.sonnenAufgangRolloDelay, this.sonnenUntergangRolloDelay, this.sonnenAufgangRolloMinTime.hours, this.sonnenAufgangRolloMinTime.minutes, this.sonnenUntergangRolloMaxTime.hours, this.sonnenUntergangRolloMaxTime.minutes);
30
+ if (this.room) {
31
+ this.room.recalcTimeCallbacks();
32
+ }
33
+ }
34
+ recalcLampOffset() {
35
+ this.lampOffset = new time_callback_service_1.SunTimeOffsets(this.sonnenAufgangLampenDelay, this.sonnenAufgangRolloDelay);
36
+ if (this.room) {
37
+ this.room.recalcTimeCallbacks();
38
+ }
39
+ }
40
+ get sonnenAufgangLampenDelay() {
41
+ return this._sonnenAufgangLampenDelay;
42
+ }
43
+ set sonnenAufgangLampenDelay(value) {
44
+ this._sonnenAufgangLampenDelay = value;
45
+ this.recalcLampOffset();
46
+ }
47
+ get sonnenAufgangRolloDelay() {
48
+ return this._sonnenAufgangRolloDelay;
49
+ }
50
+ set sonnenAufgangRolloDelay(value) {
51
+ this._sonnenAufgangRolloDelay = value;
52
+ this.recalcRolloOffset();
53
+ }
54
+ get sonnenUntergangLampenDelay() {
55
+ return this._sonnenUntergangLampenDelay;
56
+ }
57
+ set sonnenUntergangLampenDelay(value) {
58
+ this._sonnenUntergangLampenDelay = value;
59
+ this.recalcLampOffset();
60
+ }
61
+ get sonnenUntergangRolloDelay() {
62
+ return this._sonnenUntergangRolloDelay;
63
+ }
64
+ set sonnenUntergangRolloDelay(value) {
65
+ this._sonnenUntergangRolloDelay = value;
66
+ }
67
+ get movementResetTimer() {
68
+ return this._movementResetTimer;
69
+ }
70
+ set movementResetTimer(value) {
71
+ this._movementResetTimer = value;
72
+ }
73
+ get lichtSonnenAufgangAus() {
74
+ return this._lichtSonnenAufgangAus;
75
+ }
76
+ get sonnenAufgangRollos() {
77
+ return this._sonnenAufgangRollos;
78
+ }
79
+ set sonnenAufgangRollos(value) {
80
+ this._sonnenAufgangRollos = value;
81
+ this.recalcRolloOffset();
82
+ }
83
+ get sonnenUntergangRollos() {
84
+ return this._sonnenUntergangRollos;
85
+ }
86
+ set sonnenUntergangRollos(value) {
87
+ this._sonnenUntergangRollos = value;
88
+ this.recalcRolloOffset();
89
+ }
90
+ set lichtSonnenAufgangAus(value) {
91
+ this._lichtSonnenAufgangAus = value;
92
+ }
93
+ get lampenBeiBewegung() {
94
+ return this._lampenBeiBewegung;
95
+ }
96
+ set lampenBeiBewegung(value) {
97
+ this._lampenBeiBewegung = value;
98
+ }
99
+ get sonnenUntergangRolloMaxTime() {
100
+ return this._sonnenUntergangRolloMaxTime;
101
+ }
102
+ set sonnenUntergangRolloMaxTime(value) {
103
+ this._sonnenUntergangRolloMaxTime = value;
104
+ this.recalcRolloOffset();
105
+ }
106
+ get sonnenAufgangRolloMinTime() {
107
+ return this._sonnenAufgangRolloMinTime;
108
+ }
109
+ set sonnenAufgangRolloMinTime(value) {
110
+ this._sonnenAufgangRolloMinTime = value;
111
+ this.recalcRolloOffset();
112
+ }
113
+ get lightIfNoWindows() {
114
+ return this._lightIfNoWindows;
115
+ }
116
+ set lightIfNoWindows(value) {
117
+ this._lightIfNoWindows = value;
118
+ }
119
+ }
120
+ exports.RoomSettings = RoomSettings;
@@ -0,0 +1,17 @@
1
+ import { HmIpDeviceType } from '../../../server/devices/hmIPDevices/hmIpDeviceType';
2
+ export declare class HmIpAddDeviceItem {
3
+ setID: (value: string) => void;
4
+ index: number;
5
+ customName: string;
6
+ private _added;
7
+ get added(): boolean;
8
+ set added(value: boolean);
9
+ constructor(setID: (value: string) => void, index: number, customName: string);
10
+ }
11
+ export declare class HmIpRoomSettings {
12
+ RoomName: string;
13
+ devices: Array<Array<HmIpAddDeviceItem>>;
14
+ constructor(RoomName: string);
15
+ addDevice(deviceType: HmIpDeviceType, setID: (value: string) => void, index: number, customName?: string | undefined): void;
16
+ checkMissing(): void;
17
+ }
@@ -0,0 +1,51 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.HmIpRoomSettings = exports.HmIpAddDeviceItem = void 0;
4
+ const hmIpDeviceType_1 = require("../../../server/devices/hmIPDevices/hmIpDeviceType");
5
+ const log_service_1 = require("../../../server/services/log-service");
6
+ const logLevel_1 = require("../../logLevel");
7
+ class HmIpAddDeviceItem {
8
+ constructor(setID, index, customName) {
9
+ this.setID = setID;
10
+ this.index = index;
11
+ this.customName = customName;
12
+ this._added = false;
13
+ }
14
+ get added() {
15
+ return this._added;
16
+ }
17
+ set added(value) {
18
+ if (this._added) {
19
+ log_service_1.ServerLogService.writeLog(logLevel_1.LogLevel.Error, `${this.customName} Added twice`);
20
+ }
21
+ this._added = value;
22
+ }
23
+ }
24
+ exports.HmIpAddDeviceItem = HmIpAddDeviceItem;
25
+ class HmIpRoomSettings {
26
+ constructor(RoomName) {
27
+ this.RoomName = RoomName;
28
+ this.devices = [];
29
+ }
30
+ addDevice(deviceType, setID, index, customName = undefined) {
31
+ if (this.devices[deviceType] === undefined) {
32
+ this.devices[deviceType] = [];
33
+ }
34
+ if (customName === undefined) {
35
+ customName = `${this.RoomName} ${hmIpDeviceType_1.HmIpDeviceType[deviceType]}`;
36
+ }
37
+ this.devices[deviceType][index] = new HmIpAddDeviceItem(setID, index, customName);
38
+ }
39
+ checkMissing() {
40
+ for (const type in this.devices) {
41
+ const devs = this.devices[type];
42
+ for (const index in devs) {
43
+ const dev = devs[index];
44
+ if (!dev.added) {
45
+ log_service_1.ServerLogService.writeLog(logLevel_1.LogLevel.Error, `${dev.customName} fehlt in der Device JSON`);
46
+ }
47
+ }
48
+ }
49
+ }
50
+ }
51
+ exports.HmIpRoomSettings = HmIpRoomSettings;
@@ -0,0 +1,16 @@
1
+ import { iTimePair } from '../../../server/config/iConfig';
2
+ export interface iRoomDefaultSettings {
3
+ rolloHeatReduction: boolean;
4
+ lampenBeiBewegung: boolean;
5
+ lichtSonnenAufgangAus: boolean;
6
+ sonnenUntergangRollos: boolean;
7
+ sonnenUntergangRolloDelay: number;
8
+ sonnenUntergangRolloMaxTime: iTimePair;
9
+ sonnenUntergangLampenDelay: number;
10
+ sonnenAufgangRollos: boolean;
11
+ sonnenAufgangRolloDelay: number;
12
+ sonnenAufgangRolloMinTime: iTimePair;
13
+ sonnenAufgangLampenDelay: number;
14
+ movementResetTimer: number;
15
+ lightIfNoWindows: boolean;
16
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,4 @@
1
+ export * from './RoomSettings';
2
+ export * from './hmIPRoomSettings';
3
+ export * from './zigbeeRoomSettings';
4
+ export * from './iRoomDefaultSettings';
@@ -0,0 +1,16 @@
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("./RoomSettings"), exports);
14
+ __exportStar(require("./hmIPRoomSettings"), exports);
15
+ __exportStar(require("./zigbeeRoomSettings"), exports);
16
+ __exportStar(require("./iRoomDefaultSettings"), exports);
@@ -0,0 +1,17 @@
1
+ import { ZigbeeDeviceType } from '../../../server/devices/zigbee/zigbeeDeviceType';
2
+ export declare class ZigbeeAddDeviceItem {
3
+ setID: (value: string) => void;
4
+ index: number;
5
+ customName: string;
6
+ private _added;
7
+ get added(): boolean;
8
+ set added(value: boolean);
9
+ constructor(setID: (value: string) => void, index: number, customName: string);
10
+ }
11
+ export declare class ZigbeeRoomSettings {
12
+ RoomName: string;
13
+ devices: Array<Array<ZigbeeAddDeviceItem>>;
14
+ constructor(RoomName: string);
15
+ addDevice(deviceType: ZigbeeDeviceType, setID: (value: string) => void, index: number, customName?: string | undefined): void;
16
+ checkMissing(): void;
17
+ }
@@ -0,0 +1,51 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ZigbeeRoomSettings = exports.ZigbeeAddDeviceItem = void 0;
4
+ const zigbeeDeviceType_1 = require("../../../server/devices/zigbee/zigbeeDeviceType");
5
+ const log_service_1 = require("../../../server/services/log-service");
6
+ const logLevel_1 = require("../../logLevel");
7
+ class ZigbeeAddDeviceItem {
8
+ constructor(setID, index, customName) {
9
+ this.setID = setID;
10
+ this.index = index;
11
+ this.customName = customName;
12
+ this._added = false;
13
+ }
14
+ get added() {
15
+ return this._added;
16
+ }
17
+ set added(value) {
18
+ if (this._added) {
19
+ log_service_1.ServerLogService.writeLog(logLevel_1.LogLevel.Error, `${this.customName} Added twice`);
20
+ }
21
+ this._added = value;
22
+ }
23
+ }
24
+ exports.ZigbeeAddDeviceItem = ZigbeeAddDeviceItem;
25
+ class ZigbeeRoomSettings {
26
+ constructor(RoomName) {
27
+ this.RoomName = RoomName;
28
+ this.devices = [];
29
+ }
30
+ addDevice(deviceType, setID, index, customName = undefined) {
31
+ if (this.devices[deviceType] === undefined) {
32
+ this.devices[deviceType] = [];
33
+ }
34
+ if (customName === undefined) {
35
+ customName = `${this.RoomName} ${zigbeeDeviceType_1.ZigbeeDeviceType[deviceType]}`;
36
+ }
37
+ this.devices[deviceType][index] = new ZigbeeAddDeviceItem(setID, index, customName);
38
+ }
39
+ checkMissing() {
40
+ for (const type in this.devices) {
41
+ const devs = this.devices[type];
42
+ for (const index in devs) {
43
+ const dev = devs[index];
44
+ if (!dev.added) {
45
+ log_service_1.ServerLogService.writeLog(logLevel_1.LogLevel.Error, `${dev.customName} fehlt in der Device JSON`);
46
+ }
47
+ }
48
+ }
49
+ }
50
+ }
51
+ exports.ZigbeeRoomSettings = ZigbeeRoomSettings;
@@ -1,3 +1,3 @@
1
1
  export interface iRoomImportEnforcer {
2
- addRoomConstructor(): void;
2
+ addRoomConstructor(): void;
3
3
  }