AlarmDecoder |
This Python library aims to provide a consistent interface for the AlarmDecoder product line. (AD2USB, AD2SERIAL and AD2PI) This also includes devices that have been exposed via ser2sock, which supports encryption via SSL/TLS.
- AlarmDecoder can be installed through pip:
pip install alarmdecoder
- or from source:
python setup.py install
- Note: python-setuptools is required for installation.
- An AlarmDecoder device
- Python 2.7
- pyftdi >= 0.9.0
- pyusb >= 1.0.0b1
- pyserial >= 2.7
- pyopenssl
API documentation can be found at readthedocs.
A basic example is included below. Please see the examples directory for more.:
import time
from alarmdecoder import AlarmDecoder
from alarmdecoder.devices import USBDevice
def main():
"""
Example application that prints messages from the panel to the terminal.
"""
try:
# Retrieve the first USB device
device = AlarmDecoder(USBDevice.find())
# Set up an event handler and open the device
device.on_message += handle_message
with device.open():
while True:
time.sleep(1)
except Exception, ex:
print 'Exception:', ex
def handle_message(sender, message):
"""
Handles message events from the AlarmDecoder.
"""
print sender, message.raw
if __name__ == '__main__':
main()