YET another take on an alarm system

Try:

curl -v -X POST -H "Content-Type: application/json" -d '{"entity_id":"alarm_control_panel.house","code":"5528"}' http://192.168.1.12:8123/api/services/alarm_control_panel/alarm_disarm?api_password=xxx

Check the part after disarm?

that’s it … yes is working (in curl).

EDIT in HTTP shortcut was missing a " … damn its time to buy eye glasses, I guess

:slight_smile: I’m not exposing HA to internet however in lan should work

Petrica, thanks for you answer.
I can not see the sensors that use the alarm panel. The sensors that are listed in alarm.yaml. Should I add them in my configuration.yaml? How do I do it?

Hi,

Do you have this alarm package (custom component)? Or the regular alarm?

Hi

I have this alarm package (custom component). I followed the instructions at GitHub - gazoscalvertos/Hass-Custom-Alarm: Yet another take on a home assistant custom alarm but I can not see the sensors listed in alarm.yaml (the sensors inmediate, delayed, perimeter). Thanks

Could you post the “SENSOR GROUP” part of alarm.yaml?

yes,

immediate:

  • binary_sensor.top_floor_multi_sensor_sensor
  • binary_sensor.lounge_multi_sensor_sensor
  • binary_sensor.toilet_window_sensor
  • binary_sensor.back_door_sensor
  • binary_sensor.lounge_doors_sensor
  • binary_sensor.kitchen_window_sensor

##Sensors in this group start the clock (pending_time) when tripped before the alarm is activated in ‘Away’ mode
delayed:

  • binary_sensor.kitchen_multi_sensor_sensor
  • binary_sensor.hall_multi_sensor_sensor
  • binary_sensor.toilet_multi_sensor_sensor
  • binary_sensor.front_door_sensor
  • binary_sensor.garage_door_sensor

##Same as notathome but hopefully the title is more self explanatory. Can still use notathome for backwards compatibility
##Note sensors can exist in more than one group notice top_floor appears in two groups
homemodeignore:

  • binary_sensor.top_floor_multi_sensor_sensor
    ##Use this group to automatically override the warning message on open sensors when setting ‘away’ mode. (I use this as I have a motion sensor at the front door)
    override:
  • binary_sensor.hall_multi_sensor_sensor

##This group is special and only effects ‘perimeter mode’. If perimeter_mode is enabled then any sensor in this group will trigger the alarm immediately if arm perimeter is set. There is no delayed group for this mode (unless requested as a feature of course!)
perimeter:

  • binary_sensor.toilet_window_sensor
  • binary_sensor.back_door_sensor
  • binary_sensor.lounge_doors_sensor
  • binary_sensor.kitchen_window_sensor
  • binary_sensor.front_door_sensor
  • binary_sensor.garage_door_sensor

use the </> markings when posting code (indentation is significant for YAML)

Sorry, I didn’t realize these remained the default sensors from github.

You need to include your own sensors in these sections (start with a few and work your way up). Because these are the sensors from the author’s house they won’t appear in your configuration.

It is possible to change the alarmcode from the frontend custom panel? To not have to change the code in the .yaml file every time.

thanks Petrica, these sensors must be included in configuration.yaml or can they be included directly in alarm.yaml?

In alarm.yaml and replace the ones that came from github

Hey everyone, been away a while but will try and respond to some of the outstanding queries and get some update code uploaded over the next couple of days.

1 Like

Trying to install this and I am getting this error when clicking on Alarm in panel.

https://DUCKDNS.org:8123/frontend/panels/alarm-cb02f431e4b5a91a700d9e76da46dfbb.html:234:19 Uncaught TypeError: Cannot read property ‘attributes’ of undefined

Which points to this line -
if (this.alarm.attributes.clock) {

I have tried changing clock to False and restarting, still no change.

Any ideas on whats happening?

did you reboot after config the files and if possible please show your alarm.yaml setting.

Hello, thank you very much for this awsome feature.
Is it possible to use it somehow with the xiaomi gateway alarm ?

Thanks.

I love this Hass Custom Alarm component, and today attempted to integrate the android app for the MQTT Alarm Control Panel. I am having some problems getting it to work. Any help is appreciated! Please let me know if you need additional information.

It appears I am able to arm & disarm the alarm through the panel just fine. I can also arm the alarm through the MQTT Alarm Control Panel app.

However I am unable to disarm the alarm through MQTT. Every time I attempt to, I receive the below error in the home-assistant.log, and the alarm remains active. The commands are being sent, and show up if I subscribe to the topics and view them.

I’ve tried various configurations based on feedback I’ve read here, and I’ve spent quite a bit of time today trying to make this work but this error persists.

From what I can recall, I’ve tried:

  • No zero for leading digit of alarm code
  • Hard coding alarm code into alarm.yaml (with and without single/double quotes)
  • Using secrets.yaml for alarm code (with and without single/double quotes)
  • I’ve verified all my binary sensors are valid sensors
  • Removed comments after command and state topics in case they were being read
  • Entered command_topic: & command_topic: paths in the alarm.yaml with and without single/double quotes
  • Verified quotes used are the correct ’ and " characters. Checked for unnecessary spaces

Error Message:

2018-02-13 14:14:57 ERROR (MainThread) [homeassistant.core] Error doing job: Exception in callback async_subscribe..async_mqtt_topic_subscriber(‘home/alarm/set’, b’DISARM’, 0) at /srv/homeassistant/lib/python3.5/site-packages/homeassistant/components/mqtt/init.py:225
Traceback (most recent call last):
File “/usr/lib/python3.5/asyncio/events.py”, line 126, in _run
self._callback(*self._args)
File “/srv/homeassistant/lib/python3.5/site-packages/homeassistant/components/mqtt/init.py”, line 244, in async_mqtt_topic_subscriber
hass.async_run_job(msg_callback, dp_topic, payload, dp_qos)
File “/srv/homeassistant/lib/python3.5/site-packages/homeassistant/core.py”, line 253, in async_run_job
target(*args)
File “/home/homeassistant/.homeassistant/custom_components/alarm_control_panel/bwalarm.py”, line 542, in message_received
self.alarm_disarm(payload.split(" ")[1])
IndexError: list index out of range

alarm.yaml alarm code snippet:

code: !secret alarm_code
panic_code: !secret panic_code

MQTT alarm.yaml code snippet:

##[MQTT RELATED]
mqtt: True
#override_code: True #[OPTIONAL] False by default. if true allows MQTT commands to disarm the alarm without a valid code.
state_topic: home/alarm
command_topic: home/alarm/set
qos: 0
payload_disarm: "DISARM"
payload_arm_home: "ARM_HOME"
payload_arm_away: "ARM_AWAY"
#payload_arm_night: "ARM_NIGHT" #[OPTIONAL] The payload to set armed-night mode on this Alarm Panel. Default is “ARM_NIGHT”.

home/alarm/set terminal output:

pi@Hassbian:~ $ mosquitto_sub -h ip_address_here -p port_here -u username_here -P password_here -v -t ‘home/alarm/set’
home/alarm/set ARM_HOME
home/alarm/set DISARM
home/alarm/set ARM_HOME
home/alarm/set DISARM
home/alarm/set ARM_HOME
home/alarm/set DISARM

home/alarm terminal output:

pi@Hassbian:~ $ mosquitto_sub -h ip_address_here -p port_here -u username_here -P password_here -v -t ‘home/alarm’
home/alarm disarmed
home/alarm armed_home
home/alarm disarmed
home/alarm armed_home
home/alarm disarmed
home/alarm disarmed

you can make it so that one of the alarm actions is to activate the gateway siren, if that’s what you want