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()