boneio 0.9.4.dev4__tar.gz → 0.9.5.dev1__tar.gz

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. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/PKG-INFO +1 -1
  2. boneio-0.9.4.dev4/boneio/boards/0.8/cover.yaml → boneio-0.9.5.dev1/boneio/boards/0.8/output_cover.yaml +32 -0
  3. boneio-0.9.5.dev1/boneio/example_config/config_24_16.yaml +28 -0
  4. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/helper/message_bus.py +9 -0
  5. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/helper/yaml_util.py +11 -2
  6. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/mqtt_client.py +9 -1
  7. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/runner.py +1 -0
  8. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/schema/schema.yaml +1 -1
  9. boneio-0.9.5.dev1/boneio/version.py +2 -0
  10. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/webui/schema/config.schema.json +1 -4
  11. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/pyproject.toml +1 -1
  12. boneio-0.9.4.dev4/boneio/version.py +0 -2
  13. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/LICENSE +0 -0
  14. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/README.md +0 -0
  15. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/__init__.py +0 -0
  16. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/boards/0.7/input.yaml +0 -0
  17. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/boards/0.7/output_32_10.yaml +0 -0
  18. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/boards/0.8/input.yaml +0 -0
  19. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/boards/0.8/output_32_10.yaml +0 -0
  20. /boneio-0.9.4.dev4/boneio/boards/0.8/cover_mix.yaml → /boneio-0.9.5.dev1/boneio/boards/0.8/output_cover_mix.yaml +0 -0
  21. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/bonecli.py +0 -0
  22. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/const.py +0 -0
  23. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/cover.py +0 -0
  24. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/example_config/__init__.py +0 -0
  25. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/example_config/adc.yaml +0 -0
  26. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/example_config/all_binary_sensor.yaml +0 -0
  27. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/example_config/binary_sensor.yaml +0 -0
  28. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/example_config/binary_sensor_v_0_7.yaml +0 -0
  29. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/example_config/config.yaml +0 -0
  30. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/example_config/cover.yaml +0 -0
  31. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/example_config/event.yaml +0 -0
  32. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/example_config/event_all.yaml +0 -0
  33. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/example_config/event_v_0_7.yaml +0 -0
  34. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/example_config/led32x4A.yaml +0 -0
  35. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/example_config/output24x16A.yaml +0 -0
  36. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/example_config/output24x16A_v0.3.yaml +0 -0
  37. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/example_config/output32x10A.yaml +0 -0
  38. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/example_config/output32x10A_new.yaml +0 -0
  39. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/example_config/output32x5A.yaml +0 -0
  40. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/fonts/danube__.ttf +0 -0
  41. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/group/__init__.py +0 -0
  42. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/group/output.py +0 -0
  43. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/helper/__init__.py +0 -0
  44. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/helper/async_updater.py +0 -0
  45. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/helper/click_timer.py +0 -0
  46. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/helper/config.py +0 -0
  47. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/helper/events.py +0 -0
  48. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/helper/exceptions.py +0 -0
  49. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/helper/filter.py +0 -0
  50. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/helper/gpio.py +0 -0
  51. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/helper/gpiod.py +0 -0
  52. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/helper/ha_discovery.py +0 -0
  53. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/helper/loader.py +0 -0
  54. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/helper/logger.py +0 -0
  55. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/helper/mqtt.py +0 -0
  56. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/helper/oled.py +0 -0
  57. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/helper/onewire/W1ThermSensor.py +0 -0
  58. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/helper/onewire/__init__.py +0 -0
  59. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/helper/onewire/ds2482.py +0 -0
  60. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/helper/onewire/onewire.py +0 -0
  61. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/helper/pcf8575.py +0 -0
  62. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/helper/queue.py +0 -0
  63. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/helper/schema_converter.py +0 -0
  64. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/helper/sensor/ina_219_smbus.py +0 -0
  65. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/helper/state_manager.py +0 -0
  66. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/helper/stats.py +0 -0
  67. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/helper/timeperiod.py +0 -0
  68. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/helper/util.py +0 -0
  69. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/input/__init__.py +0 -0
  70. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/input/gpio.py +0 -0
  71. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/input/gpio_new.py +0 -0
  72. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/manager.py +0 -0
  73. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/modbus/__init__.py +0 -0
  74. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/modbus/client.py +0 -0
  75. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/modbus/cwt.json +0 -0
  76. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/modbus/dts1964_3f.json +0 -0
  77. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/modbus/liquid-sensor.json +0 -0
  78. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/modbus/modbuscli.py +0 -0
  79. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/modbus/orno-or-we-517.json +0 -0
  80. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/modbus/pt100.json +0 -0
  81. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/modbus/r4dcb08.json +0 -0
  82. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/modbus/sdm120.json +0 -0
  83. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/modbus/sdm630.json +0 -0
  84. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/modbus/sensor.py +0 -0
  85. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/modbus/sht20.json +0 -0
  86. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/modbus/sht30.json +0 -0
  87. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/modbus/single_sensor.py +0 -0
  88. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/modbus/socomec_e03.json +0 -0
  89. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/modbus/socomec_e23.json +0 -0
  90. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/modbus/sofar.json +0 -0
  91. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/modbus/utils.py +0 -0
  92. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/models/__init__.py +0 -0
  93. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/models/files.py +0 -0
  94. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/models/logs.py +0 -0
  95. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/oled.py +0 -0
  96. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/relay/__init__.py +0 -0
  97. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/relay/basic.py +0 -0
  98. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/relay/gpio.py +0 -0
  99. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/relay/mcp.py +0 -0
  100. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/relay/pca.py +0 -0
  101. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/relay/pcf.py +0 -0
  102. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/schema/actions.yaml +0 -0
  103. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/schema/actions_sensor.yaml +0 -0
  104. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/schema/actions_switch.yaml +0 -0
  105. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/schema/filters.yaml +0 -0
  106. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/schema/filters_adc.yaml +0 -0
  107. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/schema/id.yaml +0 -0
  108. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/schema/temp_unit.yaml +0 -0
  109. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/schema/update_interval.yaml +0 -0
  110. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/sensor/__init__.py +0 -0
  111. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/sensor/adc.py +0 -0
  112. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/sensor/gpio.py +0 -0
  113. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/sensor/gpio_new.py +0 -0
  114. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/sensor/ina219.py +0 -0
  115. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/sensor/serial_number.py +0 -0
  116. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/sensor/temp/__init__.py +0 -0
  117. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/sensor/temp/dallas.py +0 -0
  118. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/sensor/temp/lm75.py +0 -0
  119. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/sensor/temp/mcp9808.py +0 -0
  120. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/webui/app.py +0 -0
  121. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/webui/frontend-dist/assets/abap-BrgZPUOV.js +0 -0
  122. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/webui/frontend-dist/assets/apex-DyP6w7ZV.js +0 -0
  123. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/webui/frontend-dist/assets/azcli-BaLxmfj-.js +0 -0
  124. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/webui/frontend-dist/assets/bat-CFOPXBzS.js +0 -0
  125. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/webui/frontend-dist/assets/bicep-BfEKNvv3.js +0 -0
  126. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/webui/frontend-dist/assets/cameligo-BFG1Mk7z.js +0 -0
  127. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/webui/frontend-dist/assets/clojure-DTECt2xU.js +0 -0
  128. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/webui/frontend-dist/assets/codicon-DCmgc-ay.ttf +0 -0
  129. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/webui/frontend-dist/assets/coffee-CDGzqUPQ.js +0 -0
  130. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/webui/frontend-dist/assets/cpp-CLLBncYj.js +0 -0
  131. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/webui/frontend-dist/assets/csharp-dUCx_-0o.js +0 -0
  132. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/webui/frontend-dist/assets/csp-5Rap-vPy.js +0 -0
  133. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/webui/frontend-dist/assets/css-D3h14YRZ.js +0 -0
  134. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/webui/frontend-dist/assets/cssMode-CtnT2jQE.js +0 -0
  135. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/webui/frontend-dist/assets/cypher-DrQuvNYM.js +0 -0
  136. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/webui/frontend-dist/assets/dart-CFKIUWau.js +0 -0
  137. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/webui/frontend-dist/assets/dockerfile-Zznr-cwX.js +0 -0
  138. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/webui/frontend-dist/assets/ecl-Ce3n6wWz.js +0 -0
  139. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/webui/frontend-dist/assets/editor.worker-D5ngByhL.js +0 -0
  140. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/webui/frontend-dist/assets/elixir-deUWdS0T.js +0 -0
  141. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/webui/frontend-dist/assets/flow9-i9-g7ZhI.js +0 -0
  142. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/webui/frontend-dist/assets/freemarker2-DGuhXH41.js +0 -0
  143. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/webui/frontend-dist/assets/fsharp-CzKuDChf.js +0 -0
  144. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/webui/frontend-dist/assets/go-Cphgjts3.js +0 -0
  145. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/webui/frontend-dist/assets/graphql-Cg7bfA9N.js +0 -0
  146. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/webui/frontend-dist/assets/handlebars-DB9ioYEj.js +0 -0
  147. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/webui/frontend-dist/assets/hcl-0cvrggvQ.js +0 -0
  148. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/webui/frontend-dist/assets/html-B1N3G2t2.js +0 -0
  149. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/webui/frontend-dist/assets/htmlMode-Bu4tsIzC.js +0 -0
  150. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/webui/frontend-dist/assets/index-BLdVcyHp.js +0 -0
  151. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/webui/frontend-dist/assets/index-CCgG6NMg.css +0 -0
  152. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/webui/frontend-dist/assets/ini-Drc7WvVn.js +0 -0
  153. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/webui/frontend-dist/assets/java-B_fMsGYe.js +0 -0
  154. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/webui/frontend-dist/assets/javascript-Bc9neA1Z.js +0 -0
  155. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/webui/frontend-dist/assets/json.worker-F0ZGA5Zk.js +0 -0
  156. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/webui/frontend-dist/assets/jsonMode-CKQTb-28.js +0 -0
  157. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/webui/frontend-dist/assets/julia-Bqgm2twL.js +0 -0
  158. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/webui/frontend-dist/assets/kotlin-BSkB5QuD.js +0 -0
  159. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/webui/frontend-dist/assets/less-BsTHnhdd.js +0 -0
  160. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/webui/frontend-dist/assets/lexon-YWi4-JPR.js +0 -0
  161. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/webui/frontend-dist/assets/liquid-CTaX0gqb.js +0 -0
  162. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/webui/frontend-dist/assets/lua-nf6ki56Z.js +0 -0
  163. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/webui/frontend-dist/assets/m3-Cpb6xl2v.js +0 -0
  164. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/webui/frontend-dist/assets/markdown-DSZPf7rp.js +0 -0
  165. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/webui/frontend-dist/assets/mdx-5o2ITl9M.js +0 -0
  166. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/webui/frontend-dist/assets/mips-B_c3zf-v.js +0 -0
  167. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/webui/frontend-dist/assets/msdax-rUNN04Wq.js +0 -0
  168. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/webui/frontend-dist/assets/mysql-DDwshQtU.js +0 -0
  169. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/webui/frontend-dist/assets/objective-c-B5zXfXm9.js +0 -0
  170. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/webui/frontend-dist/assets/pascal-CXOwvkN_.js +0 -0
  171. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/webui/frontend-dist/assets/pascaligo-Bc-ZgV77.js +0 -0
  172. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/webui/frontend-dist/assets/perl-CwNk8-XU.js +0 -0
  173. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/webui/frontend-dist/assets/pgsql-tGk8EFnU.js +0 -0
  174. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/webui/frontend-dist/assets/php-CpIb_Oan.js +0 -0
  175. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/webui/frontend-dist/assets/pla-B03wrqEc.js +0 -0
  176. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/webui/frontend-dist/assets/postiats-BKlk5iyT.js +0 -0
  177. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/webui/frontend-dist/assets/powerquery-Bhzvs7bI.js +0 -0
  178. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/webui/frontend-dist/assets/powershell-Dd3NCNK9.js +0 -0
  179. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/webui/frontend-dist/assets/protobuf-COyEY5Pt.js +0 -0
  180. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/webui/frontend-dist/assets/pug-BaJupSGV.js +0 -0
  181. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/webui/frontend-dist/assets/python-Db8FWkCf.js +0 -0
  182. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/webui/frontend-dist/assets/qsharp-DXyYeYxl.js +0 -0
  183. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/webui/frontend-dist/assets/r-CdQndTaG.js +0 -0
  184. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/webui/frontend-dist/assets/razor-CLTS28q7.js +0 -0
  185. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/webui/frontend-dist/assets/redis-CVwtpugi.js +0 -0
  186. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/webui/frontend-dist/assets/redshift-25W9uPmb.js +0 -0
  187. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/webui/frontend-dist/assets/restructuredtext-DfzH4Xui.js +0 -0
  188. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/webui/frontend-dist/assets/ruby-Cp1zYvxS.js +0 -0
  189. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/webui/frontend-dist/assets/rust-D5C2fndG.js +0 -0
  190. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/webui/frontend-dist/assets/sb-CDntyWJ8.js +0 -0
  191. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/webui/frontend-dist/assets/scala-BoFRg7Ot.js +0 -0
  192. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/webui/frontend-dist/assets/scheme-Bio4gycK.js +0 -0
  193. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/webui/frontend-dist/assets/scss-4Ik7cdeQ.js +0 -0
  194. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/webui/frontend-dist/assets/shell-CX-rkNHf.js +0 -0
  195. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/webui/frontend-dist/assets/solidity-Tw7wswEv.js +0 -0
  196. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/webui/frontend-dist/assets/sophia-C5WLch3f.js +0 -0
  197. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/webui/frontend-dist/assets/sparql-DHaeiCBh.js +0 -0
  198. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/webui/frontend-dist/assets/sql-CCSDG5nI.js +0 -0
  199. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/webui/frontend-dist/assets/st-pnP8ivHi.js +0 -0
  200. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/webui/frontend-dist/assets/swift-DwJ7jVG9.js +0 -0
  201. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/webui/frontend-dist/assets/systemverilog-B9Xyijhd.js +0 -0
  202. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/webui/frontend-dist/assets/tcl-DnHyzjbg.js +0 -0
  203. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/webui/frontend-dist/assets/tsMode-CrhZjPZD.js +0 -0
  204. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/webui/frontend-dist/assets/twig-CPajHgWi.js +0 -0
  205. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/webui/frontend-dist/assets/typescript-BEFA7MWI.js +0 -0
  206. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/webui/frontend-dist/assets/typespec-D-MeaMDU.js +0 -0
  207. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/webui/frontend-dist/assets/vb-DgyLZaXg.js +0 -0
  208. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/webui/frontend-dist/assets/wgsl-BIv9DU6q.js +0 -0
  209. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/webui/frontend-dist/assets/xml-z_iSgMVJ.js +0 -0
  210. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/webui/frontend-dist/assets/yaml-3ScDl3Sa.js +0 -0
  211. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/webui/frontend-dist/assets/yaml.worker-C2uymlqn.js +0 -0
  212. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/webui/frontend-dist/boneio.svg +0 -0
  213. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/webui/frontend-dist/boneio_fav.svg +0 -0
  214. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/webui/frontend-dist/index.html +0 -0
  215. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/webui/schema/adc.schema.json +0 -0
  216. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/webui/schema/binary_sensor.schema.json +0 -0
  217. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/webui/schema/boneio.schema.json +0 -0
  218. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/webui/schema/cover.schema.json +0 -0
  219. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/webui/schema/dallas.schema.json +0 -0
  220. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/webui/schema/ds2482.schema.json +0 -0
  221. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/webui/schema/event.schema.json +0 -0
  222. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/webui/schema/ina219.schema.json +0 -0
  223. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/webui/schema/lm75.schema.json +0 -0
  224. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/webui/schema/logger.schema.json +0 -0
  225. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/webui/schema/mcp23017.schema.json +0 -0
  226. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/webui/schema/mcp9808.schema.json +0 -0
  227. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/webui/schema/modbus.schema.json +0 -0
  228. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/webui/schema/modbus_sensors.schema.json +0 -0
  229. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/webui/schema/mqtt.schema.json +0 -0
  230. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/webui/schema/oled.schema.json +0 -0
  231. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/webui/schema/output.schema.json +0 -0
  232. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/webui/schema/output_group.schema.json +0 -0
  233. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/webui/schema/pca9685.schema.json +0 -0
  234. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/webui/schema/pcf8575.schema.json +0 -0
  235. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/webui/schema/sensor.schema.json +0 -0
  236. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/webui/schema/web.schema.json +0 -0
  237. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/webui/web_server.py +0 -0
  238. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/boneio/webui/websocket_manager.py +0 -0
  239. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/tests/32_5_config.yaml +0 -0
  240. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/tests/bandit.yaml +0 -0
  241. {boneio-0.9.4.dev4 → boneio-0.9.5.dev1}/tests/relay_32_5.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: boneio
3
- Version: 0.9.4.dev4
3
+ Version: 0.9.5.dev1
4
4
  Summary: Python App for BoneIO
5
5
  License: GNU General Public License v3.0
6
6
  Author-email: Paweł Szafer <pszafer@gmail.com>
@@ -9,129 +9,161 @@ output_mapping:
9
9
  kind: mcp
10
10
  mcp_id: mcp2
11
11
  pin: 7
12
+ output_type: none
12
13
  cover_01_down:
13
14
  kind: mcp
14
15
  mcp_id: mcp2
15
16
  pin: 6
17
+ output_type: none
16
18
  cover_02_up:
17
19
  kind: mcp
18
20
  mcp_id: mcp2
19
21
  pin: 5
22
+ output_type: none
20
23
  cover_02_down:
21
24
  kind: mcp
22
25
  mcp_id: mcp2
23
26
  pin: 4
27
+ output_type: none
24
28
  cover_03_up:
25
29
  kind: mcp
26
30
  mcp_id: mcp2
27
31
  pin: 3
32
+ output_type: none
28
33
  cover_03_down:
29
34
  kind: mcp
30
35
  mcp_id: mcp2
31
36
  pin: 2
37
+ output_type: none
32
38
  cover_04_up:
33
39
  kind: mcp
34
40
  mcp_id: mcp2
35
41
  pin: 1
42
+ output_type: none
36
43
  cover_04_down:
37
44
  kind: mcp
38
45
  mcp_id: mcp2
39
46
  pin: 0
47
+ output_type: none
40
48
  cover_05_up:
41
49
  kind: mcp
42
50
  mcp_id: mcp1
43
51
  pin: 7
52
+ output_type: none
44
53
  cover_05_down:
45
54
  kind: mcp
46
55
  mcp_id: mcp1
47
56
  pin: 6
57
+ output_type: none
48
58
  cover_06_up:
49
59
  kind: mcp
50
60
  mcp_id: mcp1
51
61
  pin: 5
62
+ output_type: none
52
63
  cover_06_down:
53
64
  kind: mcp
54
65
  mcp_id: mcp1
55
66
  pin: 4
67
+ output_type: none
56
68
  cover_07_up:
57
69
  kind: mcp
58
70
  mcp_id: mcp1
59
71
  pin: 3
72
+ output_type: none
60
73
  cover_07_down:
61
74
  kind: mcp
62
75
  mcp_id: mcp1
63
76
  pin: 2
77
+ output_type: none
64
78
  cover_08_up:
65
79
  kind: mcp
66
80
  mcp_id: mcp1
67
81
  pin: 1
82
+ output_type: none
68
83
  cover_08_down:
69
84
  kind: mcp
70
85
  mcp_id: mcp1
71
86
  pin: 0
87
+ output_type: none
72
88
  cover_09_up:
73
89
  kind: mcp
74
90
  mcp_id: mcp2
75
91
  pin: 8
92
+ output_type: none
76
93
  cover_09_down:
77
94
  kind: mcp
78
95
  mcp_id: mcp2
79
96
  pin: 9
97
+ output_type: none
80
98
  cover_10_up:
81
99
  kind: mcp
82
100
  mcp_id: mcp2
83
101
  pin: 10
102
+ output_type: none
84
103
  cover_10_down:
85
104
  kind: mcp
86
105
  mcp_id: mcp2
87
106
  pin: 11
107
+ output_type: none
88
108
  cover_11_up:
89
109
  kind: mcp
90
110
  mcp_id: mcp2
91
111
  pin: 12
112
+ output_type: none
92
113
  cover_11_down:
93
114
  kind: mcp
94
115
  mcp_id: mcp2
95
116
  pin: 13
117
+ output_type: none
96
118
  cover_12_up:
97
119
  kind: mcp
98
120
  mcp_id: mcp2
99
121
  pin: 14
122
+ output_type: none
100
123
  cover_12_down:
101
124
  kind: mcp
102
125
  mcp_id: mcp2
103
126
  pin: 15
127
+ output_type: none
104
128
  cover_13_up:
105
129
  kind: mcp
106
130
  mcp_id: mcp1
107
131
  pin: 8
132
+ output_type: none
108
133
  cover_13_down:
109
134
  kind: mcp
110
135
  mcp_id: mcp1
111
136
  pin: 9
137
+ output_type: none
112
138
  cover_14_up:
113
139
  kind: mcp
114
140
  mcp_id: mcp1
115
141
  pin: 10
142
+ output_type: none
116
143
  cover_14_down:
117
144
  kind: mcp
118
145
  mcp_id: mcp1
119
146
  pin: 11
147
+ output_type: none
120
148
  cover_15_up:
121
149
  kind: mcp
122
150
  mcp_id: mcp1
123
151
  pin: 12
152
+ output_type: none
124
153
  cover_15_down:
125
154
  kind: mcp
126
155
  mcp_id: mcp1
127
156
  pin: 13
157
+ output_type: none
128
158
  cover_16_up:
129
159
  kind: mcp
130
160
  mcp_id: mcp1
131
161
  pin: 14
162
+ output_type: none
132
163
  cover_16_down:
133
164
  kind: mcp
134
165
  mcp_id: mcp1
135
166
  pin: 15
167
+ output_type: none
136
168
 
137
169
 
@@ -0,0 +1,28 @@
1
+ mqtt:
2
+ host: hostname
3
+ username: mqtt
4
+ password: password
5
+ topic_prefix: boneiohome
6
+ ha_discovery:
7
+ enabled: yes
8
+
9
+ oled:
10
+ enabled: yes
11
+
12
+ lm75:
13
+ - id: temp
14
+ address: 0x48
15
+
16
+ mcp23017:
17
+ - id: mcp1
18
+ address: 0x20
19
+ - id: mcp2
20
+ address: 0x21
21
+
22
+ event: !include event.yaml
23
+ binary_sensor: !include binary_sensor.yaml
24
+
25
+ output: !include output24x16A.yaml
26
+
27
+
28
+ # adc: !include adc.yaml Uncomment only if needed.
@@ -32,6 +32,11 @@ class MessageBus(ABC):
32
32
  """Set manager."""
33
33
  pass
34
34
 
35
+ @abstractmethod
36
+ async def announce_offline(self) -> None:
37
+ """Announce that the device is offline."""
38
+ pass
39
+
35
40
  class LocalMessageBus(MessageBus):
36
41
  """Local message bus that doesn't use MQTT."""
37
42
 
@@ -81,3 +86,7 @@ class LocalMessageBus(MessageBus):
81
86
  def set_manager(self, manager: Manager) -> None:
82
87
  """Set manager."""
83
88
  self._manager = manager
89
+
90
+ async def announce_offline(self) -> None:
91
+ """Announce that the device is offline."""
92
+ pass
@@ -275,7 +275,16 @@ def merge_board_config(config: dict) -> dict:
275
275
  # Merge mapped output with user config, preserving user-specified values
276
276
  input.update({k: v for k, v in mapped_input.items()})
277
277
 
278
-
278
+ elif "cover" in board_name:
279
+ _LOGGER.debug("Cover config detected without outputs config.")
280
+ output_mapping = board_config.get("output_mapping", {})
281
+ config["output"] = []
282
+ for key, value in output_mapping.items():
283
+ config["output"].append(
284
+ {
285
+ "id": key,
286
+ **value
287
+ })
279
288
  return config
280
289
 
281
290
 
@@ -336,7 +345,7 @@ class CustomValidator(Validator):
336
345
  """Validate that a field is required if a condition is met.
337
346
 
338
347
  The rule's arguments are validated against this schema:
339
- {'type': 'dict'}
348
+ {'type' : 'dict'}
340
349
  """
341
350
  if not required_if:
342
351
  return
@@ -166,6 +166,14 @@ class MQTTClient(MessageBus):
166
166
  await self.publish(*to_publish)
167
167
  self.publish_queue.task_done()
168
168
 
169
+ async def announce_offline(self) -> None:
170
+ """Announce that the device is offline."""
171
+ await self.publish(
172
+ topic=f"{self._config_helper.topic_prefix}/{STATE}",
173
+ payload=OFFLINE,
174
+ retain=True,
175
+ )
176
+
169
177
  async def start_client(self) -> None:
170
178
  """Keep the event loop alive and process any periodic tasks."""
171
179
  try:
@@ -186,6 +194,7 @@ class MQTTClient(MessageBus):
186
194
  await asyncio.sleep(self.reconnect_interval)
187
195
  self.create_client() # reset connect/reconnect futures
188
196
  except (asyncio.CancelledError, GracefulExit):
197
+ _LOGGER.info("MQTT client shutting down...")
189
198
  await self.asyncio_client.disconnect(timeout=1.0)
190
199
  # raise
191
200
 
@@ -197,7 +206,6 @@ class MQTTClient(MessageBus):
197
206
  """Connect and subscribe to manager topics + host stats."""
198
207
  async with AsyncExitStack() as stack:
199
208
  await stack.enter_async_context(self.asyncio_client)
200
- self._connection_established = True
201
209
  self.publish_queue.set_connected(True)
202
210
  # Create a new future for this run
203
211
  self._cancel_future = asyncio.Future()
@@ -184,6 +184,7 @@ async def async_run(
184
184
 
185
185
  if shutdown_event.is_set():
186
186
  _LOGGER.info("Starting graceful shutdown...")
187
+ await message_bus.announce_offline()
187
188
  main_gather.cancel()
188
189
  try:
189
190
  await main_gather
@@ -1,6 +1,6 @@
1
1
  mqtt:
2
2
  type: dict
3
- required: True
3
+ required: False
4
4
  meta:
5
5
  label: "https://boneio.eu/docs/black/configuration/mqtt \n Mqtt section of boneIO Black configuration file. It handled connecting to mqtt broker, which then is connected to Home Assistant or other smart home system."
6
6
  schema:
@@ -0,0 +1,2 @@
1
+ # flake8: noqa
2
+ __version__ = "0.9.5dev1"
@@ -2432,8 +2432,5 @@
2432
2432
  "description": "https://boneio.eu/docs/black/0.9.x-dev/configuration/boneio \n BoneIO configuration section. It's new section for boneIO Black. It enables you to use predefined device types. For now only 0.7 and 0.8 devices are supported.",
2433
2433
  "title": "Boneio"
2434
2434
  }
2435
- },
2436
- "required": [
2437
- "mqtt"
2438
- ]
2435
+ }
2439
2436
  }
@@ -35,7 +35,7 @@ dependencies = [
35
35
  "qrcode==7.4.2",
36
36
  ]
37
37
  requires-python = ">=3.7"
38
- version = "0.9.4.dev4"
38
+ version = "0.9.5.dev1"
39
39
 
40
40
  [project.license]
41
41
  text = "GNU General Public License v3.0"
@@ -1,2 +0,0 @@
1
- # flake8: noqa
2
- __version__ = "0.9.4dev4"
File without changes
File without changes
File without changes
File without changes
File without changes