我正在开发一个基于ARM的设备来控制zwave家庭设备。我想使用facebook、电子邮件和类似的技术或方法与控制器进行交互。该控制器将具有zwave软件和基于ip的相机软件。每个软件都有自己的api。我需要一个中央系统来接收和发送消息。例如:我通过facebook或电子邮件向我的家庭自动化zwave设备发送消息,以打开或关闭特定设备。这个中央系统必须能够理解并将消息/事件转换为可理解的格式或通用API,以便所有附加到控制器的其他技术都能够理解和执行。
你能建议一个骨干系统在Linux上运行或者系统名称是什么吗?我可以用什么来绑定不同的技术并使它们相互交流?我正在寻找一个非JVM解决方案。
如果您想使用已经存在并且是开源的东西,我建议您查看OpenHAB。它有一个用于ZWave设备的插件(使用OpenZWave)和许多连接器来接收来自不同地方的消息。您可能必须编写自己的自定义连接器,但是有很多示例和文档说明如何这样做。然而,OpenHAB是一个JVM解决方案。
如果您希望完全创建自己的系统,则需要采用消息传递标准,例如MQTT。然后,您需要编写一些东西,将ZWave事件转换为MQTT消息,反之亦然,并在后台运行MQTT代理。然后,需要编写侦听MQTT消息并对其进行操作的不同组件,例如显示有关设备、状态等信息的Web页面。
或者,你可以购买像HomeSeer这样的东西,但你可能仍然需要为Facebook编写一些连接器,等等。