iobroker.iot 1.14.4 → 2.0.1

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 (241) hide show
  1. package/README.md +94 -67
  2. package/admin/actions.js +2 -1
  3. package/admin/rules/asset-manifest.json +145 -0
  4. package/admin/rules/customRuleBlocks.js +5 -0
  5. package/admin/rules/customRuleBlocks.js.map +1 -0
  6. package/admin/rules/i18n/de.json +9 -0
  7. package/admin/rules/i18n/en.json +9 -0
  8. package/admin/rules/i18n/es.json +9 -0
  9. package/admin/rules/i18n/fr.json +9 -0
  10. package/admin/rules/i18n/it.json +9 -0
  11. package/admin/rules/i18n/nl.json +9 -0
  12. package/admin/rules/i18n/pl.json +9 -0
  13. package/admin/rules/i18n/pt.json +9 -0
  14. package/admin/rules/i18n/ru.json +9 -0
  15. package/admin/rules/i18n/uk.json +9 -0
  16. package/admin/rules/i18n/zh-cn.json +9 -0
  17. package/admin/rules/static/js/main.18f35401.js +5 -0
  18. package/admin/rules/static/js/main.18f35401.js.map +1 -0
  19. package/admin/rules/static/js/node_modules_iobroker_adapter-react-v5_assets_devices_sync_recursive_-node_modules_iobroker_a-3fbe7d.46a44060.chunk.js +3 -0
  20. package/admin/rules/static/js/node_modules_iobroker_adapter-react-v5_assets_devices_sync_recursive_-node_modules_iobroker_a-3fbe7d.46a44060.chunk.js.map +1 -0
  21. package/admin/rules/static/js/node_modules_prop-types_index_js.4a6f1268.chunk.js +3 -0
  22. package/admin/rules/static/js/node_modules_prop-types_index_js.4a6f1268.chunk.js.map +1 -0
  23. package/admin/rules/static/js/node_modules_react_index_js.fbeb147f.chunk.js +11 -0
  24. package/admin/rules/static/js/node_modules_react_index_js.fbeb147f.chunk.js.map +1 -0
  25. package/admin/rules/static/js/src_ActionVisu_jsx.a56ad32e.chunk.js +7 -0
  26. package/admin/rules/static/js/src_ActionVisu_jsx.a56ad32e.chunk.js.map +1 -0
  27. package/admin/rules/static/js/src_bootstrap_jsx.ff91d7a5.chunk.js +3 -0
  28. package/admin/rules/static/js/src_bootstrap_jsx.ff91d7a5.chunk.js.map +1 -0
  29. package/io-package.json +100 -28
  30. package/lib/AlexaSmartHomeV3/Alexa/AlexaResponse.js +262 -0
  31. package/lib/AlexaSmartHomeV3/Alexa/Capabilities/Base.js +124 -0
  32. package/lib/AlexaSmartHomeV3/Alexa/Capabilities/BrightnessController.js +16 -0
  33. package/lib/AlexaSmartHomeV3/Alexa/Capabilities/ColorController.js +11 -0
  34. package/lib/AlexaSmartHomeV3/Alexa/Capabilities/ColorTemperatureController.js +16 -0
  35. package/lib/AlexaSmartHomeV3/Alexa/Capabilities/ContactSensor.js +11 -0
  36. package/lib/AlexaSmartHomeV3/Alexa/Capabilities/LockController.js +11 -0
  37. package/lib/AlexaSmartHomeV3/Alexa/Capabilities/ModeController.js +70 -0
  38. package/lib/AlexaSmartHomeV3/Alexa/Capabilities/MotionSensor.js +11 -0
  39. package/lib/AlexaSmartHomeV3/Alexa/Capabilities/PercentageController.js +11 -0
  40. package/lib/AlexaSmartHomeV3/Alexa/Capabilities/PowerController.js +16 -0
  41. package/lib/AlexaSmartHomeV3/Alexa/Capabilities/Speaker.js +21 -0
  42. package/lib/AlexaSmartHomeV3/Alexa/Capabilities/TemperatureSensor.js +11 -0
  43. package/lib/AlexaSmartHomeV3/Alexa/Capabilities/ThermostatController.js +35 -0
  44. package/lib/AlexaSmartHomeV3/Alexa/Capabilities/index.js +14 -0
  45. package/lib/AlexaSmartHomeV3/Alexa/Directives/Base.js +27 -0
  46. package/lib/AlexaSmartHomeV3/Alexa/Directives/ChangeReport.js +75 -0
  47. package/lib/AlexaSmartHomeV3/Alexa/Directives/Discovery.js +39 -0
  48. package/lib/AlexaSmartHomeV3/Alexa/Directives/ReportState.js +50 -0
  49. package/lib/AlexaSmartHomeV3/Alexa/Directives/index.js +13 -0
  50. package/lib/AlexaSmartHomeV3/Alexa/ModeValues/Base.js +38 -0
  51. package/lib/AlexaSmartHomeV3/Alexa/ModeValues/Closed.js +56 -0
  52. package/lib/AlexaSmartHomeV3/Alexa/ModeValues/Open.js +57 -0
  53. package/lib/AlexaSmartHomeV3/Alexa/ModeValues/index.js +14 -0
  54. package/lib/AlexaSmartHomeV3/Alexa/Properties/AdjustableProperty.js +11 -0
  55. package/lib/AlexaSmartHomeV3/Alexa/Properties/Base.js +108 -0
  56. package/lib/AlexaSmartHomeV3/Alexa/Properties/Brightness.js +14 -0
  57. package/lib/AlexaSmartHomeV3/Alexa/Properties/Color.js +40 -0
  58. package/lib/AlexaSmartHomeV3/Alexa/Properties/ColorTemperatureInKelvin.js +62 -0
  59. package/lib/AlexaSmartHomeV3/Alexa/Properties/DetectionState.js +22 -0
  60. package/lib/AlexaSmartHomeV3/Alexa/Properties/LockState.js +40 -0
  61. package/lib/AlexaSmartHomeV3/Alexa/Properties/Mode.js +32 -0
  62. package/lib/AlexaSmartHomeV3/Alexa/Properties/Muted.js +17 -0
  63. package/lib/AlexaSmartHomeV3/Alexa/Properties/Percentage.js +14 -0
  64. package/lib/AlexaSmartHomeV3/Alexa/Properties/PowerState.js +25 -0
  65. package/lib/AlexaSmartHomeV3/Alexa/Properties/TargetSetpoint.js +28 -0
  66. package/lib/AlexaSmartHomeV3/Alexa/Properties/Temperature.js +20 -0
  67. package/lib/AlexaSmartHomeV3/Alexa/Properties/ThermostatMode.js +52 -0
  68. package/lib/AlexaSmartHomeV3/Alexa/Properties/Volume.js +19 -0
  69. package/lib/AlexaSmartHomeV3/Alexa/Properties/index.js +14 -0
  70. package/lib/AlexaSmartHomeV3/Controls/AdjustableControl.js +23 -0
  71. package/lib/AlexaSmartHomeV3/Controls/AdjustablePercentageControl.js +28 -0
  72. package/lib/AlexaSmartHomeV3/Controls/AirCondition.js +145 -0
  73. package/lib/AlexaSmartHomeV3/Controls/Blind.js +13 -0
  74. package/lib/AlexaSmartHomeV3/Controls/ContactSensor.js +18 -0
  75. package/lib/AlexaSmartHomeV3/Controls/Control.js +327 -0
  76. package/lib/AlexaSmartHomeV3/Controls/Dimmer.js +122 -0
  77. package/lib/AlexaSmartHomeV3/Controls/Door.js +9 -0
  78. package/lib/AlexaSmartHomeV3/Controls/Gate.js +43 -0
  79. package/lib/AlexaSmartHomeV3/Controls/Hue.js +212 -0
  80. package/lib/AlexaSmartHomeV3/Controls/Light.js +55 -0
  81. package/lib/AlexaSmartHomeV3/Controls/Lock.js +37 -0
  82. package/lib/AlexaSmartHomeV3/Controls/Motion.js +18 -0
  83. package/lib/AlexaSmartHomeV3/Controls/ReadOnlyDetector.js +26 -0
  84. package/lib/AlexaSmartHomeV3/Controls/Slider.js +10 -0
  85. package/lib/AlexaSmartHomeV3/Controls/Socket.js +22 -0
  86. package/lib/AlexaSmartHomeV3/Controls/Temperature.js +23 -0
  87. package/lib/AlexaSmartHomeV3/Controls/Thermostat.js +87 -0
  88. package/lib/AlexaSmartHomeV3/Controls/VacuumCleaner.js +29 -0
  89. package/lib/AlexaSmartHomeV3/Controls/Volume.js +109 -0
  90. package/lib/AlexaSmartHomeV3/Controls/VolumeGroup.js +9 -0
  91. package/lib/AlexaSmartHomeV3/Controls/Window.js +9 -0
  92. package/lib/AlexaSmartHomeV3/Controls/index.js +14 -0
  93. package/lib/AlexaSmartHomeV3/Device.js +74 -0
  94. package/lib/AlexaSmartHomeV3/DeviceManager.js +282 -0
  95. package/lib/AlexaSmartHomeV3/Exceptions/AlexaV3Exception.js +8 -0
  96. package/lib/AlexaSmartHomeV3/Exceptions/HourlyDeviceRateLimitExceeded.js +5 -0
  97. package/lib/AlexaSmartHomeV3/Exceptions/OverallDailyRateLimitExceeded.js +5 -0
  98. package/lib/AlexaSmartHomeV3/Helpers/AdapterProvider.js +46 -0
  99. package/lib/AlexaSmartHomeV3/Helpers/FileHelper.js +70 -0
  100. package/lib/AlexaSmartHomeV3/Helpers/IotProxy.js +44 -0
  101. package/lib/AlexaSmartHomeV3/Helpers/Logger.js +95 -0
  102. package/lib/AlexaSmartHomeV3/Helpers/RateLimiter.js +82 -0
  103. package/lib/AlexaSmartHomeV3/Helpers/Utils.js +511 -0
  104. package/lib/alexaCustom.js +75 -70
  105. package/lib/alexaCustomBlood.js +58 -62
  106. package/lib/alexaSmartHomeV2.js +1494 -1300
  107. package/lib/alexaSmartHomeV3.js +68 -686
  108. package/lib/alisa.js +49 -79
  109. package/lib/getImage.js +3 -3
  110. package/lib/googleHome.js +130 -168
  111. package/lib/remote.js +7 -7
  112. package/lib/translate.js +7 -2
  113. package/main.js +295 -201
  114. package/package.json +8 -16
  115. package/admin/asset-manifest.json +0 -132
  116. package/admin/index_m.html +0 -1
  117. package/admin/static/css/main.96b3c861.css +0 -2
  118. package/admin/static/css/main.96b3c861.css.map +0 -1
  119. package/admin/static/js/main.fee31508.js +0 -3
  120. package/admin/static/js/main.fee31508.js.LICENSE.txt +0 -115
  121. package/admin/static/js/main.fee31508.js.map +0 -1
  122. package/admin/static/media/Alarm Systems.857ab9a8f90827777b88.svg +0 -19
  123. package/admin/static/media/Amplifier.6f5d18048328386033f8.svg +0 -22
  124. package/admin/static/media/Anteroom.93a742135f2c060ad619.svg +0 -53
  125. package/admin/static/media/Attic.bb5d690a160bb1d4edb2.svg +0 -21
  126. package/admin/static/media/Awnings.78480df8796f09859b6a.svg +0 -5
  127. package/admin/static/media/Balcony.2f76ef0877aaa3bd2ff7.svg +0 -13
  128. package/admin/static/media/Barn.5d839e84c80918ce2ef0.svg +0 -6
  129. package/admin/static/media/Basement.fe636968eec9556bfd1f.svg +0 -5
  130. package/admin/static/media/Bathroom.27a777c66183f9f613db.svg +0 -38
  131. package/admin/static/media/Battery Status.5951e2078ae1e573510e.svg +0 -5
  132. package/admin/static/media/Bedroom.2a16d8d98fafe965fd1b.svg +0 -5
  133. package/admin/static/media/Boiler Room.548e785e2f92b45f72b3.svg +0 -13
  134. package/admin/static/media/Carport.8337662544b9e95f4b27.svg +0 -17
  135. package/admin/static/media/Ceiling Spotlights.485822441b5df3b3384a.svg +0 -16
  136. package/admin/static/media/Cellar.7ec1b1803a2437c8b78c.svg +0 -89
  137. package/admin/static/media/Chamber.71daaa4d14262dae029b.svg +0 -9
  138. package/admin/static/media/Chandelier.8b9fbdbc73bc2e955ef7.svg +0 -7
  139. package/admin/static/media/Climate.b7e9896e7f103360bb5a.svg +0 -12
  140. package/admin/static/media/Coffee Makers.9fb4d82f957a06f30dae.svg +0 -6
  141. package/admin/static/media/Cold Water.937aad5fa21b0c20a856.svg +0 -31
  142. package/admin/static/media/Computer.9558f6ee3941dba4e3c5.svg +0 -21
  143. package/admin/static/media/Consumption.fecd7a10a13fe4e5f69b.svg +0 -8
  144. package/admin/static/media/Corridor.93a742135f2c060ad619.svg +0 -53
  145. package/admin/static/media/Curtains.955e213206d2073eef99.svg +0 -43
  146. package/admin/static/media/Dining Area.14dfc38cbb4fe041e9da.svg +0 -37
  147. package/admin/static/media/Dining Room.14dfc38cbb4fe041e9da.svg +0 -37
  148. package/admin/static/media/Dining.14dfc38cbb4fe041e9da.svg +0 -37
  149. package/admin/static/media/Dishwashers.3709566b7214596236b7.svg +0 -12
  150. package/admin/static/media/Doors.d59bf859f582d3488a04.svg +0 -6
  151. package/admin/static/media/Doorstep.10630b759b4867a10776.svg +0 -35
  152. package/admin/static/media/Dressing Room.5e6f8f64b0e8f91c473e.svg +0 -5
  153. package/admin/static/media/Driveway.fbd31101c5a80a8bb37a.svg +0 -15
  154. package/admin/static/media/Dryer.5ea89bd6dc20a00fb442.svg +0 -14
  155. package/admin/static/media/Entrance.4c1404056847caf959b6.svg +0 -44
  156. package/admin/static/media/Equipment Room.db92bdca64f653c844f8.svg +0 -15
  157. package/admin/static/media/Fan.8a29f85d6ca99c584603.svg +0 -20
  158. package/admin/static/media/Floor Lamps.471e0bcf308d94963504.svg +0 -5
  159. package/admin/static/media/Front Yard.af9ce2d89aa4d7a9363e.svg +0 -64
  160. package/admin/static/media/Gallery.4e7f9433fae8b24fdfca.svg +0 -14
  161. package/admin/static/media/Garage Doors.0c2a1cfca7ad1ea59625.svg +0 -9
  162. package/admin/static/media/Garage.f7fc0a9b326d582afee6.svg +0 -20
  163. package/admin/static/media/Garden.51c2e94f62a74e20775d.svg +0 -13
  164. package/admin/static/media/Gates.5a8baf2c3d4832ca57e8.svg +0 -32
  165. package/admin/static/media/Ground Floor.2b7c5c91db7f070935a2.svg +0 -95
  166. package/admin/static/media/Guest Bathroom.d07a9f1cf32a82d03267.svg +0 -33
  167. package/admin/static/media/Guest Room.41c7cfa38806f5009f82.svg +0 -5
  168. package/admin/static/media/Gym.7a0d22127ea3f557228a.svg +0 -5
  169. package/admin/static/media/Hairdryer.5960b514dac1f04f3c4d.svg +0 -23
  170. package/admin/static/media/Hall.9c2fa95419cb84ecda68.svg +0 -19
  171. package/admin/static/media/Handle.3de1d1320fc3ce2f9712.svg +0 -6
  172. package/admin/static/media/Hanging Lamps.0bd452fc843edd645c30.svg +0 -9
  173. package/admin/static/media/Heater.b53bccc334bbb9238a36.svg +0 -44
  174. package/admin/static/media/Home Theater.1e5f19a0b2a013f153f5.svg +0 -8
  175. package/admin/static/media/Hoods.c177ddfec9fa9a6335db.svg +0 -12
  176. package/admin/static/media/Hot Water.5c0a9e01741562e1fbab.svg +0 -10
  177. package/admin/static/media/Humidity.6d58f69cf268dd8a8ac1.svg +0 -41
  178. package/admin/static/media/Iron.b8a65a48503b6f3e0dc8.svg +0 -5
  179. package/admin/static/media/Irrigation.d5fa30e9c2a519167964.svg +0 -42
  180. package/admin/static/media/Kitchen.deb7f976c1f43f9039a2.svg +0 -18
  181. package/admin/static/media/Laundry Room.58da550dff0173676e02.svg +0 -12
  182. package/admin/static/media/Led Strip.5cf2de461e29ffbaa5f0.svg +0 -31
  183. package/admin/static/media/Light.21f1a5dfcc93f8ba1214.svg +0 -30
  184. package/admin/static/media/Lightings.658080eb8c0e347cd152.svg +0 -46
  185. package/admin/static/media/Living Area.1c29b81e75b75e3310db.svg +0 -11
  186. package/admin/static/media/Living Room.3c380ab767be35f904e1.svg +0 -10
  187. package/admin/static/media/Lock.2cbfe17ea8923e0f4e9e.svg +0 -19
  188. package/admin/static/media/Locker Room.1e381bdf34bfce551d73.svg +0 -17
  189. package/admin/static/media/Louvre.75b84cd3d39d68107807.svg +0 -7
  190. package/admin/static/media/Mowing Machine.9ead5b039f36cdc800e6.svg +0 -9
  191. package/admin/static/media/Music.67bc6063cb601642fd74.svg +0 -13
  192. package/admin/static/media/Nursery.9cecc0544bdb5c28500c.svg +0 -5
  193. package/admin/static/media/Office.7e6a38218390b655e270.svg +0 -8
  194. package/admin/static/media/Outdoor Blinds.37b85a9c060a4af48da9.svg +0 -7
  195. package/admin/static/media/Outdoors.da42e64a4b6ec2dd1e1c.svg +0 -7
  196. package/admin/static/media/People.12a7e9127e72f3259186.svg +0 -19
  197. package/admin/static/media/Playroom.e64c9de43030c28d2f96.svg +0 -6
  198. package/admin/static/media/Pool.9452c0f84f53c7836f3d.svg +0 -8
  199. package/admin/static/media/Power Consumption.4faab614c3c788f2d338.svg +0 -13
  200. package/admin/static/media/Printer.146d983be964b95745d2.svg +0 -10
  201. package/admin/static/media/Pump.a6035507cddbe7db5f6a.svg +0 -10
  202. package/admin/static/media/Rear Wall.38843c33f1ea1f575500.svg +0 -30
  203. package/admin/static/media/Receiver.26b5ae166395a6dcb83f.svg +0 -19
  204. package/admin/static/media/Sconces.9bf4c2f7a209085207aa.svg +0 -10
  205. package/admin/static/media/Second Floor.a2d5ed32df336591c06b.svg +0 -95
  206. package/admin/static/media/Security.1ec78971bd34efa950f8.svg +0 -34
  207. package/admin/static/media/Shading.0577383dc227cd043b3d.svg +0 -5
  208. package/admin/static/media/Shed.491a2ad372036118002c.svg +0 -16
  209. package/admin/static/media/Shutters.db7d7b0d498f40779210.svg +0 -11
  210. package/admin/static/media/Sleeping Area.828017602bfcc2dd7dce.svg +0 -22
  211. package/admin/static/media/SmokeDetector.8222f77cb07030a409ee.svg +0 -13
  212. package/admin/static/media/Sockets.8320e1a99be9de004629.svg +0 -13
  213. package/admin/static/media/Speaker.db548379676317470c4f.svg +0 -35
  214. package/admin/static/media/Stairway.9b007e08605296110003.svg +0 -5
  215. package/admin/static/media/Stairwell.0914feea948153a8637a.svg +0 -15
  216. package/admin/static/media/Storeroom.7de4e6f3364554459b8a.svg +0 -5
  217. package/admin/static/media/Stove.d0f68b3e138c5831d252.svg +0 -12
  218. package/admin/static/media/Summer House.541a9fec69f01105e244.svg +0 -27
  219. package/admin/static/media/Swimming Pool.190b378cb0707edb9461.svg +0 -21
  220. package/admin/static/media/Table Lamps.bd92de33bf86b6cbaec9.svg +0 -12
  221. package/admin/static/media/Temperature Sensors.75d805988a6b77b231d8.svg +0 -28
  222. package/admin/static/media/Terrace.d71d07d9290674f2ca20.svg +0 -7
  223. package/admin/static/media/Toilet.83604dd2daafb67067dd.svg +0 -10
  224. package/admin/static/media/Tv.4e9745a548e57bfac0c7.svg +0 -8
  225. package/admin/static/media/Upstairs.441813e54e0daca0882d.svg +0 -6
  226. package/admin/static/media/Vacuum Cleaner.9c8d50e436e6cea06dfa.svg +0 -16
  227. package/admin/static/media/Ventilation.c31761d86d67e245ac92.svg +0 -12
  228. package/admin/static/media/Wardrobe.e8019970a2b51412cfdc.svg +0 -60
  229. package/admin/static/media/Washing Machines.577f3acdb3cef002b523.svg +0 -16
  230. package/admin/static/media/Washroom.bfb54196f381f36de9d6.svg +0 -20
  231. package/admin/static/media/Water Consumption.68891649591cc2434c5b.svg +0 -6
  232. package/admin/static/media/Water Heater.7e4bb4d99a5213f24d08.svg +0 -8
  233. package/admin/static/media/Water.f50411984c5c24fa574d.svg +0 -40
  234. package/admin/static/media/Wc.83604dd2daafb67067dd.svg +0 -10
  235. package/admin/static/media/Weather.e91dae647698d48365e3.svg +0 -28
  236. package/admin/static/media/Window.421664f57c35e5109aa2.svg +0 -8
  237. package/admin/static/media/Windscreen.6058448bf63f72dd5036.svg +0 -60
  238. package/admin/static/media/Workshop.7856e59fe4f164c90609.svg +0 -23
  239. package/admin/static/media/Workspace.97d73e419d966bfb6428.svg +0 -8
  240. package/admin/static/media/names.3a7dae0bd6b8b03b280f.txt +0 -60
  241. package/admin/static/media/names.e7efb5283d98000c74ac.txt +0 -63
package/README.md CHANGED
@@ -15,18 +15,18 @@ It is not for remote access to your ioBroker instance. Use ioBroker.cloud adapte
15
15
  **This adapter uses Sentry libraries to automatically report exceptions and code errors to the developers.** For more details and for information how to disable the error reporting see [Sentry-Plugin Documentation](https://github.com/ioBroker/plugin-sentry#plugin-sentry)! Sentry reporting is used starting with js-controller 3.0.
16
16
 
17
17
  ## Settings
18
- To use cloud adapter you should first to register on the ioBroker cloud [https://iobroker.pro](https://iobroker.pro).
18
+ To use the iot adapter, you should first register on the ioBroker cloud [https://iobroker.pro](https://iobroker.pro).
19
19
 
20
20
  [Reference to google API type settings](https://developers.google.com/actions/smarthome/guides/)
21
21
 
22
22
  ![Intro](img/intro.png)
23
23
 
24
24
  ### Language
25
- If you select "default" language the smart names of devices and of enumerations will not be translated. If some language specified all known names will be translated into this language.
25
+ If you select "default" language, the smart names of devices and of enumerations will not be translated. If some language specified all known names will be translated into this language.
26
26
  It is done to switch fast between many languages for demonstration purposes.
27
27
 
28
28
  ### Place function in names first
29
- Change the order of function and roles in self generated names:
29
+ Change the order of function and roles in self-generated names:
30
30
 
31
31
  - if false: "Room function", e.g. "Living room dimmer"
32
32
  - if true: "Function room", e.g. "Dimmer living room"
@@ -34,14 +34,14 @@ Change the order of function and roles in self generated names:
34
34
  ### Concatenate words with
35
35
  You can define the word which will be placed between function and room. E.g. "in" and from "Dimmer living room" will be "Dimmer in living room".
36
36
 
37
- But is not suggested doing so, because recognition engine must analyse one more word and it can lead to misunderstandings.
37
+ But it is not suggested doing so, because recognition engine must analyze one more word, and it can lead to misunderstandings.
38
38
 
39
39
  ### OFF level for switches
40
40
  Some groups consist of mixed devices: dimmers and switches. It is allowed to control them with "ON" and "OFF" commands and with percents.
41
41
  If command is `Set to 30%` and the `OFF level is 30%` so the switches will be turned on. By command "Set to 25%" all switches will be turned OFF.
42
42
 
43
43
  Additionally, if the command is "OFF", so the adapter will remember the current dimmer level if the actual value is over or equal to the "30%".
44
- Later when the new "ON" command will come the adapter will switch the dimmer not to 100% but to the level in memory.
44
+ Later when the new "ON" command will come, the adapter will switch the dimmer not to 100% but to the level in memory.
45
45
 
46
46
  Example:
47
47
 
@@ -54,19 +54,19 @@ Example:
54
54
  - Command: "turn on the light". *dimmer* => 40%, *switch* => ON.
55
55
 
56
56
  ### by ON
57
- You can select the behaviour of ON command will come for the number state. The specific value can be selected or last non zero value will be used.
57
+ You can select the behavior of ON command will come for the number state. The specific value can be selected, or the last non-zero value will be used.
58
58
 
59
59
  ### Write response to
60
- For every command the text response will be generated. You can define here the Object ID , where this text must be written to. E.g. *sayit.0.tts.text*.
60
+ For every command, the text response will be generated. You can define here the Object ID, where this text must be written to. E.g. *sayit.0.tts.text*.
61
61
 
62
62
  ### Colors
63
- Just now only english alexa supports the color control.
64
- The channel must have 4 states with following roles:
63
+ The channel needs 3-5 states with the following roles:
65
64
 
66
- - level.color.saturation (required for detection of the channel),
67
- - level.color.hue,
68
- - level.dimmer,
69
- - switch (optional)
65
+ - `level.color.saturation` - required for detection of the channel,
66
+ - `level.color.hue`,
67
+ - `level.dimmer`,
68
+ - `switch` - optional,
69
+ - `level.color.temperature` (optional)
70
70
 
71
71
  ```
72
72
  Alexa, set the "device name" to "color"
@@ -76,7 +76,8 @@ Alexa, change the kitchen to the color chocolate
76
76
  ```
77
77
 
78
78
  ### Lock
79
- To have the possibility to lock the locks, the state must have the role "switch.lock" and have "native.LOCK_VALUE" to determine the lock state. If you need a seperate Value to control the Lock you can use "native.CONTROL VALUE".
79
+ To have the possibility to lock the locks, the state must have the role "switch.lock" and have "native.LOCK_VALUE" to determine the lock state.
80
+ If you need a separate Value to control the Lock, you can use "native.CONTROL VALUE".
80
81
 
81
82
  ```
82
83
  Alexa, is "lock name" locked/unlocked
@@ -84,17 +85,17 @@ Alexa, lock the "lock name"
84
85
  ```
85
86
 
86
87
  ## How names will be generated
87
- The adapter tries to generate virtual devices for smart home control (e.g. Amazon Alexa or Google Home).
88
+ The adapter tries to generate virtual devices for smart home control (e.g., Amazon Alexa or Google Home).
88
89
 
89
90
  There are two important enumerations for that: rooms and functions.
90
91
 
91
92
  Rooms are like: living room, bathroom, sleeping room.
92
93
  Functions are like: light, blind, heating.
93
94
 
94
- Following conditions must be met to get the state in the automatically generated list:
95
+ The following conditions must be met to get the state in the automatically generated list:
95
96
 
96
97
  - the state must be in some "function" enumeration.
97
- - the state must have role ("state", "switch" or "level.*", e.g. level.dimmer) if not directly included into "functions".
98
+ - the state must have role ("state", "switch" or "level.*", e.g. level.dimmer) if not directly included in "functions".
98
99
  It can be that the channel is in the "functions", but state itself not.
99
100
  - the state must be writable: `common.write` = true
100
101
  - the state dimmer must have `common.type` as 'number'
@@ -104,37 +105,37 @@ If the state is only in "functions" and not in any "room", the name of state wil
104
105
 
105
106
  The state names will be generated from function and room. E.g. all *lights* in the *living room* will be collected in the virtual device *living room light*.
106
107
  The user cannot change this name, because it is generated automatically.
107
- But if the enumeration name changes, this name will be changed too. (e.g. function "light" changed to "lights", so the *living room light* will be changed to *living room lights*)
108
+ But if the enumeration name changes, this name will be changed too. (e.g., function "light" changed to "lights", so the *living room light* will be changed to *living room lights*)
108
109
 
109
- All the rules will be ignored if the state has common.smartName. In this case just the smart name will be used.
110
+ All the rules will be ignored if the state has common.smartName. In this case, just the smart name will be used.
110
111
 
111
- if *common.smartName* is **false**, the state or enumeration will not be included into the list generation.
112
+ if `common.smartName` is `false`, the state or enumeration will not be included in the list generation.
112
113
 
113
114
  The configuration dialog lets the comfortable remove and add the single states to virtual groups or as single device.
114
115
  ![Configuration](img/configuration.png)
115
116
 
116
- If the group has only one state it can be renamed, as for this the state's smartName will be used.
117
+ If the group has only one state, it can be renamed, as for this the state's smartName will be used.
117
118
  If the group has more than one state, the group must be renamed via the enumeration's names.
118
119
 
119
- To create own groups the user can install "scenes" adapter or create "script" in Javascript adapter.
120
+ To create own groups, the user can install "scenes" adapter or create "script" in Javascript adapter.
120
121
 
121
122
  ### Replaces
122
- You can specify strings, that could be automatically replaced in the devices names. E.g. if you set replaces to:
123
- `.STATE,.LEVEL`, so all ".STATE" and ".LEVEL" will be deleted from names. Be careful with spaces.
124
- If you set `.STATE, .LEVEL`, so ".STATE" and " .LEVEL" will be replaced and not ".LEVEL".
123
+ You can specify strings that could be automatically replaced in the device names. E.g., if you set replaces to:
124
+ `.STATE,.LEVEL`, so all `.STATE` and `.LEVEL` will be deleted from names. Be careful with spaces.
125
+ If you set `.STATE, .LEVEL`, so `.STATE` and `.LEVEL` will be replaced and not `.LEVEL`.
125
126
 
126
127
  ## Helper states
127
- - **smart.lastObjectID**: This state will be set if only one device was controlled by home skill (alexa, google home).
128
- - **smart.lastFunction**: Function name (if exists) for which last command was executed.
129
- - **smart.lastRoom**: Room name (if exists) for which last command was executed.
130
- - **smart.lastCommand**: Last executed command. Command can be: true(ON), false(OFF), number(%), -X(decrease at x), +X(increase at X)
131
- - **smart.lastResponse**: Textual response on command. It can be sent to some text2speech (sayit) engine.
128
+ - `smart.lastObjectID`: This state will be set if only one device was controlled by home skill (alexa, google home).
129
+ - `smart.lastFunction`: Function name (if exists) for which last command was executed.
130
+ - `smart.lastRoom`: Room name (if exists) for which last command was executed.
131
+ - `smart.lastCommand`: Last executed command. Command can be: `true(ON)`, `false(OFF)`, `number(%)`, `-X(decrease at x)`, `+X(increase at X)`
132
+ - `smart.lastResponse`: Textual response on command. It can be sent to some `text2speech` (`sayit`) engine.
132
133
 
133
134
  ## IFTTT
134
135
  [instructions](doc/ifttt.md)
135
136
 
136
137
  ## Google Home
137
- If you see following error message in the log: `[GHOME] Invalid URL Pro key. Status auto-update is disabled you can set states but receive states only manually`.
138
+ If you see the following error message in the log: `[GHOME] Invalid URL Pro key. Status auto-update is disabled you can set states but receive states only manually`.
138
139
  So you must generate the URL-Key anew:
139
140
 
140
141
  ![Url key](img/url_key.png)
@@ -149,13 +150,13 @@ or
149
150
 
150
151
  `[GET]https://service.iobroker.in/v1/iotService?service=custom_<NAME>&key=<XXX>&user=<USER_EMAIL>&data=myString`
151
152
 
152
- If you set in the settings the field "White list for services" the name *custom_test*, and call with "custom_test" as the service name, the state **cloud.0.services.custom_test** will be set to *myString*.
153
+ If you set in the settings the field teh "White list for services" the name `custom_test`, and call with "custom_test" as the service name, the state **cloud.0.services.custom_test** will be set to *myString*.
153
154
 
154
- You may write "*" in white list and all services will be allowed.
155
+ You may write "*" in the white list and all services will be allowed.
155
156
 
156
- Here you can find instructions how to use it with [tasker](doc/tasker.md).
157
+ Here you can find instructions on how to use it with [tasker](doc/tasker.md).
157
158
 
158
- IFTTT service is allowed only if IFTTT key is set.
159
+ IFTTT service is allowed only if an IFTTT key is set.
159
160
 
160
161
  Reserved names are `ifttt`, `text2command`, `simpleApi`, `swagger`. These must be used without the `custom_` prefix.
161
162
 
@@ -178,7 +179,7 @@ You can use GET method too `https://service.iobroker.in/v1/iotService?service=te
178
179
  `X` can be defined in settings by the "Use text2command instance" option.
179
180
 
180
181
  ## Custom skill
181
- The answers for custom skill can be processed in two ways:
182
+ The answers for the custom skill can be processed in two ways:
182
183
  - `text2command`
183
184
  - `javascript`
184
185
 
@@ -188,37 +189,37 @@ if `text2command` instance is defined in the configuration dialog, so the questi
188
189
  `text2command` must be configured that the expected phrase will be parsed and the answer will be given back.
189
190
 
190
191
  ### `Javascript`
191
- There is a possibility to process the question directly with script. It is activated by default if no `text2command` instance is selected.
192
+ There is a possibility to process the question directly with the script. It is activated by default if no `text2command` instance is selected.
192
193
 
193
194
  If `text2command` instance is defined, so this instance must provide the answer and the answer from *script* will be ignored.
194
195
 
195
196
  The adapter will provide the details in two states with different detail level
196
- * **smart.lastCommand** contains the received text including an info on type of query (intent). Example: "askDevice Status Rasenmäher"
197
- * **smart.lastCommandObj*** contains an JSON string that can be parsed to an object containing the following information
198
- * **words** contain the received words in an array
199
- * **intent** contains the type of query. Possible values currently are:
200
- * v1 Skill: "askDevice", "controlDevice", "actionStart", "actionEnd", "askWhen", "askWhere", "askWho"
201
- * v2 Skill: "queryIntent" when full said text was captured, "controlDevice" for fallback with only partial text
202
- * **deviceId** contains a deviceId identifying the device the request was sent to, delivered by Amazon, will be empty string if not provided
203
- * **deviceRoom** contains a mapped room identifier you can configure in iot admin UI for collected deviceIds
204
- * **sessionId** contains a sessionId of the Skill session, should be the same if multiple commands were spoken, delivered by Amazon, will be empty string if not provided
205
- * **userId** contains a userId from the device owner (or maybe later the user that was interacting with the skill), delivered by Amazon, will be empty string if not provided
206
- * **userName** contains a mapped username you can configure in iot admin UI for collected userIds
207
-
208
- More details on how the words are detected and what type of queries the Alexa Custom Skill differentiates please check https://forum.iobroker.net/viewtopic.php?f=37&t=17452 .
197
+ * `smart.lastCommand` contains the received text including info about the type of query (intent). Example: `askDevice Status Rasenmäher`
198
+ * `smart.lastCommandObj` contains an JSON string that can be parsed to an object containing the following information
199
+ * `words` contain the received words in an array
200
+ * `intent` contains the type of query. Possible values currently are:
201
+ * v1 Skill: `askDevice`, `controlDevice`, `actionStart`, `actionEnd`, `askWhen`, `askWhere`, `askWho`
202
+ * v2 Skill: `queryIntent` when the full said text was captured, `controlDevice` for fallback with only partial text
203
+ * `deviceId` contains a deviceId identifying the device the request was sent to, delivered by Amazon, will be empty string if not provided
204
+ * `deviceRoom` contains a mapped room identifier you can configure in iot admin UI for collected deviceIds
205
+ * `sessionId` contains a sessionId of the Skill session, should be the same if multiple commands were spoken, delivered by Amazon, will be empty string if not provided
206
+ * `userId` contains a userId from the device owner (or maybe later the user that was interacting with the skill), delivered by Amazon, will be empty string if not provided
207
+ * `userName` contains a mapped username you can configure in iot admin UI for collected userIds
208
+
209
+ More details on how the words are detected and what type of queries the Alexa Custom Skill differentiates, please check https://forum.iobroker.net/viewtopic.php?f=37&t=17452 .
209
210
 
210
211
  **Return result via smart.lastResponse state**
211
212
 
212
- The response needs to be sent within 200ms in the state "smart.lastResponse" and can be a simple text string or a JSON object.
213
- If it is a text string then this text will be sent as response to the skill.
214
- if the text is a JSON object then the following keys can be used:
215
- * **responseText** needs to contain the text to return to Amazon
216
- * **shouldEndSession** is a boolean and controls if the session will be closed after the response was spoken or stays open to accept another voice input.
217
- * **sessionId** needs to contain the sessionId the response is meant for. Ideally provide it to allow concurrent sessions. If not provided the first session that expects a response is assumed.
213
+ The response needs to be sent within 200ms in the state `smart.lastResponse`, and can be a simple text string or a JSON object.
214
+ If it is a text string, then this text will be sent as a response to the skill.
215
+ If the text is a JSON object, then the following keys can be used:
216
+ * `responseText` needs to contain the text to return to Amazon
217
+ * `shouldEndSession` is a boolean and controls if the session is closed after the response was spoken or stays open to accept another voice input.
218
+ * `sessionId` needs to contain the sessionId the response is meant for. Ideally, provide it to allow concurrent sessions. If not provided, the first session that expects a response is assumed.
218
219
 
219
220
  **Return result via the message to iot instance**
220
221
 
221
- The iot instance also accepts a message with the name "alexaCustomResponse" containing the key "response" with an object that can contain the keys **responseText** and **shouldEndSession** and **sessionId** as described above.
222
+ The iot instance also accepts a message with the name "alexaCustomResponse" containing the key "response" with an object that can contain the keys `responseText` and `shouldEndSession` and `sessionId` as described above.
222
223
  There will be no response from the iot instance to the message!
223
224
 
224
225
  **Example of a script that uses texts**
@@ -265,7 +266,7 @@ sendTo('iot.0', 'private', {type: 'alisa', request: OBJECT_FROM_ALISA_SERVICE},
265
266
  });
266
267
  ```
267
268
 
268
- Following types are supported:
269
+ The following types are supported:
269
270
  - `alexa` - acting with Amazon Alexa or Amazon Custom Skill
270
271
  - `ghome` - acting with Google Actions via Google Home
271
272
  - `alisa` - acting with Yandex Алиса
@@ -274,13 +275,39 @@ Following types are supported:
274
275
  ## Yandex Алиса
275
276
  [instructions](doc/alisa.md)
276
277
 
278
+ ## Send messages to app
279
+ From version 1.15.x you can send messages to `ioBroker.visu` application (Android and iOS).
280
+ For that, you need to write the following states:
281
+ ```
282
+ setState('iot.0.app.expire', 60); // optional. Time in seconds
283
+ setState('iot.0.app.priority', 'normal'); // optional. Priority: 'high' or 'normal'
284
+ setState('iot.0.app.title', 'ioBroker'); // optional. Default "ioBroker"
285
+ setState('iot.0.app.message', 'Message text'); // important, that ack=false (default)
286
+
287
+ // or just one state
288
+ // only is message is mandatory. All other are optional
289
+ setState('iot.0.app.message', JSON.stringify({
290
+ message: 'Message text',
291
+ title: 'ioBroker',
292
+ expire: 60,
293
+ priority: 'normal'
294
+ })); // important, that ack=false (default)
295
+ ```
296
+
277
297
  <!--
278
298
  Placeholder for the next version (at the beginning of the line):
279
299
  ### **WORK IN PROGRESS**
280
300
  -->
281
301
 
282
302
  ## Changelog
283
- ### 1.14.4 (2023-02-27)
303
+ ### 2.0.1 (2023-06-05)
304
+ * (bluefox) Added support for amazon alexa v3
305
+ * (bluefox) Removed support for sugar blood indication
306
+
307
+ ### 1.14.6 (2023-05-12)
308
+ * (bluefox) Corrected translations
309
+
310
+ ### 1.14.5 (2023-03-01)
284
311
  * (bluefox) Corrected names of enums in GUI
285
312
 
286
313
  ### 1.14.3 (2023-01-10)
@@ -290,7 +317,7 @@ Following types are supported:
290
317
  * (bluefox) Updated GUI packages
291
318
 
292
319
  ### 1.14.1 (2022-12-22)
293
- * (bluefox) Downgraded axios version to 0.27.2
320
+ * (bluefox) Downgraded the axios version to 0.27.2
294
321
 
295
322
  ### 1.14.0 (2022-12-13)
296
323
  * (bluefox) Added netatmo support
@@ -306,7 +333,7 @@ Following types are supported:
306
333
  * (bluefox) Corrected blockly for unknown languages
307
334
 
308
335
  ### 1.12.2 (2022-10-01)
309
- * (Apollon77) Fix crash case
336
+ * (Apollon77) Fixed crash case
310
337
 
311
338
  ### 1.12.1 (2022-09-27)
312
339
  * (bluefox) Corrected error in GUI with empty password
@@ -341,8 +368,8 @@ Following types are supported:
341
368
 
342
369
  ### 1.11.0 (2022-03-17)
343
370
  * (Apollon77) Also support "stored" when a rgb state is turned on/off
344
- * (Apollon77) Fix control percent value to respect min/max correctly
345
- * (bluefox) Support of response messages longer than 128k (zip)
371
+ * (Apollon77) Fixed control percent value to respect min/max correctly
372
+ * (bluefox) Support for response messages longer than 128k (zip)
346
373
 
347
374
  ### 1.10.0 (2022-03-09)
348
375
  * (Apollon77) Respect min/max when calculating the value for byOn with % values
@@ -383,7 +410,7 @@ Following types are supported:
383
410
  * (bluefox) Fixed the encryption of the password. Warning: if you see the message in the log, that password is invalid, please enter the password in configuration dialog one more time and save.
384
411
 
385
412
  ### 1.8.20 (2021-05-16)
386
- * (foxriver76) we now write data received from custom services with acknowledge flag
413
+ * (foxriver76) we now write data received from custom services with the acknowledge flag
387
414
 
388
415
  ### 1.8.19 (2021-05-14)
389
416
  * (bluefox) Only added one debug output
@@ -478,7 +505,7 @@ Following types are supported:
478
505
 
479
506
  ### 1.5.2 (2020-05-21)
480
507
  * (bluefox) Changed requirements for password
481
- * (bluefox) Do not try load the "sharp" if blood sugar not enabled
508
+ * (bluefox) Do not try to load the "sharp" if the blood sugar not enabled
482
509
 
483
510
  ### 1.4.18 (2020-05-11)
484
511
  * (Apollon77) Make sure that invalid configured states or values without a timestamp do not crash adapter (Sentry IOBROKER-IOT-8)
@@ -500,8 +527,8 @@ Following types are supported:
500
527
  * (bluefox) Fixed crashes reported by sentry
501
528
 
502
529
  ### 1.4.7 (2020-04-23)
503
- * fix iot crash when timeouts in communications to Google happens (Sentry IOBROKER-IOT-2)
504
- * fix iot crash when google answers without customData (Sentry IOBROKER-IOT-1)
530
+ * fixed iot crash when timeouts in communications to Google happens (Sentry IOBROKER-IOT-2)
531
+ * fixed iot crash when google answers without customData (Sentry IOBROKER-IOT-1)
505
532
 
506
533
  ### 1.4.6 (2020-04-18)
507
534
  * (Apollon77) Add the Sentry error reporting to `React Frontend`
package/admin/actions.js CHANGED
@@ -41,7 +41,8 @@ function getActions(obj) {
41
41
  type = '';
42
42
  }
43
43
  }
44
- return {type: type, actions: actions};
44
+
45
+ return { type: type, actions: actions };
45
46
  }
46
47
 
47
48
  if (typeof module !== 'undefined' && module.parent) {
@@ -0,0 +1,145 @@
1
+ {
2
+ "files": {
3
+ "main.js": "/static/js/main.18f35401.js",
4
+ "ActionVisu.js": "/customRuleBlocks.js",
5
+ "static/js/src_bootstrap_jsx.ff91d7a5.chunk.js": "/static/js/src_bootstrap_jsx.ff91d7a5.chunk.js",
6
+ "static/js/node_modules_iobroker_adapter-react-v5_assets_devices_sync_recursive_-node_modules_iobroker_a-3fbe7d.46a44060.chunk.js": "/static/js/node_modules_iobroker_adapter-react-v5_assets_devices_sync_recursive_-node_modules_iobroker_a-3fbe7d.46a44060.chunk.js",
7
+ "static/js/node_modules_prop-types_index_js.4a6f1268.chunk.js": "/static/js/node_modules_prop-types_index_js.4a6f1268.chunk.js",
8
+ "static/js/node_modules_react_index_js.fbeb147f.chunk.js": "/static/js/node_modules_react_index_js.fbeb147f.chunk.js",
9
+ "static/js/src_ActionVisu_jsx.a56ad32e.chunk.js": "/static/js/src_ActionVisu_jsx.a56ad32e.chunk.js",
10
+ "static/js/vendors-node_modules_react-dom_index_js.f1109f10.chunk.js": "/static/js/vendors-node_modules_react-dom_index_js.f1109f10.chunk.js",
11
+ "static/js/vendors-node_modules_iobroker_adapter-react-v5_assets_devices_parseNames_d_ts-node_modules_io-1d9f06.e70271b6.chunk.js": "/static/js/vendors-node_modules_iobroker_adapter-react-v5_assets_devices_parseNames_d_ts-node_modules_io-1d9f06.e70271b6.chunk.js",
12
+ "static/media/Ground Floor.svg": "/static/media/Ground Floor.2b7c5c91db7f070935a2.svg",
13
+ "static/media/Second Floor.svg": "/static/media/Second Floor.a2d5ed32df336591c06b.svg",
14
+ "static/media/Cellar.svg": "/static/media/Cellar.7ec1b1803a2437c8b78c.svg",
15
+ "static/media/Anteroom.svg": "/static/media/Anteroom.93a742135f2c060ad619.svg",
16
+ "static/media/Corridor.svg": "/static/media/Corridor.93a742135f2c060ad619.svg",
17
+ "static/media/names.txt": "/static/media/names.3a7dae0bd6b8b03b280f.txt",
18
+ "static/media/Home Theater.svg": "/static/media/Home Theater.1e5f19a0b2a013f153f5.svg",
19
+ "static/media/Driveway.svg": "/static/media/Driveway.fbd31101c5a80a8bb37a.svg",
20
+ "static/media/Equipment Room.svg": "/static/media/Equipment Room.db92bdca64f653c844f8.svg",
21
+ "static/media/Front Yard.svg": "/static/media/Front Yard.af9ce2d89aa4d7a9363e.svg",
22
+ "static/media/Light.svg": "/static/media/Light.21f1a5dfcc93f8ba1214.svg",
23
+ "static/media/Garden.svg": "/static/media/Garden.51c2e94f62a74e20775d.svg",
24
+ "static/media/Gallery.svg": "/static/media/Gallery.4e7f9433fae8b24fdfca.svg",
25
+ "static/media/Alarm Systems.svg": "/static/media/Alarm Systems.857ab9a8f90827777b88.svg",
26
+ "static/media/Stove.svg": "/static/media/Stove.d0f68b3e138c5831d252.svg",
27
+ "static/media/Irrigation.svg": "/static/media/Irrigation.da57e9df479035d5d7f0.svg",
28
+ "static/media/Wardrobe.svg": "/static/media/Wardrobe.e8019970a2b51412cfdc.svg",
29
+ "static/media/Windscreen.svg": "/static/media/Windscreen.6058448bf63f72dd5036.svg",
30
+ "static/media/Pump.svg": "/static/media/Pump.a6035507cddbe7db5f6a.svg",
31
+ "static/media/Shutters.svg": "/static/media/Shutters.db7d7b0d498f40779210.svg",
32
+ "static/media/Living Area.svg": "/static/media/Living Area.1c29b81e75b75e3310db.svg",
33
+ "static/media/Lightings.svg": "/static/media/Lightings.658080eb8c0e347cd152.svg",
34
+ "static/media/Louvre.svg": "/static/media/Louvre.75b84cd3d39d68107807.svg",
35
+ "static/media/Washing Machines.svg": "/static/media/Washing Machines.577f3acdb3cef002b523.svg",
36
+ "static/media/Pool.svg": "/static/media/Pool.9452c0f84f53c7836f3d.svg",
37
+ "static/media/Heater.svg": "/static/media/Heater.b53bccc334bbb9238a36.svg",
38
+ "static/media/Dishwashers.svg": "/static/media/Dishwashers.3709566b7214596236b7.svg",
39
+ "static/media/Climate.svg": "/static/media/Climate.b7e9896e7f103360bb5a.svg",
40
+ "static/media/Entrance.svg": "/static/media/Entrance.4c1404056847caf959b6.svg",
41
+ "static/media/Humidity.svg": "/static/media/Humidity.6d58f69cf268dd8a8ac1.svg",
42
+ "static/media/Balcony.svg": "/static/media/Balcony.2f76ef0877aaa3bd2ff7.svg",
43
+ "static/media/Water.svg": "/static/media/Water.f50411984c5c24fa574d.svg",
44
+ "static/media/Dining Area.svg": "/static/media/Dining Area.14dfc38cbb4fe041e9da.svg",
45
+ "static/media/Dining Room.svg": "/static/media/Dining Room.14dfc38cbb4fe041e9da.svg",
46
+ "static/media/Dining.svg": "/static/media/Dining.14dfc38cbb4fe041e9da.svg",
47
+ "static/media/Gym.svg": "/static/media/Gym.7a0d22127ea3f557228a.svg",
48
+ "static/media/Dressing Room.svg": "/static/media/Dressing Room.5e6f8f64b0e8f91c473e.svg",
49
+ "static/media/Locker Room.svg": "/static/media/Locker Room.1e381bdf34bfce551d73.svg",
50
+ "static/media/Music.svg": "/static/media/Music.67bc6063cb601642fd74.svg",
51
+ "static/media/Workspace.svg": "/static/media/Workspace.97d73e419d966bfb6428.svg",
52
+ "static/media/Sconces.svg": "/static/media/Sconces.9bf4c2f7a209085207aa.svg",
53
+ "static/media/Chandelier.svg": "/static/media/Chandelier.8b9fbdbc73bc2e955ef7.svg",
54
+ "static/media/Vacuum Cleaner.svg": "/static/media/Vacuum Cleaner.9c8d50e436e6cea06dfa.svg",
55
+ "static/media/Curtains.svg": "/static/media/Curtains.955e213206d2073eef99.svg",
56
+ "static/media/Bathroom.svg": "/static/media/Bathroom.27a777c66183f9f613db.svg",
57
+ "static/media/Security.svg": "/static/media/Security.1ec78971bd34efa950f8.svg",
58
+ "static/media/Workshop.svg": "/static/media/Workshop.7856e59fe4f164c90609.svg",
59
+ "static/media/Barn.svg": "/static/media/Barn.5d839e84c80918ce2ef0.svg",
60
+ "static/media/Battery Status.svg": "/static/media/Battery Status.5951e2078ae1e573510e.svg",
61
+ "static/media/Guest Room.svg": "/static/media/Guest Room.41c7cfa38806f5009f82.svg",
62
+ "static/media/Chamber.svg": "/static/media/Chamber.71daaa4d14262dae029b.svg",
63
+ "static/media/Rear Wall.svg": "/static/media/Rear Wall.38843c33f1ea1f575500.svg",
64
+ "static/media/Iron.svg": "/static/media/Iron.b8a65a48503b6f3e0dc8.svg",
65
+ "static/media/Stairway.svg": "/static/media/Stairway.9b007e08605296110003.svg",
66
+ "static/media/Living Room.svg": "/static/media/Living Room.3c380ab767be35f904e1.svg",
67
+ "static/media/Hot Water.svg": "/static/media/Hot Water.5c0a9e01741562e1fbab.svg",
68
+ "static/media/Gates.svg": "/static/media/Gates.5a8baf2c3d4832ca57e8.svg",
69
+ "static/media/Speaker.svg": "/static/media/Speaker.db548379676317470c4f.svg",
70
+ "static/media/Doorstep.svg": "/static/media/Doorstep.10630b759b4867a10776.svg",
71
+ "static/media/SmokeDetector.svg": "/static/media/SmokeDetector.8222f77cb07030a409ee.svg",
72
+ "static/media/Boiler Room.svg": "/static/media/Boiler Room.548e785e2f92b45f72b3.svg",
73
+ "static/media/Office.svg": "/static/media/Office.7e6a38218390b655e270.svg",
74
+ "static/media/Cold Water.svg": "/static/media/Cold Water.937aad5fa21b0c20a856.svg",
75
+ "static/media/Summer House.svg": "/static/media/Summer House.541a9fec69f01105e244.svg",
76
+ "static/media/Amplifier.svg": "/static/media/Amplifier.6f5d18048328386033f8.svg",
77
+ "static/media/Hoods.svg": "/static/media/Hoods.c177ddfec9fa9a6335db.svg",
78
+ "static/media/Ventilation.svg": "/static/media/Ventilation.c31761d86d67e245ac92.svg",
79
+ "static/media/Led Strip.svg": "/static/media/Led Strip.5cf2de461e29ffbaa5f0.svg",
80
+ "static/media/Temperature Sensors.svg": "/static/media/Temperature Sensors.75d805988a6b77b231d8.svg",
81
+ "static/media/Toilet.svg": "/static/media/Toilet.83604dd2daafb67067dd.svg",
82
+ "static/media/Wc.svg": "/static/media/Wc.83604dd2daafb67067dd.svg",
83
+ "static/media/Playroom.svg": "/static/media/Playroom.e64c9de43030c28d2f96.svg",
84
+ "static/media/Kitchen.svg": "/static/media/Kitchen.deb7f976c1f43f9039a2.svg",
85
+ "static/media/Mowing Machine.svg": "/static/media/Mowing Machine.9ead5b039f36cdc800e6.svg",
86
+ "static/media/Consumption.svg": "/static/media/Consumption.fecd7a10a13fe4e5f69b.svg",
87
+ "static/media/Dryer.svg": "/static/media/Dryer.5ea89bd6dc20a00fb442.svg",
88
+ "static/media/Hairdryer.svg": "/static/media/Hairdryer.5960b514dac1f04f3c4d.svg",
89
+ "static/media/Weather.svg": "/static/media/Weather.e91dae647698d48365e3.svg",
90
+ "static/media/Terrace.svg": "/static/media/Terrace.d71d07d9290674f2ca20.svg",
91
+ "static/media/Sleeping Area.svg": "/static/media/Sleeping Area.828017602bfcc2dd7dce.svg",
92
+ "static/media/Nursery.svg": "/static/media/Nursery.9cecc0544bdb5c28500c.svg",
93
+ "static/media/Receiver.svg": "/static/media/Receiver.26b5ae166395a6dcb83f.svg",
94
+ "static/media/Coffee Makers.svg": "/static/media/Coffee Makers.9fb4d82f957a06f30dae.svg",
95
+ "static/media/Table Lamps.svg": "/static/media/Table Lamps.bd92de33bf86b6cbaec9.svg",
96
+ "static/media/Guest Bathroom.svg": "/static/media/Guest Bathroom.d07a9f1cf32a82d03267.svg",
97
+ "static/media/Attic.svg": "/static/media/Attic.bb5d690a160bb1d4edb2.svg",
98
+ "static/media/Awnings.svg": "/static/media/Awnings.78480df8796f09859b6a.svg",
99
+ "static/media/Washroom.svg": "/static/media/Washroom.bfb54196f381f36de9d6.svg",
100
+ "static/media/Outdoors.svg": "/static/media/Outdoors.da42e64a4b6ec2dd1e1c.svg",
101
+ "static/media/Computer.svg": "/static/media/Computer.9558f6ee3941dba4e3c5.svg",
102
+ "static/media/Laundry Room.svg": "/static/media/Laundry Room.58da550dff0173676e02.svg",
103
+ "static/media/Fan.svg": "/static/media/Fan.8a29f85d6ca99c584603.svg",
104
+ "static/media/People.svg": "/static/media/People.12a7e9127e72f3259186.svg",
105
+ "static/media/Garage.svg": "/static/media/Garage.f7fc0a9b326d582afee6.svg",
106
+ "static/media/Swimming Pool.svg": "/static/media/Swimming Pool.190b378cb0707edb9461.svg",
107
+ "static/media/Lock.svg": "/static/media/Lock.2cbfe17ea8923e0f4e9e.svg",
108
+ "static/media/Ceiling Spotlights.svg": "/static/media/Ceiling Spotlights.485822441b5df3b3384a.svg",
109
+ "static/media/Power Consumption.svg": "/static/media/Power Consumption.4faab614c3c788f2d338.svg",
110
+ "static/media/Storeroom.svg": "/static/media/Storeroom.7de4e6f3364554459b8a.svg",
111
+ "static/media/Water Heater.svg": "/static/media/Water Heater.7e4bb4d99a5213f24d08.svg",
112
+ "static/media/Hall.svg": "/static/media/Hall.9c2fa95419cb84ecda68.svg",
113
+ "static/media/Carport.svg": "/static/media/Carport.8337662544b9e95f4b27.svg",
114
+ "static/media/Printer.svg": "/static/media/Printer.146d983be964b95745d2.svg",
115
+ "static/media/Shading.svg": "/static/media/Shading.0577383dc227cd043b3d.svg",
116
+ "static/media/Basement.svg": "/static/media/Basement.fe636968eec9556bfd1f.svg",
117
+ "static/media/Shed.svg": "/static/media/Shed.491a2ad372036118002c.svg",
118
+ "static/media/Water Consumption.svg": "/static/media/Water Consumption.68891649591cc2434c5b.svg",
119
+ "static/media/Stairwell.svg": "/static/media/Stairwell.0914feea948153a8637a.svg",
120
+ "static/media/Tv.svg": "/static/media/Tv.4e9745a548e57bfac0c7.svg",
121
+ "static/media/Hanging Lamps.svg": "/static/media/Hanging Lamps.0bd452fc843edd645c30.svg",
122
+ "static/media/Handle.svg": "/static/media/Handle.3de1d1320fc3ce2f9712.svg",
123
+ "static/media/Sockets.svg": "/static/media/Sockets.8320e1a99be9de004629.svg",
124
+ "static/media/Floor Lamps.svg": "/static/media/Floor Lamps.471e0bcf308d94963504.svg",
125
+ "static/media/Bedroom.svg": "/static/media/Bedroom.2a16d8d98fafe965fd1b.svg",
126
+ "static/media/Window.svg": "/static/media/Window.421664f57c35e5109aa2.svg",
127
+ "static/media/Doors.svg": "/static/media/Doors.d59bf859f582d3488a04.svg",
128
+ "static/media/Garage Doors.svg": "/static/media/Garage Doors.0c2a1cfca7ad1ea59625.svg",
129
+ "static/media/Outdoor Blinds.svg": "/static/media/Outdoor Blinds.37b85a9c060a4af48da9.svg",
130
+ "static/media/Upstairs.svg": "/static/media/Upstairs.441813e54e0daca0882d.svg",
131
+ "index.html": "/index.html",
132
+ "main.18f35401.js.map": "/static/js/main.18f35401.js.map",
133
+ "customRuleBlocks.js.map": "/customRuleBlocks.js.map",
134
+ "src_bootstrap_jsx.ff91d7a5.chunk.js.map": "/static/js/src_bootstrap_jsx.ff91d7a5.chunk.js.map",
135
+ "node_modules_iobroker_adapter-react-v5_assets_devices_sync_recursive_-node_modules_iobroker_a-3fbe7d.46a44060.chunk.js.map": "/static/js/node_modules_iobroker_adapter-react-v5_assets_devices_sync_recursive_-node_modules_iobroker_a-3fbe7d.46a44060.chunk.js.map",
136
+ "node_modules_prop-types_index_js.4a6f1268.chunk.js.map": "/static/js/node_modules_prop-types_index_js.4a6f1268.chunk.js.map",
137
+ "node_modules_react_index_js.fbeb147f.chunk.js.map": "/static/js/node_modules_react_index_js.fbeb147f.chunk.js.map",
138
+ "src_ActionVisu_jsx.a56ad32e.chunk.js.map": "/static/js/src_ActionVisu_jsx.a56ad32e.chunk.js.map",
139
+ "vendors-node_modules_react-dom_index_js.f1109f10.chunk.js.map": "/static/js/vendors-node_modules_react-dom_index_js.f1109f10.chunk.js.map",
140
+ "vendors-node_modules_iobroker_adapter-react-v5_assets_devices_parseNames_d_ts-node_modules_io-1d9f06.e70271b6.chunk.js.map": "/static/js/vendors-node_modules_iobroker_adapter-react-v5_assets_devices_parseNames_d_ts-node_modules_io-1d9f06.e70271b6.chunk.js.map"
141
+ },
142
+ "entrypoints": [
143
+ "static/js/main.18f35401.js"
144
+ ]
145
+ }
@@ -0,0 +1,5 @@
1
+ var ActionVisu;(function(){"use strict";var $={57537:function(i,s,a){var d={"./ActionVisu":function(){return a.e("src_ActionVisu_jsx").then(function(){return function(){return a(2647)}})}},v=function(c,g){return a.R=g,g=a.o(d,c)?d[c]():Promise.resolve().then(function(){throw new Error('Module "'+c+'" does not exist in container.')}),a.R=void 0,g},h=function(c,g){if(a.S){var _="default",w=a.S[_];if(w&&w!==c)throw new Error("Container initialization failed as it has already been initialized with a different share scope");return a.S[_]=c,a.I(_,g)}};a.d(s,{get:function(){return v},init:function(){return h}})}},T={};function t(i){var s=T[i];if(s!==void 0)return s.exports;var a=T[i]={id:i,loaded:!1,exports:{}};return $[i].call(a.exports,a,a.exports,t),a.loaded=!0,a.exports}t.m=$,t.c=T,function(){t.n=function(i){var s=i&&i.__esModule?function(){return i.default}:function(){return i};return t.d(s,{a:s}),s}}(),function(){t.d=function(i,s){for(var a in s)t.o(s,a)&&!t.o(i,a)&&Object.defineProperty(i,a,{enumerable:!0,get:s[a]})}}(),function(){t.f={},t.e=function(i){return Promise.all(Object.keys(t.f).reduce(function(s,a){return t.f[a](i,s),s},[]))}}(),function(){t.u=function(i){return"static/js/"+i+"."+{"vendors-node_modules_iobroker_adapter-react-v5_assets_devices_parseNames_d_ts-node_modules_io-1d9f06":"e70271b6",webpack_sharing_consume_default_react_react:"8b370571","node_modules_iobroker_adapter-react-v5_assets_devices_sync_recursive_-node_modules_iobroker_a-3fbe7d":"46a44060","node_modules_prop-types_index_js":"4a6f1268","vendors-node_modules_react-dom_index_js":"f1109f10",node_modules_react_index_js:"fbeb147f",src_ActionVisu_jsx:"a56ad32e"}[i]+".chunk.js"}}(),function(){t.miniCssF=function(i){}}(),function(){t.g=function(){if(typeof globalThis=="object")return globalThis;try{return this||new Function("return this")()}catch(i){if(typeof window=="object")return window}}()}(),function(){t.o=function(i,s){return Object.prototype.hasOwnProperty.call(i,s)}}(),function(){var i={},s="iobroker.telegram.rules:";t.l=function(a,d,v,h){if(i[a]){i[a].push(d);return}var c,g;if(v!==void 0)for(var _=document.getElementsByTagName("script"),w=0;w<_.length;w++){var p=_[w];if(p.getAttribute("src")==a||p.getAttribute("data-webpack")==s+v){c=p;break}}c||(g=!0,c=document.createElement("script"),c.charset="utf-8",c.timeout=120,t.nc&&c.setAttribute("nonce",t.nc),c.setAttribute("data-webpack",s+v),c.src=a),i[a]=[d];var b=function(y,x){c.onerror=c.onload=null,clearTimeout(S);var V=i[a];if(delete i[a],c.parentNode&&c.parentNode.removeChild(c),V&&V.forEach(function(m){return m(x)}),y)return y(x)},S=setTimeout(b.bind(null,void 0,{type:"timeout",target:c}),12e4);c.onerror=b.bind(null,c.onerror),c.onload=b.bind(null,c.onload),g&&document.head.appendChild(c)}}(),function(){t.r=function(i){typeof Symbol!="undefined"&&Symbol.toStringTag&&Object.defineProperty(i,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(i,"__esModule",{value:!0})}}(),function(){t.nmd=function(i){return i.paths=[],i.children||(i.children=[]),i}}(),function(){t.S={};var i={},s={};t.I=function(a,d){d||(d=[]);var v=s[a];if(v||(v=s[a]={}),!(d.indexOf(v)>=0)){if(d.push(v),i[a])return i[a];t.o(t.S,a)||(t.S[a]={});var h=t.S[a],c=function(b){typeof console!="undefined"&&console.warn&&console.warn(b)},g="iobroker.telegram.rules",_=function(b,S,y,x){var V=h[b]=h[b]||{},m=V[S];(!m||!m.loaded&&(!x!=!m.eager?x:g>m.from))&&(V[S]={get:y,from:g,eager:!!x})},w=function(b){var S=function(m){c("Initialization of sharing external failed: "+m)};try{var y=t(b);if(!y)return;var x=function(m){return m&&m.init&&m.init(t.S[a],d)};if(y.then)return p.push(y.then(x,S));var V=x(y);if(V&&V.then)return p.push(V.catch(S))}catch(m){S(m)}},p=[];switch(a){case"default":_("@iobroker/adapter-react-v5","4.1.0",function(){return Promise.all([t.e("vendors-node_modules_iobroker_adapter-react-v5_assets_devices_parseNames_d_ts-node_modules_io-1d9f06"),t.e("webpack_sharing_consume_default_react_react"),t.e("node_modules_iobroker_adapter-react-v5_assets_devices_sync_recursive_-node_modules_iobroker_a-3fbe7d")]).then(function(){return function(){return t(37228)}})}),_("prop-types","15.8.1",function(){return t.e("node_modules_prop-types_index_js").then(function(){return function(){return t(2652)}})}),_("react-dom","18.2.0",function(){return Promise.all([t.e("vendors-node_modules_react-dom_index_js"),t.e("webpack_sharing_consume_default_react_react")]).then(function(){return function(){return t(73961)}})}),_("react","18.2.0",function(){return t.e("node_modules_react_index_js").then(function(){return function(){return t(89526)}})});break}return p.length?i[a]=Promise.all(p).then(function(){return i[a]=1}):i[a]=1}}}(),function(){var i;t.g.importScripts&&(i=t.g.location+"");var s=t.g.document;if(!i&&s&&(s.currentScript&&(i=s.currentScript.src),!i)){var a=s.getElementsByTagName("script");if(a.length)for(var d=a.length-1;d>-1&&!i;)i=a[d--].src}if(!i)throw new Error("Automatic publicPath is not supported in this browser");i=i.replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/"),t.p=i}(),function(){var i=function(r){var e=function(u){return u.split(".").map(function(f){return+f==f?+f:f})},n=/^([^-+]+)?(?:-([^+]+))?(?:\+(.+))?$/.exec(r),o=n[1]?e(n[1]):[];return n[2]&&(o.length++,o.push.apply(o,e(n[2]))),n[3]&&(o.push([]),o.push.apply(o,e(n[3]))),o},s=function(r,e){r=i(r),e=i(e);for(var n=0;;){if(n>=r.length)return n<e.length&&(typeof e[n])[0]!="u";var o=r[n],u=(typeof o)[0];if(n>=e.length)return u=="u";var f=e[n],l=(typeof f)[0];if(u!=l)return u=="o"&&l=="n"||l=="s"||u=="u";if(u!="o"&&u!="u"&&o!=f)return o<f;n++}},a=function(r){var e=r[0],n="";if(r.length===1)return"*";if(e+.5){n+=e==0?">=":e==-1?"<":e==1?"^":e==2?"~":e>0?"=":"!=";for(var o=1,u=1;u<r.length;u++)o--,n+=(typeof(l=r[u]))[0]=="u"?"-":(o>0?".":"")+(o=2,l);return n}var f=[];for(u=1;u<r.length;u++){var l=r[u];f.push(l===0?"not("+j()+")":l===1?"("+j()+" || "+j()+")":l===2?f.pop()+" "+f.pop():a(l))}return j();function j(){return f.pop().replace(/^\((.+)\)$/,"$1")}},d=function(r,e){if(0 in r){e=i(e);var n=r[0],o=n<0;o&&(n=-n-1);for(var u=0,f=1,l=!0;;f++,u++){var j,M,C=f<r.length?(typeof r[f])[0]:"";if(u>=e.length||(M=(typeof(j=e[u]))[0])=="o")return!l||(C=="u"?f>n&&!o:C==""!=o);if(M=="u"){if(!l||C!="u")return!1}else if(l)if(C==M)if(f<=n){if(j!=r[f])return!1}else{if(o?j>r[f]:j<r[f])return!1;j!=r[f]&&(l=!1)}else if(C!="s"&&C!="n"){if(o||f<=n)return!1;l=!1,f--}else{if(f<=n||M<C!=o)return!1;l=!1}else C!="s"&&C!="n"&&(l=!1,f--)}}var F=[],E=F.pop.bind(F);for(u=1;u<r.length;u++){var O=r[u];F.push(O==1?E()|E():O==2?E()&E():O?d(O,e):!E())}return!!E()},v=function(r,e){var n=t.S[r];if(!n||!t.o(n,e))throw new Error("Shared module "+e+" doesn't exist in shared scope "+r);return n},h=function(r,o){var n=r[o],o=Object.keys(n).reduce(function(u,f){return!u||s(u,f)?f:u},0);return o&&n[o]},c=function(r,e){var n=r[e];return Object.keys(n).reduce(function(o,u){return!o||!n[o].loaded&&s(o,u)?u:o},0)},g=function(r,e,n,o){return"Unsatisfied version "+n+" from "+(n&&r[e][n].from)+" of shared singleton module "+e+" (required "+a(o)+")"},_=function(r,e,n,o){var u=c(r,n);return m(r[n][u])},w=function(r,e,n,o){var u=c(r,n);return d(o,u)||x(g(r,n,u,o)),m(r[n][u])},p=function(r,e,n,o){var u=c(r,n);if(!d(o,u))throw new Error(g(r,n,u,o));return m(r[n][u])},b=function(r,u,n){var o=r[u],u=Object.keys(o).reduce(function(f,l){return d(n,l)&&(!f||s(f,l))?l:f},0);return u&&o[u]},S=function(r,e,n,o){var u=r[n];return"No satisfying version ("+a(o)+") of shared module "+n+" found in shared scope "+e+`.
2
+ Available versions: `+Object.keys(u).map(function(f){return f+" from "+u[f].from}).join(", ")},y=function(r,e,n,o){var u=b(r,n,o);if(u)return m(u);throw new Error(S(r,e,n,o))},x=function(r){typeof console!="undefined"&&console.warn&&console.warn(r)},V=function(r,e,n,o){x(S(r,e,n,o))},m=function(r){return r.loaded=1,r.get()},k=function(r){return function(e,n,o,u){var f=t.I(e);return f&&f.then?f.then(r.bind(r,e,t.S[e],n,o,u)):r(e,t.S[e],n,o,u)}},B=k(function(r,e,n){return v(r,n),m(h(e,n))}),U=k(function(r,e,n,o){return e&&t.o(e,n)?m(h(e,n)):o()}),D=k(function(r,e,n,o){return v(r,n),m(b(e,n,o)||V(e,r,n,o)||h(e,n))}),G=k(function(r,e,n){return v(r,n),_(e,r,n)}),H=k(function(r,e,n,o){return v(r,n),w(e,r,n,o)}),J=k(function(r,e,n,o){return v(r,n),y(e,r,n,o)}),K=k(function(r,e,n,o){return v(r,n),p(e,r,n,o)}),W=k(function(r,e,n,o,u){return!e||!t.o(e,n)?u():m(b(e,n,o)||V(e,r,n,o)||h(e,n))}),Q=k(function(r,e,n,o){return!e||!t.o(e,n)?o():_(e,r,n)}),A=k(function(r,e,n,o,u){return!e||!t.o(e,n)?u():w(e,r,n,o)}),R=k(function(r,e,n,o,u){var f=e&&t.o(e,n)&&b(e,n,o);return f?m(f):u()}),X=k(function(r,e,n,o,u){return!e||!t.o(e,n)?u():p(e,r,n,o)}),P={},L={4819:function(){return A("default","react",[0],function(){return t.e("node_modules_react_index_js").then(function(){return function(){return t(89526)}})})},15854:function(){return A("default","prop-types",[0],function(){return t.e("node_modules_prop-types_index_js").then(function(){return function(){return t(2652)}})})},77440:function(){return A("default","react-dom",[0],function(){return t.e("vendors-node_modules_react-dom_index_js").then(function(){return function(){return t(73961)}})})},75606:function(){return A("default","@iobroker/adapter-react-v5",[0],function(){return Promise.all([t.e("vendors-node_modules_iobroker_adapter-react-v5_assets_devices_parseNames_d_ts-node_modules_io-1d9f06"),t.e("webpack_sharing_consume_default_react_react"),t.e("node_modules_iobroker_adapter-react-v5_assets_devices_sync_recursive_-node_modules_iobroker_a-3fbe7d")]).then(function(){return function(){return t(37228)}})})}},N={webpack_sharing_consume_default_react_react:[4819],"node_modules_iobroker_adapter-react-v5_assets_devices_sync_recursive_-node_modules_iobroker_a-3fbe7d":[15854,77440],src_ActionVisu_jsx:[75606]};t.f.consumes=function(r,e){t.o(N,r)&&N[r].forEach(function(n){if(t.o(P,n))return e.push(P[n]);var o=function(l){P[n]=0,t.m[n]=function(j){delete t.c[n],j.exports=l()}},u=function(l){delete P[n],t.m[n]=function(j){throw delete t.c[n],l}};try{var f=L[n]();f.then?e.push(P[n]=f.then(o).catch(u)):o(f)}catch(l){u(l)}})}}(),function(){var i={ActionVisu:0};t.f.j=function(d,v){var h=t.o(i,d)?i[d]:void 0;if(h!==0)if(h)v.push(h[2]);else if(d!="webpack_sharing_consume_default_react_react"){var c=new Promise(function(p,b){h=i[d]=[p,b]});v.push(h[2]=c);var g=t.p+t.u(d),_=new Error,w=function(p){if(t.o(i,d)&&(h=i[d],h!==0&&(i[d]=void 0),h)){var b=p&&(p.type==="load"?"missing":p.type),S=p&&p.target&&p.target.src;_.message="Loading chunk "+d+` failed.
3
+ (`+b+": "+S+")",_.name="ChunkLoadError",_.type=b,_.request=S,h[1](_)}};t.l(g,w,"chunk-"+d,d)}else i[d]=0};var s=function(d,v){var h=v[0],c=v[1],g=v[2],_,w,p=0;if(h.some(function(S){return i[S]!==0})){for(_ in c)t.o(c,_)&&(t.m[_]=c[_]);if(g)var b=g(t)}for(d&&d(v);p<h.length;p++)w=h[p],t.o(i,w)&&i[w]&&i[w][0](),i[w]=0},a=self.webpackChunkiobroker_telegram_rules=self.webpackChunkiobroker_telegram_rules||[];a.forEach(s.bind(null,0)),a.push=s.bind(null,a.push.bind(a))}(),function(){t.nc=void 0}();var z=t(57537);ActionVisu=z})();
4
+
5
+ //# sourceMappingURL=customRuleBlocks.js.map