Skip to main content

Python API for talking to Veracontrollers

Project description

pyVera Build status PyPi version PyPi downloads

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.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pyvera-0.3.15.tar.gz (24.9 kB view hashes)

Uploaded source

Built Distribution

pyvera-0.3.15-py3-none-any.whl (23.3 kB view hashes)

Uploaded py3

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Huawei Huawei PSF Sponsor Microsoft Microsoft PSF Sponsor NVIDIA NVIDIA PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page