AlarmDecoder

AlarmDecoder integration集成将 Home Assistant 与您的设备、服务等连接和集成。 [Learn more] 允许拥有 DSC 或 Honeywell 报警面板的 Home Assistant 用户利用其报警系统及其传感器,为 Home Assistant 提供丰富的家庭信息。Home Assistant 与报警面板之间的连接是通过 Nu Tech Software Solutions 生产的设备 AlarmDecoder 实现的。AlarmDecoder 设备为报警面板提供串行、TCP/IP 套接字或 USB 接口,模拟报警键盘。

请访问 AlarmDecoder 网站 了解有关 AlarmDecoder 设备的更多信息。

目前 Home Assistant 支持以下 device设备是表示包含实体的物理或逻辑单元的模型。 类型:

  • 报警控制面板:报告报警状态,并可用于布防/撤防系统
  • 传感器:模拟键盘显示
  • 二进制传感器:报告区域状态

这是一个完全基于事件的集成。任何由 AlarmDecoder 设备发送的 event每当 Home Assistant 中发生某些事情时,都会触发一个事件。有不同类型的事件,例如状态更改事件、动作触发事件或时间更改事件。所有实体都会产生状态更改事件。每当状态更改时,都会产生状态更改事件。事件可用于触发自动化或脚本。例如,您可以在灯打开时触发自动化,然后在该房间中打开扬声器。事件还可用于触发前端的动作。例如,您可以在按下按钮时触发动作。 [Learn more] 都会立即反映在 Home Assistant 中。

配置

要将 AlarmDecoder 设备 添加到您的 Home Assistant 实例中,请使用此 My 按钮:

手动配置步骤

如果上述 My 按钮不起作用,您也可以手动执行以下步骤:

您将被提示选择协议(即 socketserial)。根据您的选择,您需要提供以下连接信息:

  • socket:
    • host - 连接到报警面板的 AlarmDecoder 设备的主机名或 IP 地址。
    • port - AlarmDecoder 可访问的端口(例如 10000)。
  • serial:
    • path - AlarmDecoder 设备的路径(例如 /dev/ttyUSB0)。
    • baud rate - AlarmDecoder 设备的波特率(例如 115200)。

设置

根据上述说明设置 AlarmDecoder 后,可以通过在 设置 > 设备和服务 页面上的 AlarmDecoder 卡上选择 选项 来配置布防设置和区域。

布防设置

目前 AlarmDecoder 有 3 个布防设置(如下所示)。

  • 替代夜间模式 - 对于 Honeywell 系统,设置为 true 以启用夜间布防模式,而不是夜间布防模式。对于 DSC 系统,设置为 true 以启用无入口模式,而不是夜间布防模式。对于这两种系统,只要此选项设置为 true,夜间布防时将需要代码 无论 布防需要代码 设置如何。 有关更多信息,请参见下文的 布防按键序列 部分。
  • 布防时自动旁路 - (仅限 Honeywell)设置为 true 以在布防前自动旁路所有打开的区域,发送 code + 6#。此设置仅在布防时有故障区域时需要代码。
  • 布防需要代码 - 设置为 false 以启用无需代码的布防。有关更多信息,请参见下文的 布防按键序列 部分。

区域

可以通过选项表单添加、编辑和删除区域。

每个添加到 AlarmDecoder 的 zone区域允许您在地图上指定某些区域。它们启用区域存在检测,并可用于自动化。例如,在您离开家后启动真空吸尘器,或在您离开办公室时启动家中的供暖。 [Learn more] 都会创建自己的 二进制传感器

添加新区域

在提示时,输入要添加的 zone区域允许您在地图上指定某些区域。它们启用区域存在检测,并可用于自动化。例如,在您离开家后启动真空吸尘器,或在您离开办公室时启动家中的供暖。 [Learn more] 的编号。选择 提交 以进入下一个屏幕,您将被提示输入 区域设置。再次选择 提交 以保存。

注意: 输入的区域编号将作为属性显示在创建的二进制传感器实体上,以便以后轻松编辑区域设置。

编辑现有区域

在提示时,输入要编辑的 zone区域允许您在地图上指定某些区域。它们启用区域存在检测,并可用于自动化。例如,在您离开家后启动真空吸尘器,或在您离开办公室时启动家中的供暖。 [Learn more] 的编号。选择 提交 以进入下一个屏幕,现有的区域设置将被预填充。编辑区域设置并选择 提交 以保存更改。

删除现有区域

在提示时,输入要删除的 zone区域允许您在地图上指定某些区域。它们启用区域存在检测,并可用于自动化。例如,在您离开家后启动真空吸尘器,或在您离开办公室时启动家中的供暖。 [Learn more] 的编号。选择 提交 以进入下一个屏幕,现有的区域设置将被预填充。清除 区域名称 字段并选择 提交

区域设置

zone区域允许您在地图上指定某些区域。它们启用区域存在检测,并可用于自动化。例如,在您离开家后启动真空吸尘器,或在您离开办公室时启动家中的供暖。 [Learn more] 的设置如下所述:

  • 区域名称 - 区域的名称
  • 区域类型 - 传感器类型(请参阅 设备类
  • RF 序列号 - (可选)与无线 RF 区域关联的 RF 序列号。提供此字段允许 Home Assistant 将原始传感器数据与给定区域关联,从而直接监控状态、电池和监督状态。
  • RF 回路 - (可选)与 RF 区域关联的回路编号(1、2、3 或 4)。提供此字段允许 Home Assistant 从原始传感器数据中读取开/关状态,除了从面板显示中读取状态外,这意味着它可以在报警布防时正确显示旁路的 RF 区域为开或关。(这是 RF 区域的 relayaddr/relaychan 的替代方案。)
  • 继电器地址 - (可选)与区域关联的继电器或区域扩展板的地址。(例如:12、13、14 或 15)。通常用于面板在布防状态下不会发送旁路区域(如家庭布防状态下的运动)的情况,Vista 20P 就是一个例子。AlarmDecoder 可以模拟一个区域扩展板,面板可以被编程为将区域事件推送到这个虚拟扩展板。这允许使用旁路区域二进制传感器。一个例子是在夜间使用旁路运动传感器进行基于运动的自动灯光,而系统在布防时旁路了运动传感器。
  • 继电器通道 - (可选)与区域关联的继电器或区域扩展板的通道。(例如:继电器扩展板的 1、2、3 或 4,区域扩展板的 1 - 8)

报警控制面板

报警面板上有几个属性可供您了解有关报警的更多信息。

  • ac_power: 如果系统有交流电源供应,则设置为 true
  • alarm_event_occurred: 如果系统最近被触发,则设置为 true。当 alarm_event_occurredtrue 时,必须在尝试布防报警之前通过输入代码 + 1(或调用 alarm_control_panel.alarm_disarm 操作)清除。
  • backlight_on: 如果键盘的背光灯亮,则设置为 true
  • battery_low: 如果系统的备用电池电量低,则设置为 true
  • check_zone: 如果系统检测到区域问题,则设置为 true
  • chime: 如果系统的提示音已激活,则设置为 true。激活后,系统在报警解除时,每次门或窗故障时都会发出哔声。
  • entry_delay_off: 如果系统处于“即时”模式,则设置为 true,这意味着任何故障都会触发报警。
  • programming_mode: 如果系统处于编程模式,则设置为 true
  • ready: 如果系统准备好布防,则设置为 true。任何故障,包括运动传感器,都会使此值变为 false
  • zone_bypassed: 如果系统当前旁路了一个区域,则设置为 true
  • code_arm_required: 设置为 AlarmDecoder 选项中指定的值。

操作

Alarm Decoder integration集成将 Home Assistant 与您的设备、服务等连接和集成。 [Learn more] 为您提供了几个 actions动作在 Home Assistant 的多个地方使用。作为脚本或自动化的一部分,动作定义了触发器被激活后将发生的事情。在脚本中,动作被称为序列 [Learn more],您可以用它们来控制报警。

  • alarm_arm_away: 在离开模式下布防报警;所有故障都会触发报警。
  • alarm_arm_home: 在留守模式下布防报警;门窗故障会触发报警。
  • alarm_arm_night: 根据 替代夜间模式 选项布防报警。
  • alarm_disarm: 从任何状态撤防报警。
  • alarmdecoder.alarm_keypress: 向报警发送一串字符,就像您在键盘上按下这些键一样。
  • alarmdecoder.alarm_toggle_chime: 切换报警的提示音状态。

Note

alarm_arm_custom_bypassalarm_trigger 虽然在 Home Assistant 的操作列表中可用,但目前在 Alarm Decoder 平台中尚未实现。

示例

使用可用的 actions动作在 Home Assistant 的多个地方使用。作为脚本或自动化的一部分,动作定义了触发器被激活后将发生的事情。在脚本中,动作被称为序列 [Learn more] 和属性的组合,您可以创建开关模板。

提示音状态和控制

- platform: template
  switches:
    alarm_chime:
      friendly_name: 提示音
      value_template: "{{ is_state_attr('alarm_control_panel.alarm_panel', 'chime', true) }}"
      turn_on:
        - condition: state
          entity_id: alarm_control_panel.alarm_panel
          attribute: chime
          state: False
        - action: alarmdecoder.alarm_toggle_chime
          target:
            entity_id: alarm_control_panel.alarm_panel
          data:
            code: !secret alarm_code
      turn_off:
        - condition: state
          entity_id: alarm_control_panel.alarm_panel
          attribute: chime
          state: True
        - action: alarmdecoder.alarm_toggle_chime
          target:
            entity_id: alarm_control_panel.alarm_panel
          data:
            code: !secret alarm_code
      icon_template: >-
        {% if is_state_attr('alarm_control_panel.alarm_panel', 'chime', true) %}
          mdi:bell-ring
        {% else %}
          mdi:bell-off
        {% endif %}

布防按键序列

下表显示了不同面板品牌和配置设置组合的布防按键序列。它们取自 adext PyPI 包。

Honeywell

code_arm_required = true(默认)

模式 按键序列
alarm_arm_home code + 3
alarm_arm_away code + 2
alarm_arm_night (alt_night_mode = false,默认) code + 7
alarm_arm_night (alt_night_mode = true) code + 33

code_arm_required = false

模式 按键序列
alarm_arm_home #3
alarm_arm_away #2
alarm_arm_night (alt_night_mode = false,默认) #7
alarm_arm_night (alt_night_mode = true) code + 33

DSC

code_arm_required = true(默认)

模式 按键序列
alarm_arm_home code
alarm_arm_away code
alarm_arm_night (alt_night_mode = false,默认) code
alarm_arm_night (alt_night_mode = true) *9 + code

code_arm_required = false

Note

以下 chr(4)chr(5) 序列相当于按下 StayAway 键盘键(如 AlarmDecoder 文档 中所述)。

模式 按键序列
alarm_arm_home chr(4) + chr(4) + chr(4)
alarm_arm_away chr(5) + chr(5) + chr(5)
alarm_arm_night (alt_night_mode = false,默认) chr(4) + chr(4) + chr(4)
alarm_arm_night (alt_night_mode = true) *9 + code