Alarmdecoder zone bypassing

Hi all,

I’d like to ask if anyone is using alarmdecoder (or envisalink, I think it should be pretty much the same process) and bypassing zones before arming the alarm. How do you do it?

Thanks!

I too am trying to figure this out. I’m debating whether to have an something like an switch below each binary_sensor to bypass. My biggest annoyance is that I can’t auto-arm. I’d really like to just press “arm” and have the system bypass whatever doors/windows that are already open. How did you do yours?

Hi,

as my purpose was exactly like yours (bypass all and arm - I’m using the alarm in that way anyway, even before alarmdecoder), I ended up modifying the code of the alarmdecoder control panel (/components/alarm_control_panel/alarmdecoder.py) and added a bypass all command (in my case it’s: code + 6 + #) in the handlers of the async_alarm_arm_away and async_alarm_arm_home events. Not perfect, but works just fine for the time being.

BR

Use the same bypass command. Do you mind posting the modified alarmdecoder.py?

Thank you.

The only change I’ve made is that I’ve added two lines, towards the end of components/alarm_control_panel/alarmdecoder.py:

    @asyncio.coroutine
    def async_alarm_arm_away(self, code=None):
        """Send arm away command."""
        _LOGGER.debug("alarm_arm_away: %s", code)
        if code:
            _LOGGER.debug("alarm_arm_away: sending %s2", str(code))
            self.hass.data[DATA_AD].send("{!s}6#".format(code))
            self.hass.data[DATA_AD].send("{!s}2".format(code))

    @asyncio.coroutine
    def async_alarm_arm_home(self, code=None):
        """Send arm home command."""
        _LOGGER.debug("alarm_arm_home: %s", code)
        if code:
            _LOGGER.debug("alarm_arm_home: sending %s3", str(code))
            self.hass.data[DATA_AD].send("{!s}6#".format(code))
            self.hass.data[DATA_AD].send("{!s}3".format(code))

I’ve added the lines: self.hass.data[DATA_AD].send("{!s}6#".format(code)) to automatically bypass all zones that are not closed before arming.

Thanks so much for that.