【问题标题】:Ademco Contact-ID over TCP/IP基于 TCP/IP 的 Ademco 联系人 ID
【发布时间】:2014-08-04 18:07:42
【问题描述】:

这可能是一个有点抽象的问题。

我有一个家庭警报系统,我使用 php 脚本(arm/disarm 等)控制它,但使用它的警报报告不是很可靠。我了解到系统支持使用 TCP/IP 的 Ademco Contact-ID 样式报告。到目前为止,我只找到了使用 PSTN og VOIP 的示例。

所以我的问题是。是否有一些免费的开源 Ademco Contact-ID 服务器可以在我的 Raspberry Pi 上运行?还是袜子服务器?或者我可以运行的脚本,它可以通过 IP 处理 CID?

【问题讨论】:

    标签: php sockets tcp raspberry-pi


    【解决方案1】:

    我发现基于 IP 的联系人 ID(通过尝试)是:

    • 它使用 TCP
    • 它需要一个 ACK​​ 符号作为响应(至少我的是这样)

    用于收集事件的最基本脚本是:

    while true ; do nc -l 1337 < ack.txt >> contact_id.log ; done
    

    ack.txt 这里包含一个确认字符

    【讨论】:

    • 我正在尝试为我的警报做类似的事情,但我无法在 ack.txt 文件中找到有关应发回的信息。我无法通过 TCP 找到有关此协议的任何官方信息。谁有有用的提示?
    • 我的方法中的 ack.txt 包含字符 ACK。这是一个“控制字符”,就像“A”是一个可打印字符一样。搜索“ASCII 表”。
    【解决方案2】:

    虽然这可能不是一个直接的答案,因为我也没有在 TCP 上的 CID 上找到任何答案,但我可能有一个替代解决方案。除了我使用 GPIO 来检测警报系统输出继电器的变化外,我以相同的方式设置我的 RPi。我已经对我的警报面板进行了编程,以触发警报上的特定板载继电器。我用 RPi 监控这些继电器。我还可以通过警报面板按键开关区域(RPi 上的关闭继电器)进行布防/撤防。

    【讨论】:

      【解决方案3】:

      不确定是否还有人对此感兴趣,因为这是很久以前的事了,但不久前我写了一个简单的 CSV-IP 服务器,它以联系人 ID 格式处理来自警报系统的通知(这就是 CSV-IP TCP wrapper for) 并解码并打印出正在发送的信息。

      来自先前回复的一条评论,规范没有指定 ACK 符号,但要求您将整个消息回显给发件人。您可以发送一个 ACK​​,然后您将重试规范要求的原始消息,因此看起来 ACK 已被处理,但这只是触发了重试机制。

      【讨论】:

        猜你喜欢
        • 2015-05-23
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2016-03-26
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-03-19
        相关资源
        最近更新 更多