====================
BleBox Python UniAPI
====================
.. image:: https://img.shields.io/pypi/v/blebox_uniapi.svg
:target: https://pypi.python.org/pypi/blebox_uniapi
Python API for accessing BleBox smart home devices
* Free software: Apache Software License 2.0
* Documentation: https://blebox-uniapi.readthedocs.io.
Features
--------
* supports `11 BleBox smart home devices`_
* contains functional/integration tests
* every device supports at least minimum functionality for most common automation needs
* insight of integration level are accesible from file `box_types.py <blebox_uniapi/box_types.py#L43>`_
(devices with apiLevel lower than defined in BOX_TYPE_CONF will not be supported but higher will)
Contributions are welcome!
Credits
-------
.. _Cookiecutter: https://github.com/audreyr/cookiecutter
.. _`audreyr/cookiecutter-pypackage`: https://github.com/audreyr/cookiecutter-pypackage
.. _`11 BleBox smart home devices`: https://blebox.eu/produkty/?lang=en
=======
History
=======
2.5.0 (2024-08-20)
------------------
* feature: expose sensor_id in sensors and alias in all features by @swistakm in https://github.com/blebox/blebox_uniapi/pull/176
2.4.2 (2024-06-04)
------------------
* fix: add missing support for active power sensors on switchbox/switchboxd devices by @swistakm in https://github.com/blebox/blebox_uniapi/pull/175
2.4.1 (2024-06-04)
------------------
* fix: rectify ambiguity around powerConsumption and wind sensor types
2.4.0 (2024-06-03)
------------------
* Fix: Refactor sensor_factory by @Pastucha in https://github.com/blebox/blebox_uniapi/pull/163
* Order in BOX_TYPES by @Pastucha in https://github.com/blebox/blebox_uniapi/pull/164
* Feature: smart meter by @swistakm in https://github.com/blebox/blebox_uniapi/pull/168
* Smartmeter by @pvsti in https://github.com/blebox/blebox_uniapi/pull/170
* fix: resolve regressions in cover and climate due to jmespath introduction by @swistakm in https://github.com/blebox/blebox_uniapi/pull/173
2.3.0 (2024-03-13)
------------------
* 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
* add support for flood sensing for multisensors as binary moisture sensor by @swistakm in https://github.com/blebox/blebox_uniapi/pull/153
* feat/fix: Add Ruff and Pre-commit Configuration, Resolve Undefined Name by @Pastucha in https://github.com/blebox/blebox_uniapi/pull/158
* gatebox and shutterbox improvements: by @swistakm in https://github.com/blebox/blebox_uniapi/pull/156
* BleBox Multisensor Illuminance Integration by @Pastucha in https://github.com/blebox/blebox_uniapi/pull/161
2.2.2 (2024-02-07)
------------------
* fixed wind reading units to get proper raw m/s value (division by 10, see PR #150)
2.2.1 (2024-01-26)
------------------
* fixed support for power measurement capabilities of switchBox and switchBoxD devices
2.2.0 (2023-08-29)
------------------
* added last_reset to energy sensor class
* added BasicAuth support to http client
2.1.4 (2023-01-03)
------------------
* added tilt position support for :code:`cover.Shutter`
* added :code:`Wind` for wind sensor of multisensors
* added :code:`Energy` sensor class for power consumption tracking
* implementing :code:`default_api_level` for
* dimmerBox
* wLightBox
* wLightBoxS
2.1.3 (2022-10-27)
------------------
* thermoBox boost mode doesn't corrupt state
2.1.2 (2022-10-17)
------------------
* fixed CCT, CCTx2 modes for wLightBox v1 & v2
2.1.1 (2022-10-11)
------------------
* added support for thermoBox devices:
* added thermoBox config to :code:`BOX_TYPE_CONFIG`
* :code:`Climate` uses factory method implementation
* added test coverage
2.1.0 (2022-08-05)
------------------
* added support for multiSensor API:
* :code:`airQuality` moved to sensor module
* new binary_sensor module, introducing :code:`Rain` class
2.0.2 (2022-07-06)
------------------
* added :code:`query_string` property in :code:`Button` class
* fixed test assertions after changes in error raised ValueError
2.0.1 (2022-06-01)
------------------
* used :code:`ValueError` type instead of :code:`BadOnValueError` in methods:
* evaluate_brightness_from_rgb
* apply_brightness
* normalise_elements_of_rgb
* _set_last_on_value
* async_on
2.0.0 (2022-06-21)
------------------
* extended support for color modes in wLightBox devices
* initial support for tvLiftBox device
* major backward-incompatible architectural changes to enable dynamic configuration of devices
* removed products.py module and replaced with factory method on Box class
* general overhaul of public interfaces
1.3.3 (2021-05-12)
------------------
* fix support for wLightBoxS with wLightBox API
* fix state detection in gateBox
1.3.2 (2020-04-2)
------------------
* use proper module-level logger by default
* fix formatting
1.3.1 (2020-04-2)
------------------
* never skip command requests
* improve error messages
1.2.0 (2020-03-30)
------------------
* expose device info
* always add ip/port in connection errors
* fixed gateController support
* support for sauna min/max temp
1.1.0 (2020-03-24)
------------------
* fix bad wLightBox API path
* wrap api calls in semaphore (to serialize reqests to each box)
* throttle updates to 2/second (to avoid unnecessary requests)
* rework error handling and hierarchy (for cleaner usage)
* use actual device name (to help recognize the device)
* handle asyncio.TimeoutError (to handle timeout-related errors nicely)
* properly re-raise exceptions (to avoid lengthy call stacktraces)
* rename wLightBoxS feature to "brightness"
1.1.0 (2020-03-24)
------------------
* fix switchBox support
* fix minimum position handling
* drop Python 3.6 support (still may work)
* misc fixes, cleanup and increased test coverage
1.0.0 (2020-03-24)
------------------
* Fixed wLightBox issues
* Fixed wLightBoxS issues
* Fixed shutterBox issues
* Handle unknown shutterBox position
* Improved error handling + lots of new diagnostics
* Increased tests and test coverage (almost 100%)
* Lots of rework
0.1.1 (2020-03-15)
------------------
* Fixed switchBox support (newer API versions)
0.1.0 (2020-03-10)
------------------
* First release on PyPI.
Raw data
{
"_id": null,
"home_page": "https://github.com/blebox/blebox_uniapi",
"name": "blebox-uniapi",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.9",
"maintainer_email": null,
"keywords": "blebox_uniapi",
"author": "BleBox",
"author_email": "opensource@blebox.eu",
"download_url": "https://files.pythonhosted.org/packages/2a/21/e4b93f2edc766ca9ae90353091e23403b7415edc0f92ff016fd1d055c5f3/blebox_uniapi-2.5.0.tar.gz",
"platform": null,
"description": "====================\nBleBox Python UniAPI\n====================\n\n.. image:: https://img.shields.io/pypi/v/blebox_uniapi.svg\n :target: https://pypi.python.org/pypi/blebox_uniapi\n\nPython API for accessing BleBox smart home devices\n\n\n* Free software: Apache Software License 2.0\n* Documentation: https://blebox-uniapi.readthedocs.io.\n\n\nFeatures\n--------\n\n* supports `11 BleBox smart home devices`_\n* contains functional/integration tests\n* every device supports at least minimum functionality for most common automation needs\n* insight of integration level are accesible from file `box_types.py <blebox_uniapi/box_types.py#L43>`_\n\n (devices with apiLevel lower than defined in BOX_TYPE_CONF will not be supported but higher will)\n\n\nContributions are welcome!\n\nCredits\n-------\n\n.. _Cookiecutter: https://github.com/audreyr/cookiecutter\n.. _`audreyr/cookiecutter-pypackage`: https://github.com/audreyr/cookiecutter-pypackage\n.. _`11 BleBox smart home devices`: https://blebox.eu/produkty/?lang=en\n\n\n=======\nHistory\n=======\n2.5.0 (2024-08-20)\n------------------\n* feature: expose sensor_id in sensors and alias in all features by @swistakm in https://github.com/blebox/blebox_uniapi/pull/176\n\n2.4.2 (2024-06-04)\n------------------\n* fix: add missing support for active power sensors on switchbox/switchboxd devices by @swistakm in https://github.com/blebox/blebox_uniapi/pull/175\n\n2.4.1 (2024-06-04)\n------------------\n* fix: rectify ambiguity around powerConsumption and wind sensor types\n\n2.4.0 (2024-06-03)\n------------------\n* Fix: Refactor sensor_factory by @Pastucha in https://github.com/blebox/blebox_uniapi/pull/163\n* Order in BOX_TYPES by @Pastucha in https://github.com/blebox/blebox_uniapi/pull/164\n* Feature: smart meter by @swistakm in https://github.com/blebox/blebox_uniapi/pull/168\n* Smartmeter by @pvsti in https://github.com/blebox/blebox_uniapi/pull/170\n* fix: resolve regressions in cover and climate due to jmespath introduction by @swistakm in https://github.com/blebox/blebox_uniapi/pull/173\n\n2.3.0 (2024-03-13)\n------------------\n* 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\n* add support for flood sensing for multisensors as binary moisture sensor by @swistakm in https://github.com/blebox/blebox_uniapi/pull/153\n* feat/fix: Add Ruff and Pre-commit Configuration, Resolve Undefined Name by @Pastucha in https://github.com/blebox/blebox_uniapi/pull/158\n* gatebox and shutterbox improvements: by @swistakm in https://github.com/blebox/blebox_uniapi/pull/156\n* BleBox Multisensor Illuminance Integration by @Pastucha in https://github.com/blebox/blebox_uniapi/pull/161\n\n2.2.2 (2024-02-07)\n------------------\n* fixed wind reading units to get proper raw m/s value (division by 10, see PR #150)\n\n\n2.2.1 (2024-01-26)\n------------------\n* fixed support for power measurement capabilities of switchBox and switchBoxD devices\n\n2.2.0 (2023-08-29)\n------------------\n* added last_reset to energy sensor class\n* added BasicAuth support to http client\n\n2.1.4 (2023-01-03)\n------------------\n* added tilt position support for :code:`cover.Shutter`\n* added :code:`Wind` for wind sensor of multisensors\n* added :code:`Energy` sensor class for power consumption tracking\n* implementing :code:`default_api_level` for\n * dimmerBox\n * wLightBox\n * wLightBoxS\n\n2.1.3 (2022-10-27)\n------------------\n* thermoBox boost mode doesn't corrupt state\n\n2.1.2 (2022-10-17)\n------------------\n\n* fixed CCT, CCTx2 modes for wLightBox v1 & v2\n\n2.1.1 (2022-10-11)\n------------------\n* added support for thermoBox devices:\n * added thermoBox config to :code:`BOX_TYPE_CONFIG`\n * :code:`Climate` uses factory method implementation\n * added test coverage\n\n\n2.1.0 (2022-08-05)\n------------------\n* added support for multiSensor API:\n * :code:`airQuality` moved to sensor module\n * new binary_sensor module, introducing :code:`Rain` class\n\n\n2.0.2 (2022-07-06)\n------------------\n* added :code:`query_string` property in :code:`Button` class\n* fixed test assertions after changes in error raised ValueError\n\n2.0.1 (2022-06-01)\n------------------\n* used :code:`ValueError` type instead of :code:`BadOnValueError` in methods:\n\n * evaluate_brightness_from_rgb\n * apply_brightness\n * normalise_elements_of_rgb\n * _set_last_on_value\n * async_on\n\n2.0.0 (2022-06-21)\n------------------\n\n* extended support for color modes in wLightBox devices\n* initial support for tvLiftBox device\n* major backward-incompatible architectural changes to enable dynamic configuration of devices\n* removed products.py module and replaced with factory method on Box class\n* general overhaul of public interfaces\n\n1.3.3 (2021-05-12)\n------------------\n\n* fix support for wLightBoxS with wLightBox API\n* fix state detection in gateBox\n\n1.3.2 (2020-04-2)\n------------------\n\n* use proper module-level logger by default\n* fix formatting\n\n1.3.1 (2020-04-2)\n------------------\n\n* never skip command requests\n* improve error messages\n\n1.2.0 (2020-03-30)\n------------------\n\n* expose device info\n* always add ip/port in connection errors\n* fixed gateController support\n* support for sauna min/max temp\n\n1.1.0 (2020-03-24)\n------------------\n\n* fix bad wLightBox API path\n* wrap api calls in semaphore (to serialize reqests to each box)\n* throttle updates to 2/second (to avoid unnecessary requests)\n* rework error handling and hierarchy (for cleaner usage)\n* use actual device name (to help recognize the device)\n* handle asyncio.TimeoutError (to handle timeout-related errors nicely)\n* properly re-raise exceptions (to avoid lengthy call stacktraces)\n* rename wLightBoxS feature to \"brightness\"\n\n1.1.0 (2020-03-24)\n------------------\n\n* fix switchBox support\n* fix minimum position handling\n* drop Python 3.6 support (still may work)\n* misc fixes, cleanup and increased test coverage\n\n1.0.0 (2020-03-24)\n------------------\n\n* Fixed wLightBox issues\n* Fixed wLightBoxS issues\n* Fixed shutterBox issues\n* Handle unknown shutterBox position\n* Improved error handling + lots of new diagnostics\n* Increased tests and test coverage (almost 100%)\n* Lots of rework\n\n\n0.1.1 (2020-03-15)\n------------------\n\n* Fixed switchBox support (newer API versions)\n\n0.1.0 (2020-03-10)\n------------------\n\n* First release on PyPI.\n",
"bugtrack_url": null,
"license": "Apache Software License 2.0",
"summary": "Python API for accessing BleBox smart home devices",
"version": "2.5.0",
"project_urls": {
"Homepage": "https://github.com/blebox/blebox_uniapi"
},
"split_keywords": [
"blebox_uniapi"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "22fea3bdefa29fe2ad89856f45177f8fa4daf6b4c45d8475f48d6911665760fc",
"md5": "701d068e6a38de41af13097b94a27755",
"sha256": "181425d353f4385458f3b7863b9c338c397935f39a8d8a023bd9dfd39ae43d17"
},
"downloads": -1,
"filename": "blebox_uniapi-2.5.0-py2.py3-none-any.whl",
"has_sig": false,
"md5_digest": "701d068e6a38de41af13097b94a27755",
"packagetype": "bdist_wheel",
"python_version": "py2.py3",
"requires_python": ">=3.9",
"size": 29230,
"upload_time": "2024-08-20T12:31:40",
"upload_time_iso_8601": "2024-08-20T12:31:40.269285Z",
"url": "https://files.pythonhosted.org/packages/22/fe/a3bdefa29fe2ad89856f45177f8fa4daf6b4c45d8475f48d6911665760fc/blebox_uniapi-2.5.0-py2.py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "2a21e4b93f2edc766ca9ae90353091e23403b7415edc0f92ff016fd1d055c5f3",
"md5": "267dfbcab87f0ac1fff87f9f9159f3a2",
"sha256": "967d003c81de4e8b7a143147f7e6872c2edccaed6ac6cc9c2719944d7b06526d"
},
"downloads": -1,
"filename": "blebox_uniapi-2.5.0.tar.gz",
"has_sig": false,
"md5_digest": "267dfbcab87f0ac1fff87f9f9159f3a2",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.9",
"size": 49377,
"upload_time": "2024-08-20T12:31:41",
"upload_time_iso_8601": "2024-08-20T12:31:41.521929Z",
"url": "https://files.pythonhosted.org/packages/2a/21/e4b93f2edc766ca9ae90353091e23403b7415edc0f92ff016fd1d055c5f3/blebox_uniapi-2.5.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-08-20 12:31:41",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "blebox",
"github_project": "blebox_uniapi",
"travis_ci": true,
"coveralls": false,
"github_actions": true,
"tox": true,
"lcname": "blebox-uniapi"
}