blebox-uniapi 2.5.8__tar.gz → 2.5.10__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 (56) hide show
  1. blebox_uniapi-2.5.10/CHANGELOG.md +239 -0
  2. {blebox_uniapi-2.5.8 → blebox_uniapi-2.5.10}/CONTRIBUTING.rst +13 -17
  3. {blebox_uniapi-2.5.8 → blebox_uniapi-2.5.10}/MANIFEST.in +2 -2
  4. blebox_uniapi-2.5.10/PKG-INFO +300 -0
  5. blebox_uniapi-2.5.10/README.md +25 -0
  6. {blebox_uniapi-2.5.8 → blebox_uniapi-2.5.10}/blebox_uniapi/__init__.py +1 -1
  7. {blebox_uniapi-2.5.8 → blebox_uniapi-2.5.10}/blebox_uniapi/sensor.py +2 -2
  8. {blebox_uniapi-2.5.8 → blebox_uniapi-2.5.10}/blebox_uniapi/session.py +45 -11
  9. blebox_uniapi-2.5.10/blebox_uniapi.egg-info/PKG-INFO +300 -0
  10. {blebox_uniapi-2.5.8 → blebox_uniapi-2.5.10}/blebox_uniapi.egg-info/SOURCES.txt +2 -2
  11. {blebox_uniapi-2.5.8 → blebox_uniapi-2.5.10}/blebox_uniapi.egg-info/requires.txt +1 -1
  12. blebox_uniapi-2.5.10/setup.cfg +20 -0
  13. {blebox_uniapi-2.5.8 → blebox_uniapi-2.5.10}/setup.py +7 -7
  14. {blebox_uniapi-2.5.8 → blebox_uniapi-2.5.10}/tests/test_sensor.py +7 -7
  15. {blebox_uniapi-2.5.8 → blebox_uniapi-2.5.10}/tests/test_session.py +86 -4
  16. blebox_uniapi-2.5.8/HISTORY.rst +0 -174
  17. blebox_uniapi-2.5.8/PKG-INFO +0 -243
  18. blebox_uniapi-2.5.8/README.rst +0 -33
  19. blebox_uniapi-2.5.8/blebox_uniapi.egg-info/PKG-INFO +0 -243
  20. blebox_uniapi-2.5.8/setup.cfg +0 -34
  21. {blebox_uniapi-2.5.8 → blebox_uniapi-2.5.10}/LICENSE +0 -0
  22. {blebox_uniapi-2.5.8 → blebox_uniapi-2.5.10}/blebox_uniapi/binary_sensor.py +0 -0
  23. {blebox_uniapi-2.5.8 → blebox_uniapi-2.5.10}/blebox_uniapi/box.py +0 -0
  24. {blebox_uniapi-2.5.8 → blebox_uniapi-2.5.10}/blebox_uniapi/box_types.py +0 -0
  25. {blebox_uniapi-2.5.8 → blebox_uniapi-2.5.10}/blebox_uniapi/button.py +0 -0
  26. {blebox_uniapi-2.5.8 → blebox_uniapi-2.5.10}/blebox_uniapi/climate.py +0 -0
  27. {blebox_uniapi-2.5.8 → blebox_uniapi-2.5.10}/blebox_uniapi/cover.py +0 -0
  28. {blebox_uniapi-2.5.8 → blebox_uniapi-2.5.10}/blebox_uniapi/error.py +0 -0
  29. {blebox_uniapi-2.5.8 → blebox_uniapi-2.5.10}/blebox_uniapi/feature.py +0 -0
  30. {blebox_uniapi-2.5.8 → blebox_uniapi-2.5.10}/blebox_uniapi/jfollow.py +0 -0
  31. {blebox_uniapi-2.5.8 → blebox_uniapi-2.5.10}/blebox_uniapi/light.py +0 -0
  32. {blebox_uniapi-2.5.8 → blebox_uniapi-2.5.10}/blebox_uniapi/switch.py +0 -0
  33. {blebox_uniapi-2.5.8 → blebox_uniapi-2.5.10}/blebox_uniapi/update.py +0 -0
  34. {blebox_uniapi-2.5.8 → blebox_uniapi-2.5.10}/blebox_uniapi.egg-info/dependency_links.txt +0 -0
  35. {blebox_uniapi-2.5.8 → blebox_uniapi-2.5.10}/blebox_uniapi.egg-info/not-zip-safe +0 -0
  36. {blebox_uniapi-2.5.8 → blebox_uniapi-2.5.10}/blebox_uniapi.egg-info/top_level.txt +0 -0
  37. {blebox_uniapi-2.5.8 → blebox_uniapi-2.5.10}/docs/Makefile +0 -0
  38. {blebox_uniapi-2.5.8 → blebox_uniapi-2.5.10}/docs/authors.rst +0 -0
  39. {blebox_uniapi-2.5.8 → blebox_uniapi-2.5.10}/docs/conf.py +0 -0
  40. {blebox_uniapi-2.5.8 → blebox_uniapi-2.5.10}/docs/contributing.rst +0 -0
  41. {blebox_uniapi-2.5.8 → blebox_uniapi-2.5.10}/docs/history.rst +0 -0
  42. {blebox_uniapi-2.5.8 → blebox_uniapi-2.5.10}/docs/index.rst +0 -0
  43. {blebox_uniapi-2.5.8 → blebox_uniapi-2.5.10}/docs/installation.rst +0 -0
  44. {blebox_uniapi-2.5.8 → blebox_uniapi-2.5.10}/docs/make.bat +0 -0
  45. {blebox_uniapi-2.5.8 → blebox_uniapi-2.5.10}/docs/readme.rst +0 -0
  46. {blebox_uniapi-2.5.8 → blebox_uniapi-2.5.10}/docs/usage.rst +0 -0
  47. {blebox_uniapi-2.5.8 → blebox_uniapi-2.5.10}/tests/test_box.py +0 -0
  48. {blebox_uniapi-2.5.8 → blebox_uniapi-2.5.10}/tests/test_box_types.py +0 -0
  49. {blebox_uniapi-2.5.8 → blebox_uniapi-2.5.10}/tests/test_button.py +0 -0
  50. {blebox_uniapi-2.5.8 → blebox_uniapi-2.5.10}/tests/test_climate.py +0 -0
  51. {blebox_uniapi-2.5.8 → blebox_uniapi-2.5.10}/tests/test_cover.py +0 -0
  52. {blebox_uniapi-2.5.8 → blebox_uniapi-2.5.10}/tests/test_light.py +0 -0
  53. {blebox_uniapi-2.5.8 → blebox_uniapi-2.5.10}/tests/test_light_unit.py +0 -0
  54. {blebox_uniapi-2.5.8 → blebox_uniapi-2.5.10}/tests/test_switch.py +0 -0
  55. {blebox_uniapi-2.5.8 → blebox_uniapi-2.5.10}/tests/test_unknown.py +0 -0
  56. {blebox_uniapi-2.5.8 → blebox_uniapi-2.5.10}/tests/test_update.py +0 -0
@@ -0,0 +1,239 @@
1
+ # Changelog
2
+
3
+ ## [2.5.10](https://github.com/blebox/blebox_uniapi/compare/v2.5.9...v2.5.10) (2026-11-09)
4
+
5
+
6
+ ### Bug Fixes
7
+
8
+ * retry once when device connection times out ([#208](https://github.com/blebox/blebox_uniapi/issues/208)) ([16e34cf](https://github.com/blebox/blebox_uniapi/commit/16e34cf62d25502aab9922db82d78237e08bd53b))
9
+
10
+ ## [2.5.9](https://github.com/blebox/blebox_uniapi/compare/v2.5.8...v2.5.9) (2026-10-18)
11
+
12
+
13
+ ### Bug Fixes
14
+
15
+ * tankSensor liquidHeight and volume are reported in mm and ml ([#206](https://github.com/blebox/blebox_uniapi/issues/206)) ([7512f43](https://github.com/blebox/blebox_uniapi/commit/7512f4394c2452c77c7d65e9c2d2c645a58019a3))
16
+
17
+ ## [2.5.8](https://github.com/blebox/blebox_uniapi/compare/v2.5.7...v2.5.8) (2026-10-01)
18
+
19
+ ### Features
20
+
21
+ * support tankSensor ([#204](https://github.com/blebox/blebox_uniapi/issues/204)) ([2f93dac](https://github.com/blebox/blebox_uniapi/commit/2f93dac7ad020cd504921e7f5c710e6a4549ed21))
22
+
23
+ ### Bug Fixes
24
+
25
+ * query both info endpoints in OTA check ([#203](https://github.com/blebox/blebox_uniapi/issues/203)) ([a6683c4](https://github.com/blebox/blebox_uniapi/commit/a6683c4cf92e932278d2ed653bae05bc9b56230b))
26
+
27
+ ## [2.5.7](https://github.com/blebox/blebox_uniapi/compare/v2.5.6...v2.5.7) (2026-08-12)
28
+
29
+ ### Bug Fixes
30
+
31
+ * handle sensor state and thermoBox safety off ([#202](https://github.com/blebox/blebox_uniapi/issues/202)) ([1321ce5](https://github.com/blebox/blebox_uniapi/commit/1321ce505fa3864276a5408ab6b30e8c6d45e9fa))
32
+
33
+ ## [2.5.6](https://github.com/blebox/blebox_uniapi/compare/v2.5.5...v2.5.6) (2026-08-06)
34
+
35
+ ### Features
36
+
37
+ * expose gateBox extra button output as a button entity ([#201](https://github.com/blebox/blebox_uniapi/issues/201)) ([eb72cb4](https://github.com/blebox/blebox_uniapi/commit/eb72cb434eb132a18cf1c365ae5fc129640ad5f7))
38
+ * expose product on Box for HASS device model display ([#200](https://github.com/blebox/blebox_uniapi/issues/200)) ([7ff36de](https://github.com/blebox/blebox_uniapi/commit/7ff36deb0eaf60c69171716fba6309a40986ddcd))
39
+
40
+ ### Bug Fixes
41
+
42
+ * log caught API-call exceptions at debug instead of error ([#198](https://github.com/blebox/blebox_uniapi/issues/198)) ([f25183e](https://github.com/blebox/blebox_uniapi/commit/f25183e83db0a7ac8773861c588c5b64fca88e2c))
43
+
44
+ ## [2.5.5](https://github.com/blebox/blebox_uniapi/compare/v2.5.4...v2.5.5) (2026-06-09)
45
+
46
+ ### Features
47
+
48
+ * add support for CO2Sensor ([#195](https://github.com/blebox/blebox_uniapi/issues/195)) ([ac05dfc](https://github.com/blebox/blebox_uniapi/commit/ac05dfc05c62fcc8c5b29df1015195bab03da428))
49
+ * add voltage measurement support for switchBox ([#194](https://github.com/blebox/blebox_uniapi/issues/194)) ([964adf6](https://github.com/blebox/blebox_uniapi/commit/964adf632424807e2d40cc3128fa79d6e8e6050b))
50
+ * add is_calibrated property to Shutter and is_slider guard ([#193](https://github.com/blebox/blebox_uniapi/issues/193)) ([5f0be49](https://github.com/blebox/blebox_uniapi/commit/5f0be498f94ce7db49f3ba03b47fb2a7b88376f4))
51
+ * add reactive energy sensors for energyMeter ([#192](https://github.com/blebox/blebox_uniapi/issues/192)) ([19de0f5](https://github.com/blebox/blebox_uniapi/commit/19de0f5786b0e9a6696415dd606cf89be4d68396))
52
+
53
+ ## [2.5.4](https://github.com/blebox/blebox_uniapi/compare/v2.5.3...v2.5.4) (2026-05-25)
54
+
55
+ ### Features
56
+
57
+ * add OTA firmware update support via Update feature ([#191](https://github.com/blebox/blebox_uniapi/issues/191)) ([b3bfbf6](https://github.com/blebox/blebox_uniapi/commit/b3bfbf671335443294691ce72b719b57196b534d))
58
+ * add new ShutterBox control types and tilt properties ([#190](https://github.com/blebox/blebox_uniapi/issues/190)) ([a977239](https://github.com/blebox/blebox_uniapi/commit/a977239fbe233c880110b66dc58cb0cd75568fa6))
59
+ * add temperature sensors to thermoBox ([#189](https://github.com/blebox/blebox_uniapi/issues/189)) ([775510e](https://github.com/blebox/blebox_uniapi/commit/775510ec628994a4be8725bcf33a167da31e68f6))
60
+
61
+ ### Bug Fixes
62
+
63
+ * RGBWW brightness and channel ordering ([#188](https://github.com/blebox/blebox_uniapi/issues/188)) ([02251d9](https://github.com/blebox/blebox_uniapi/commit/02251d944fca3991a341bcd1fdcffdfda60435ff))
64
+ * color mode logic to restore last color value correctly ([#187](https://github.com/blebox/blebox_uniapi/issues/187)) ([dfbf3bd](https://github.com/blebox/blebox_uniapi/commit/dfbf3bd79c4bc8a0629cb48af2ec75a428ce0fd3))
65
+ * add sensor_id and name parameters to Open and Input binary sensor classes ([#186](https://github.com/blebox/blebox_uniapi/issues/186)) ([1c308d9](https://github.com/blebox/blebox_uniapi/commit/1c308d9263534efc12c2acc17f745ff6b125e45f))
66
+
67
+ ## [2.5.3](https://github.com/blebox/blebox_uniapi/compare/v2.5.2...v2.5.3) (2026-05-08)
68
+
69
+ ### Features
70
+
71
+ * add support for openSensor as both generic and binary sensor ([#184](https://github.com/blebox/blebox_uniapi/issues/184)) ([a4e0a64](https://github.com/blebox/blebox_uniapi/commit/a4e0a6437b1baecdfb6fb750166fd5861180c4a5))
72
+ * add index and name properties to sensors, switches and lights ([#185](https://github.com/blebox/blebox_uniapi/issues/185)) ([20faf7a](https://github.com/blebox/blebox_uniapi/commit/20faf7ad60600b3ff34af90a2bf1f21ed0163155))
73
+ * add support for inputSensor ([#183](https://github.com/blebox/blebox_uniapi/issues/183)) ([cb08d4a](https://github.com/blebox/blebox_uniapi/commit/cb08d4a8cf19df1d47d886b6f486975133d910e3))
74
+
75
+ ### Bug Fixes
76
+
77
+ * ensure sensible_on_value returns list for MONO mode ([#182](https://github.com/blebox/blebox_uniapi/issues/182)) ([bc3a78c](https://github.com/blebox/blebox_uniapi/commit/bc3a78ce11e7dad475b3be8b563757911fdfb8c2))
78
+
79
+ ## [2.5.2](https://github.com/blebox/blebox_uniapi/compare/v2.5.1...v2.5.2) (2026-04-24)
80
+
81
+ ### Features
82
+
83
+ * add is_position_inverted to expose position convention per device type ([#181](https://github.com/blebox/blebox_uniapi/issues/181)) ([be63c03](https://github.com/blebox/blebox_uniapi/commit/be63c035388d240867d1d94a3109974f0e5ab951))
84
+
85
+ ## 2.5.1 (2026-04-21)
86
+
87
+ * fix: multisensor current and energy sensor scales
88
+
89
+ ## 2.5.0 (2024-08-20)
90
+
91
+ * feature: expose sensor_id in sensors and alias in all features by @swistakm in https://github.com/blebox/blebox_uniapi/pull/176
92
+
93
+ ## 2.4.2 (2024-06-04)
94
+
95
+ * fix: add missing support for active power sensors on switchbox/switchboxd devices by @swistakm in https://github.com/blebox/blebox_uniapi/pull/175
96
+
97
+ ## 2.4.1 (2024-06-04)
98
+
99
+ * fix: rectify ambiguity around powerConsumption and wind sensor types
100
+
101
+ ## 2.4.0 (2024-06-03)
102
+
103
+ * Fix: Refactor sensor_factory by @Pastucha in https://github.com/blebox/blebox_uniapi/pull/163
104
+ * Order in BOX_TYPES by @Pastucha in https://github.com/blebox/blebox_uniapi/pull/164
105
+ * Feature: smart meter by @swistakm in https://github.com/blebox/blebox_uniapi/pull/168
106
+ * Smartmeter by @pvsti in https://github.com/blebox/blebox_uniapi/pull/170
107
+ * fix: resolve regressions in cover and climate due to jmespath introduction by @swistakm in https://github.com/blebox/blebox_uniapi/pull/173
108
+
109
+ ## 2.3.0 (2024-03-13)
110
+
111
+ * feat: add new methods to cover feature enabling handling of tilt open/close actions by @swistakm in https://github.com/blebox/blebox_uniapi/pull/154
112
+ * add support for flood sensing for multisensors as binary moisture sensor by @swistakm in https://github.com/blebox/blebox_uniapi/pull/153
113
+ * feat/fix: Add Ruff and Pre-commit Configuration, Resolve Undefined Name by @Pastucha in https://github.com/blebox/blebox_uniapi/pull/158
114
+ * gatebox and shutterbox improvements: by @swistakm in https://github.com/blebox/blebox_uniapi/pull/156
115
+ * BleBox Multisensor Illuminance Integration by @Pastucha in https://github.com/blebox/blebox_uniapi/pull/161
116
+
117
+ ## 2.2.2 (2024-02-07)
118
+
119
+ * fixed wind reading units to get proper raw m/s value (division by 10, see PR #150)
120
+
121
+ ## 2.2.1 (2024-01-26)
122
+
123
+ * fixed support for power measurement capabilities of switchBox and switchBoxD devices
124
+
125
+ ## 2.2.0 (2023-08-29)
126
+
127
+ * added last_reset to energy sensor class
128
+ * added BasicAuth support to http client
129
+
130
+ ## 2.1.4 (2023-01-03)
131
+
132
+ * added tilt position support for `cover.Shutter`
133
+ * added `Wind` for wind sensor of multisensors
134
+ * added `Energy` sensor class for power consumption tracking
135
+ * implementing `default_api_level` for
136
+ * dimmerBox
137
+ * wLightBox
138
+ * wLightBoxS
139
+
140
+ ## 2.1.3 (2022-10-27)
141
+
142
+ * thermoBox boost mode doesn't corrupt state
143
+
144
+ ## 2.1.2 (2022-10-17)
145
+
146
+ * fixed CCT, CCTx2 modes for wLightBox v1 & v2
147
+
148
+ ## 2.1.1 (2022-10-11)
149
+
150
+ * added support for thermoBox devices:
151
+ * added thermoBox config to `BOX_TYPE_CONFIG`
152
+ * `Climate` uses factory method implementation
153
+ * added test coverage
154
+
155
+ ## 2.1.0 (2022-08-05)
156
+
157
+ * added support for multiSensor API:
158
+ * `airQuality` moved to sensor module
159
+ * new binary_sensor module, introducing `Rain` class
160
+
161
+ ## 2.0.2 (2022-07-06)
162
+
163
+ * added `query_string` property in `Button` class
164
+ * fixed test assertions after changes in error raised ValueError
165
+
166
+ ## 2.0.1 (2022-06-01)
167
+
168
+ * used `ValueError` type instead of `BadOnValueError` in methods:
169
+ * evaluate_brightness_from_rgb
170
+ * apply_brightness
171
+ * normalise_elements_of_rgb
172
+ * _set_last_on_value
173
+ * async_on
174
+
175
+ ## 2.0.0 (2022-06-21)
176
+
177
+ * extended support for color modes in wLightBox devices
178
+ * initial support for tvLiftBox device
179
+ * major backward-incompatible architectural changes to enable dynamic configuration of devices
180
+ * removed products.py module and replaced with factory method on Box class
181
+ * general overhaul of public interfaces
182
+
183
+ ## 1.3.3 (2021-05-12)
184
+
185
+ * fix support for wLightBoxS with wLightBox API
186
+ * fix state detection in gateBox
187
+
188
+ ## 1.3.2 (2020-04-2)
189
+
190
+ * use proper module-level logger by default
191
+ * fix formatting
192
+
193
+ ## 1.3.1 (2020-04-2)
194
+
195
+ * never skip command requests
196
+ * improve error messages
197
+
198
+ ## 1.2.0 (2020-03-30)
199
+
200
+ * expose device info
201
+ * always add ip/port in connection errors
202
+ * fixed gateController support
203
+ * support for sauna min/max temp
204
+
205
+ ## 1.1.0 (2020-03-24)
206
+
207
+ * fix bad wLightBox API path
208
+ * wrap api calls in semaphore (to serialize reqests to each box)
209
+ * throttle updates to 2/second (to avoid unnecessary requests)
210
+ * rework error handling and hierarchy (for cleaner usage)
211
+ * use actual device name (to help recognize the device)
212
+ * handle asyncio.TimeoutError (to handle timeout-related errors nicely)
213
+ * properly re-raise exceptions (to avoid lengthy call stacktraces)
214
+ * rename wLightBoxS feature to "brightness"
215
+
216
+ ## 1.1.0 (2020-03-24)
217
+
218
+ * fix switchBox support
219
+ * fix minimum position handling
220
+ * drop Python 3.6 support (still may work)
221
+ * misc fixes, cleanup and increased test coverage
222
+
223
+ ## 1.0.0 (2020-03-24)
224
+
225
+ * Fixed wLightBox issues
226
+ * Fixed wLightBoxS issues
227
+ * Fixed shutterBox issues
228
+ * Handle unknown shutterBox position
229
+ * Improved error handling + lots of new diagnostics
230
+ * Increased tests and test coverage (almost 100%)
231
+ * Lots of rework
232
+
233
+ ## 0.1.1 (2020-03-15)
234
+
235
+ * Fixed switchBox support (newer API versions)
236
+
237
+ ## 0.1.0 (2020-03-10)
238
+
239
+ * First release on PyPI.
@@ -101,10 +101,14 @@ Before you submit a pull request, check that it meets these guidelines:
101
101
  1. The pull request should include tests.
102
102
  2. If the pull request adds functionality, the docs should be updated. Put
103
103
  your new functionality into a function with a docstring, and add the
104
- feature to the list in README.rst.
105
- 3. The pull request should work for Python 3.6, 3.7 and 3.8, and for PyPy. Check
106
- https://travis-ci.com/gadgetmobile/blebox_uniapi/pull_requests
107
- and make sure that the tests pass for all supported Python versions.
104
+ feature to the list in README.md.
105
+ 3. The pull request should work for Python 3.9, 3.10 and 3.11.
106
+ 4. The title follows `Conventional Commits`_: ``fix:`` (patch), ``feat:``
107
+ (minor), ``feat!:`` (major). It becomes the CHANGELOG.md entry. Titles
108
+ without these prefixes (``docs:``, ``chore:``, ``ci:``, ...) or with no
109
+ prefix are left out of the changelog.
110
+
111
+ .. _Conventional Commits: https://www.conventionalcommits.org/
108
112
 
109
113
  Tips
110
114
  ----
@@ -117,16 +121,8 @@ $ pytest tests.test_blebox_uniapi
117
121
  Deploying
118
122
  ---------
119
123
 
120
- A reminder for the maintainers on how to deploy.
121
- Make sure all your changes are committed (including an entry in HISTORY.rst).
122
- Then run::
123
-
124
- $ bump2version patch # possible: major / minor / patch
125
- $ git push --follow-tags
126
-
127
- bump2version bumps the version in setup.py, blebox_uniapi/__init__.py and
128
- setup.cfg, commits the change and creates a matching git tag (e.g. v2.6.0).
129
- Pushing the tag triggers the "Publish to PyPI" GitHub Actions workflow
130
- (.github/workflows/release.yml), which first runs lint + tests, then builds and
131
- uploads to PyPI via Trusted Publishing (OIDC) from the blebox/blebox_uniapi repo.
132
- The publish step only runs if the tests pass.
124
+ Squash-merge pull requests, fixing the title in the commit message if needed.
125
+ release-please keeps an open "chore(master): release X.Y.Z" pull request with
126
+ the version bump and CHANGELOG.md entry. Merging it creates the tag and GitHub
127
+ release, runs the tests and publishes to PyPI. Pushing a tag by hand releases
128
+ nothing.
@@ -1,7 +1,7 @@
1
1
  include CONTRIBUTING.rst
2
- include HISTORY.rst
2
+ include CHANGELOG.md
3
3
  include LICENSE
4
- include README.rst
4
+ include README.md
5
5
 
6
6
 
7
7
  recursive-exclude * __pycache__
@@ -0,0 +1,300 @@
1
+ Metadata-Version: 2.4
2
+ Name: blebox_uniapi
3
+ Version: 2.5.10
4
+ Summary: Python API for accessing BleBox smart home devices
5
+ Home-page: https://github.com/blebox/blebox_uniapi
6
+ Author: BleBox
7
+ Author-email: opensource@blebox.eu
8
+ License: Apache Software License 2.0
9
+ Keywords: blebox_uniapi
10
+ Classifier: Development Status :: 2 - Pre-Alpha
11
+ Classifier: Intended Audience :: Developers
12
+ Classifier: License :: OSI Approved :: Apache Software License
13
+ Classifier: Natural Language :: English
14
+ Classifier: Programming Language :: Python :: 3.9
15
+ Classifier: Programming Language :: Python :: 3.10
16
+ Classifier: Programming Language :: Python :: 3.11
17
+ Requires-Python: >=3.9
18
+ Description-Content-Type: text/markdown
19
+ License-File: LICENSE
20
+ Requires-Dist: aiohttp>=3.10
21
+ Requires-Dist: jmespath>1.0.0
22
+ Dynamic: author
23
+ Dynamic: author-email
24
+ Dynamic: classifier
25
+ Dynamic: description
26
+ Dynamic: description-content-type
27
+ Dynamic: home-page
28
+ Dynamic: keywords
29
+ Dynamic: license
30
+ Dynamic: license-file
31
+ Dynamic: requires-dist
32
+ Dynamic: requires-python
33
+ Dynamic: summary
34
+
35
+ # BleBox Python UniAPI
36
+
37
+ [![PyPI](https://img.shields.io/pypi/v/blebox_uniapi.svg)](https://pypi.python.org/pypi/blebox_uniapi)
38
+
39
+ Python API for accessing BleBox smart home devices
40
+
41
+ * Free software: Apache Software License 2.0
42
+ * Documentation: https://blebox-uniapi.readthedocs.io.
43
+
44
+ ## Features
45
+
46
+ * supports [11 BleBox smart home devices]
47
+ * contains functional/integration tests
48
+ * every device supports at least minimum functionality for most common automation needs
49
+ * insight of integration level are accesible from file [box_types.py](blebox_uniapi/box_types.py#L43)
50
+
51
+ (devices with apiLevel lower than defined in BOX_TYPE_CONF will not be supported but higher will)
52
+
53
+ Contributions are welcome!
54
+
55
+ ## Credits
56
+
57
+ [Cookiecutter]: https://github.com/audreyr/cookiecutter
58
+ [audreyr/cookiecutter-pypackage]: https://github.com/audreyr/cookiecutter-pypackage
59
+ [11 BleBox smart home devices]: https://blebox.eu/produkty/?lang=en
60
+
61
+
62
+ # Changelog
63
+
64
+ ## [2.5.10](https://github.com/blebox/blebox_uniapi/compare/v2.5.9...v2.5.10) (2026-11-09)
65
+
66
+
67
+ ### Bug Fixes
68
+
69
+ * retry once when device connection times out ([#208](https://github.com/blebox/blebox_uniapi/issues/208)) ([16e34cf](https://github.com/blebox/blebox_uniapi/commit/16e34cf62d25502aab9922db82d78237e08bd53b))
70
+
71
+ ## [2.5.9](https://github.com/blebox/blebox_uniapi/compare/v2.5.8...v2.5.9) (2026-10-18)
72
+
73
+
74
+ ### Bug Fixes
75
+
76
+ * tankSensor liquidHeight and volume are reported in mm and ml ([#206](https://github.com/blebox/blebox_uniapi/issues/206)) ([7512f43](https://github.com/blebox/blebox_uniapi/commit/7512f4394c2452c77c7d65e9c2d2c645a58019a3))
77
+
78
+ ## [2.5.8](https://github.com/blebox/blebox_uniapi/compare/v2.5.7...v2.5.8) (2026-10-01)
79
+
80
+ ### Features
81
+
82
+ * support tankSensor ([#204](https://github.com/blebox/blebox_uniapi/issues/204)) ([2f93dac](https://github.com/blebox/blebox_uniapi/commit/2f93dac7ad020cd504921e7f5c710e6a4549ed21))
83
+
84
+ ### Bug Fixes
85
+
86
+ * query both info endpoints in OTA check ([#203](https://github.com/blebox/blebox_uniapi/issues/203)) ([a6683c4](https://github.com/blebox/blebox_uniapi/commit/a6683c4cf92e932278d2ed653bae05bc9b56230b))
87
+
88
+ ## [2.5.7](https://github.com/blebox/blebox_uniapi/compare/v2.5.6...v2.5.7) (2026-08-12)
89
+
90
+ ### Bug Fixes
91
+
92
+ * handle sensor state and thermoBox safety off ([#202](https://github.com/blebox/blebox_uniapi/issues/202)) ([1321ce5](https://github.com/blebox/blebox_uniapi/commit/1321ce505fa3864276a5408ab6b30e8c6d45e9fa))
93
+
94
+ ## [2.5.6](https://github.com/blebox/blebox_uniapi/compare/v2.5.5...v2.5.6) (2026-08-06)
95
+
96
+ ### Features
97
+
98
+ * expose gateBox extra button output as a button entity ([#201](https://github.com/blebox/blebox_uniapi/issues/201)) ([eb72cb4](https://github.com/blebox/blebox_uniapi/commit/eb72cb434eb132a18cf1c365ae5fc129640ad5f7))
99
+ * expose product on Box for HASS device model display ([#200](https://github.com/blebox/blebox_uniapi/issues/200)) ([7ff36de](https://github.com/blebox/blebox_uniapi/commit/7ff36deb0eaf60c69171716fba6309a40986ddcd))
100
+
101
+ ### Bug Fixes
102
+
103
+ * log caught API-call exceptions at debug instead of error ([#198](https://github.com/blebox/blebox_uniapi/issues/198)) ([f25183e](https://github.com/blebox/blebox_uniapi/commit/f25183e83db0a7ac8773861c588c5b64fca88e2c))
104
+
105
+ ## [2.5.5](https://github.com/blebox/blebox_uniapi/compare/v2.5.4...v2.5.5) (2026-06-09)
106
+
107
+ ### Features
108
+
109
+ * add support for CO2Sensor ([#195](https://github.com/blebox/blebox_uniapi/issues/195)) ([ac05dfc](https://github.com/blebox/blebox_uniapi/commit/ac05dfc05c62fcc8c5b29df1015195bab03da428))
110
+ * add voltage measurement support for switchBox ([#194](https://github.com/blebox/blebox_uniapi/issues/194)) ([964adf6](https://github.com/blebox/blebox_uniapi/commit/964adf632424807e2d40cc3128fa79d6e8e6050b))
111
+ * add is_calibrated property to Shutter and is_slider guard ([#193](https://github.com/blebox/blebox_uniapi/issues/193)) ([5f0be49](https://github.com/blebox/blebox_uniapi/commit/5f0be498f94ce7db49f3ba03b47fb2a7b88376f4))
112
+ * add reactive energy sensors for energyMeter ([#192](https://github.com/blebox/blebox_uniapi/issues/192)) ([19de0f5](https://github.com/blebox/blebox_uniapi/commit/19de0f5786b0e9a6696415dd606cf89be4d68396))
113
+
114
+ ## [2.5.4](https://github.com/blebox/blebox_uniapi/compare/v2.5.3...v2.5.4) (2026-05-25)
115
+
116
+ ### Features
117
+
118
+ * add OTA firmware update support via Update feature ([#191](https://github.com/blebox/blebox_uniapi/issues/191)) ([b3bfbf6](https://github.com/blebox/blebox_uniapi/commit/b3bfbf671335443294691ce72b719b57196b534d))
119
+ * add new ShutterBox control types and tilt properties ([#190](https://github.com/blebox/blebox_uniapi/issues/190)) ([a977239](https://github.com/blebox/blebox_uniapi/commit/a977239fbe233c880110b66dc58cb0cd75568fa6))
120
+ * add temperature sensors to thermoBox ([#189](https://github.com/blebox/blebox_uniapi/issues/189)) ([775510e](https://github.com/blebox/blebox_uniapi/commit/775510ec628994a4be8725bcf33a167da31e68f6))
121
+
122
+ ### Bug Fixes
123
+
124
+ * RGBWW brightness and channel ordering ([#188](https://github.com/blebox/blebox_uniapi/issues/188)) ([02251d9](https://github.com/blebox/blebox_uniapi/commit/02251d944fca3991a341bcd1fdcffdfda60435ff))
125
+ * color mode logic to restore last color value correctly ([#187](https://github.com/blebox/blebox_uniapi/issues/187)) ([dfbf3bd](https://github.com/blebox/blebox_uniapi/commit/dfbf3bd79c4bc8a0629cb48af2ec75a428ce0fd3))
126
+ * add sensor_id and name parameters to Open and Input binary sensor classes ([#186](https://github.com/blebox/blebox_uniapi/issues/186)) ([1c308d9](https://github.com/blebox/blebox_uniapi/commit/1c308d9263534efc12c2acc17f745ff6b125e45f))
127
+
128
+ ## [2.5.3](https://github.com/blebox/blebox_uniapi/compare/v2.5.2...v2.5.3) (2026-05-08)
129
+
130
+ ### Features
131
+
132
+ * add support for openSensor as both generic and binary sensor ([#184](https://github.com/blebox/blebox_uniapi/issues/184)) ([a4e0a64](https://github.com/blebox/blebox_uniapi/commit/a4e0a6437b1baecdfb6fb750166fd5861180c4a5))
133
+ * add index and name properties to sensors, switches and lights ([#185](https://github.com/blebox/blebox_uniapi/issues/185)) ([20faf7a](https://github.com/blebox/blebox_uniapi/commit/20faf7ad60600b3ff34af90a2bf1f21ed0163155))
134
+ * add support for inputSensor ([#183](https://github.com/blebox/blebox_uniapi/issues/183)) ([cb08d4a](https://github.com/blebox/blebox_uniapi/commit/cb08d4a8cf19df1d47d886b6f486975133d910e3))
135
+
136
+ ### Bug Fixes
137
+
138
+ * ensure sensible_on_value returns list for MONO mode ([#182](https://github.com/blebox/blebox_uniapi/issues/182)) ([bc3a78c](https://github.com/blebox/blebox_uniapi/commit/bc3a78ce11e7dad475b3be8b563757911fdfb8c2))
139
+
140
+ ## [2.5.2](https://github.com/blebox/blebox_uniapi/compare/v2.5.1...v2.5.2) (2026-04-24)
141
+
142
+ ### Features
143
+
144
+ * add is_position_inverted to expose position convention per device type ([#181](https://github.com/blebox/blebox_uniapi/issues/181)) ([be63c03](https://github.com/blebox/blebox_uniapi/commit/be63c035388d240867d1d94a3109974f0e5ab951))
145
+
146
+ ## 2.5.1 (2026-04-21)
147
+
148
+ * fix: multisensor current and energy sensor scales
149
+
150
+ ## 2.5.0 (2024-08-20)
151
+
152
+ * feature: expose sensor_id in sensors and alias in all features by @swistakm in https://github.com/blebox/blebox_uniapi/pull/176
153
+
154
+ ## 2.4.2 (2024-06-04)
155
+
156
+ * fix: add missing support for active power sensors on switchbox/switchboxd devices by @swistakm in https://github.com/blebox/blebox_uniapi/pull/175
157
+
158
+ ## 2.4.1 (2024-06-04)
159
+
160
+ * fix: rectify ambiguity around powerConsumption and wind sensor types
161
+
162
+ ## 2.4.0 (2024-06-03)
163
+
164
+ * Fix: Refactor sensor_factory by @Pastucha in https://github.com/blebox/blebox_uniapi/pull/163
165
+ * Order in BOX_TYPES by @Pastucha in https://github.com/blebox/blebox_uniapi/pull/164
166
+ * Feature: smart meter by @swistakm in https://github.com/blebox/blebox_uniapi/pull/168
167
+ * Smartmeter by @pvsti in https://github.com/blebox/blebox_uniapi/pull/170
168
+ * fix: resolve regressions in cover and climate due to jmespath introduction by @swistakm in https://github.com/blebox/blebox_uniapi/pull/173
169
+
170
+ ## 2.3.0 (2024-03-13)
171
+
172
+ * feat: add new methods to cover feature enabling handling of tilt open/close actions by @swistakm in https://github.com/blebox/blebox_uniapi/pull/154
173
+ * add support for flood sensing for multisensors as binary moisture sensor by @swistakm in https://github.com/blebox/blebox_uniapi/pull/153
174
+ * feat/fix: Add Ruff and Pre-commit Configuration, Resolve Undefined Name by @Pastucha in https://github.com/blebox/blebox_uniapi/pull/158
175
+ * gatebox and shutterbox improvements: by @swistakm in https://github.com/blebox/blebox_uniapi/pull/156
176
+ * BleBox Multisensor Illuminance Integration by @Pastucha in https://github.com/blebox/blebox_uniapi/pull/161
177
+
178
+ ## 2.2.2 (2024-02-07)
179
+
180
+ * fixed wind reading units to get proper raw m/s value (division by 10, see PR #150)
181
+
182
+ ## 2.2.1 (2024-01-26)
183
+
184
+ * fixed support for power measurement capabilities of switchBox and switchBoxD devices
185
+
186
+ ## 2.2.0 (2023-08-29)
187
+
188
+ * added last_reset to energy sensor class
189
+ * added BasicAuth support to http client
190
+
191
+ ## 2.1.4 (2023-01-03)
192
+
193
+ * added tilt position support for `cover.Shutter`
194
+ * added `Wind` for wind sensor of multisensors
195
+ * added `Energy` sensor class for power consumption tracking
196
+ * implementing `default_api_level` for
197
+ * dimmerBox
198
+ * wLightBox
199
+ * wLightBoxS
200
+
201
+ ## 2.1.3 (2022-10-27)
202
+
203
+ * thermoBox boost mode doesn't corrupt state
204
+
205
+ ## 2.1.2 (2022-10-17)
206
+
207
+ * fixed CCT, CCTx2 modes for wLightBox v1 & v2
208
+
209
+ ## 2.1.1 (2022-10-11)
210
+
211
+ * added support for thermoBox devices:
212
+ * added thermoBox config to `BOX_TYPE_CONFIG`
213
+ * `Climate` uses factory method implementation
214
+ * added test coverage
215
+
216
+ ## 2.1.0 (2022-08-05)
217
+
218
+ * added support for multiSensor API:
219
+ * `airQuality` moved to sensor module
220
+ * new binary_sensor module, introducing `Rain` class
221
+
222
+ ## 2.0.2 (2022-07-06)
223
+
224
+ * added `query_string` property in `Button` class
225
+ * fixed test assertions after changes in error raised ValueError
226
+
227
+ ## 2.0.1 (2022-06-01)
228
+
229
+ * used `ValueError` type instead of `BadOnValueError` in methods:
230
+ * evaluate_brightness_from_rgb
231
+ * apply_brightness
232
+ * normalise_elements_of_rgb
233
+ * _set_last_on_value
234
+ * async_on
235
+
236
+ ## 2.0.0 (2022-06-21)
237
+
238
+ * extended support for color modes in wLightBox devices
239
+ * initial support for tvLiftBox device
240
+ * major backward-incompatible architectural changes to enable dynamic configuration of devices
241
+ * removed products.py module and replaced with factory method on Box class
242
+ * general overhaul of public interfaces
243
+
244
+ ## 1.3.3 (2021-05-12)
245
+
246
+ * fix support for wLightBoxS with wLightBox API
247
+ * fix state detection in gateBox
248
+
249
+ ## 1.3.2 (2020-04-2)
250
+
251
+ * use proper module-level logger by default
252
+ * fix formatting
253
+
254
+ ## 1.3.1 (2020-04-2)
255
+
256
+ * never skip command requests
257
+ * improve error messages
258
+
259
+ ## 1.2.0 (2020-03-30)
260
+
261
+ * expose device info
262
+ * always add ip/port in connection errors
263
+ * fixed gateController support
264
+ * support for sauna min/max temp
265
+
266
+ ## 1.1.0 (2020-03-24)
267
+
268
+ * fix bad wLightBox API path
269
+ * wrap api calls in semaphore (to serialize reqests to each box)
270
+ * throttle updates to 2/second (to avoid unnecessary requests)
271
+ * rework error handling and hierarchy (for cleaner usage)
272
+ * use actual device name (to help recognize the device)
273
+ * handle asyncio.TimeoutError (to handle timeout-related errors nicely)
274
+ * properly re-raise exceptions (to avoid lengthy call stacktraces)
275
+ * rename wLightBoxS feature to "brightness"
276
+
277
+ ## 1.1.0 (2020-03-24)
278
+
279
+ * fix switchBox support
280
+ * fix minimum position handling
281
+ * drop Python 3.6 support (still may work)
282
+ * misc fixes, cleanup and increased test coverage
283
+
284
+ ## 1.0.0 (2020-03-24)
285
+
286
+ * Fixed wLightBox issues
287
+ * Fixed wLightBoxS issues
288
+ * Fixed shutterBox issues
289
+ * Handle unknown shutterBox position
290
+ * Improved error handling + lots of new diagnostics
291
+ * Increased tests and test coverage (almost 100%)
292
+ * Lots of rework
293
+
294
+ ## 0.1.1 (2020-03-15)
295
+
296
+ * Fixed switchBox support (newer API versions)
297
+
298
+ ## 0.1.0 (2020-03-10)
299
+
300
+ * First release on PyPI.
@@ -0,0 +1,25 @@
1
+ # BleBox Python UniAPI
2
+
3
+ [![PyPI](https://img.shields.io/pypi/v/blebox_uniapi.svg)](https://pypi.python.org/pypi/blebox_uniapi)
4
+
5
+ Python API for accessing BleBox smart home devices
6
+
7
+ * Free software: Apache Software License 2.0
8
+ * Documentation: https://blebox-uniapi.readthedocs.io.
9
+
10
+ ## Features
11
+
12
+ * supports [11 BleBox smart home devices]
13
+ * contains functional/integration tests
14
+ * every device supports at least minimum functionality for most common automation needs
15
+ * insight of integration level are accesible from file [box_types.py](blebox_uniapi/box_types.py#L43)
16
+
17
+ (devices with apiLevel lower than defined in BOX_TYPE_CONF will not be supported but higher will)
18
+
19
+ Contributions are welcome!
20
+
21
+ ## Credits
22
+
23
+ [Cookiecutter]: https://github.com/audreyr/cookiecutter
24
+ [audreyr/cookiecutter-pypackage]: https://github.com/audreyr/cookiecutter-pypackage
25
+ [11 BleBox smart home devices]: https://blebox.eu/produkty/?lang=en
@@ -2,4 +2,4 @@
2
2
 
3
3
  __author__ = """BleBox"""
4
4
  __email__ = "opensource@blebox.eu"
5
- __version__ = "2.5.8"
5
+ __version__ = "2.5.10"
@@ -209,9 +209,9 @@ class BaseSensor(Feature):
209
209
  @SensorFactory.register("co2", unit="ppm")
210
210
  @SensorFactory.register("co2Definition", unit="")
211
211
  @SensorFactory.register("gaugePressure", unit="mbar")
212
- @SensorFactory.register("liquidHeight", unit="cm")
212
+ @SensorFactory.register("liquidHeight", unit="cm", scale=10)
213
213
  @SensorFactory.register("fillLevel", unit="percentage", scale=10)
214
- @SensorFactory.register("volume", unit="L")
214
+ @SensorFactory.register("volume", unit="L", scale=1000)
215
215
  class GenericSensor(BaseSensor):
216
216
  def __init__(
217
217
  # base sensor params