Giter Site home page Giter Site logo

alarm-server's Introduction

alarm-server Configuration

Installing

alarm-server requires some python dependencies to run.

pip install paho-mqtt
pip install python-daemon

Configuring the Server

MQTT Server Configuration

  • If your MQTT server is running locally or on the same box as the server listener, you can likely leave the settings as default.
  • If you need to adjust anything, you can do so in alarmserver.conf

Configuring allowed panel addresses

  • Allowed panel addresses should be entered in tab separated format innto /etc/alarmserver/accounts.conf (or wherever you configure this file to be - see alarmserver.conf)
  • Example: 1234 192.168.1.2 where 1234 is the account number you configure in Wintex/On Panel.

Configuring the Alarm Panel

The simplest method to configure the server and panel communication is to use Wintex to configure the ARC settings.

Using Wintex

Disclaimer! It's easy to overwrite configurations, misconfigure or break your panel's current working configuration using Wintex. Please be sure you're confident in using wintex before proceeding - and always remember to take a backup, or at the very least receive all data first!

  • Connect to your Panel
  • Navigate to the Comms page
  • Select the ARCs tab
  • Find an empty ARC slot
  • Enter the IP address and port of your server in the Pri Tel No field in the format ip/port (For example 192.168.1.92/10500)
  • Ensure Connect via IP is checked
  • Save / send current page.

Running the Server

python alarmrx.py

Subscribing to Messages

Topics:

  • /alarms/{account-num}/event
  • /alarms/{account-num}/message
  • /alarms/{account-num}/status

alarm-server's People

Contributors

mikestir avatar srleach avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

alarm-server's Issues

Would be amazing to have a Docker image of this

I'm running Kubernetes for my home automation and thought it'd be great to have a docker image available for this.

Happy to contribute a GitHub actions build + Dockerfile in a PR if there is interest in doing this?

@mikestir what are your thoughts?

Why am I getting this error message?

2020-09-16 23:29:46,554 INFO Starting MQTT client for 192.168.0.185:1883
2020-09-16 23:29:46,557 INFO Starting alarm server on 192.168.0.250:10001
2020-09-16 23:29:46,559 ERROR Terminated due to exception
Traceback (most recent call last):
File "alarmrx.py", line 869, in
main()
File "alarmrx.py", line 852, in main
t = ThreadedTCPServer((SERVER_HOST, SERVER_PORT), TexecomService)
File "/usr/lib/python2.7/SocketServer.py", line 417, in init
self.server_bind()
File "/usr/lib/python2.7/SocketServer.py", line 431, in server_bind
self.socket.bind(self.server_address)
File "/usr/lib/python2.7/socket.py", line 228, in meth
return getattr(self._sock,name)(*args)
error: [Errno 99] Cannot assign requested address

Error in MQQT due to newer version?

Looking on the internet it seems I may be getting this rror because of the version of MQQT being newer and I'm not sure how to get round it..

2022-10-17 11:05:52,777 ERROR Failed to open account file 2022-10-17 11:05:52,777 INFO Starting MQTT client for 127.0.0. 1:1883 2022-10-17 11:05:52,779 INFO Starting alarm server on 0.0.0.0: 10500 Exception in thread Thread-1: Traceback (most recent call last): File "/usr/lib/python3.7/threading.py", line 917, in _bootstrap_inner self.run() File "/usr/lib/python3.7/threading.py", line 865, in run self._target(*self._args, **self._kwargs) File "/home/pi/.local/lib/python3.7/site-packages/paho/mqtt/client.py", line 3 591, in _thread_main self.loop_forever(retry_first_connection=True) File "/home/pi/.local/lib/python3.7/site-packages/paho/mqtt/client.py", line 1 756, in loop_forever rc = self._loop(timeout) File "/home/pi/.local/lib/python3.7/site-packages/paho/mqtt/client.py", line 1 164, in _loop rc = self.loop_read() File "/home/pi/.local/lib/python3.7/site-packages/paho/mqtt/client.py", line 1 556, in loop_read rc = self._packet_read() File "/home/pi/.local/lib/python3.7/site-packages/paho/mqtt/client.py", line 2 439, in _packet_read rc = self._packet_handle() File "/home/pi/.local/lib/python3.7/site-packages/paho/mqtt/client.py", line 3 039, in _packet_handle return self._handle_connack() File "/home/pi/.local/lib/python3.7/site-packages/paho/mqtt/client.py", line 3 139, in _handle_connack self, self._userdata, flags_dict, result) TypeError: on_mqtt_connect() takes 3 positional arguments but 4 were given

Add multiple MQTT

Is it possible to have multiple MQTT servers defined in the alarmserver.conf file?

ARC web app with SMS integration

Hi Mike,

It's great to see you have made a start on a simple alarm receiving centre for Texecom alarms.

I also have one of these alarm panels, and I currently pay hundreds of pounds a year to have it monitored by an external company. That company doesn't give me any web control panel or app to view the status of my alarm, they will just phone me if there is an issue. Recently they have switched from using human operators to make the outbound calls to automated messages!

It strikes me that there is a big opportunity to build an OpenSource ARC web app for alarm panels (and potentially a SAAS system) which allowed users to log in and view the status of their alarm, all of the events that have been triggered, and potentially get either SMS or push based notifications to their phones.

Do you know of anything that already does this? and if not, do you think this project could potentially go in that direction?

I would happily pay £10 a month for a service like that!

Cheers,

Paul

Texecom Connect

Has anyone looked into getting this code to work with a Texecom Connect? AFAIK the Connect has a local API, as well as the cloud services offered through the app

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.