Metadata-Version: 2.1 Name: pyvera Version: 0.3.16 Summary: Python API for talking to Veracontrollers Home-page: https://github.com/maximvelichko/pyvera License: GPL2 Keywords: vera,api Author: James Cole Requires-Python: >=3.8,<4.0 Classifier: License :: OSI Approved :: GNU General Public License v2 (GPLv2) Classifier: License :: Other/Proprietary License Classifier: Programming Language :: Python :: 3 Classifier: Programming Language :: Python :: 3.8 Classifier: Programming Language :: Python :: 3.9 Classifier: Programming Language :: Python :: 3.10 Classifier: Programming Language :: Python :: 3.11 Classifier: Programming Language :: Python :: 3.12 Classifier: Programming Language :: Python :: 3.13 Requires-Dist: requests (>=2.22.0) Project-URL: Repository, https://github.com/maximvelichko/pyvera Description-Content-Type: text/markdown # pyVera ![Build status](https://github.com/maximvelichko/pyvera/workflows/Build/badge.svg) ![PyPi version](https://img.shields.io/pypi/v/pyvera) ![PyPi downloads](https://img.shields.io/pypi/dm/pyvera) A simple Python library to control devices via the Vera controller (http://getvera.com/). Based on https://github.com/jamespcole/home-assistant-vera-api Additions to support subscriptions and some additional devices How to use ---------- >>> import pyvera >>> controller = pyvera.VeraController("http://192.168.1.161:3480/") >>> devices = controller.get_devices('On/Off Switch') >>> devices [VeraSwitch (id=15 category=On/Off Switch name=Bookcase Uplighters), VeraSwitch (id=16 category=On/Off Switch name=Bookcase device)] >>> devices[1] VeraSwitch (id=15 category=On/Off Switch name=Bookcase Uplighters) >>> devices[1].is_switched_on() False >>> devices[1].switch_on() >>> devices[1].is_switched_on() True >>> devices[1].switch_off() Examples ------- There is some example code (that can also help with tracing and debugging) in the `examples` directory. This will list your vera devices ~~~~ $ ./examples/list_devices.py -u http://192.168.1.161:3480 ~~~~ This will show you events on a particular device (get the id from the example above) ~~~~ $ ./examples/device_listener.py -u http://192.168.1.161:3480/ -i 26 ~~~~ If you have locks - this will show you information about them. ~~~~ $ ./examples/show_lock_info.py -u http://192.168.1.161:3480/ ~~~~ View existing locks and PINs: ~~~~ $ ./examples/show_lock_info.py -u http://192.168.1.161:3480/ ~~~~ Set a new door lock code on device 335: ~~~~ $ ./examples/set_door_code.py -u http://192.168.1.161:3480/ -i 335 -n "John Doe" -p "5678" ~~~~ Clear a existing door lock code from device 335: ~~~~ $ ./examples/delete_door_code.py -u http://192.168.1.161:3480/ -i 335 -n "John Doe" ~~~~ Debugging ------- You may use the PYVERA_LOGLEVEL environment variable to output more verbose messages to the console. For instance, to show all debug level messages using the list-devices implementation in the example directory, run something similar to: ~~~~ $ PYVERA_LOGLEVEL=DEBUG ./examples/list-devices.py -u http://192.168.1.161:3480 ~~~~ Debugging inside home assistant ------- If you're running pyvera inside home assistant and need the debugging log traces, add the following to your `configuration.yaml` ~~~~ logger: logs: pyvera: debug ~~~~ Developing ------- Setup and builds are fully automated. You can run build pipeline locally by running. ~~~~ # Setup, build, lint and test the code. ./scripts/build.sh ~~~~ License ------- The initial code was initially was written by James Cole and released under the BSD license. The rest is released under the MIT license.