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/

Set a new door lock code

$ ./examples/set_door_code.py -u http://192.168.1.161:3480/ -n "John Doe" -p "12345678"

Clear a existing door lock code

$ ./examples/delete_door_code.py -u http://192.168.1.161:3480/ -n "John Doe" -p "12345678"

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.14.tar.gz (24.8 kB view details)

Uploaded Source

Built Distribution

pyvera-0.3.14-py3-none-any.whl (23.3 kB view details)

Uploaded Python 3

File details

Details for the file pyvera-0.3.14.tar.gz.

File metadata

  • Download URL: pyvera-0.3.14.tar.gz
  • Upload date:
  • Size: 24.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.1.9 CPython/3.7.12 Linux/5.8.0-1041-azure

File hashes

Hashes for pyvera-0.3.14.tar.gz
Algorithm Hash digest
SHA256 9d41898eea007d3cee280a2eeec9243d739c77e439f44a5e5cf03594ea634c02
MD5 5818b3492c1058a5011b1e7540fc9c53
BLAKE2b-256 2308269f9aa8c8a50a7b8735c7ef9196057624a90cb401ee0b8645c47be01b87

See more details on using hashes here.

File details

Details for the file pyvera-0.3.14-py3-none-any.whl.

File metadata

  • Download URL: pyvera-0.3.14-py3-none-any.whl
  • Upload date:
  • Size: 23.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.1.9 CPython/3.7.12 Linux/5.8.0-1041-azure

File hashes

Hashes for pyvera-0.3.14-py3-none-any.whl
Algorithm Hash digest
SHA256 ba3cdc47a3c6234b2fe616b899488a89199700a01771b784005a82e6af3aa3df
MD5 a4d8ef2fcbddfb7044dc11b0897ad7e3
BLAKE2b-256 f1aa8bcc978af09dab2ade11e79145c7036cb4ad28323713fd1bad2756c0ea0b

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page