2014-09-29 110 views
0

我已經有一個家庭自動化ios應用程序。我可以控制在家中配置的設備。我可以通過本地和遠程網絡訪問我的設備。支持ios8 HomeKit的第三方設備?

我剛剛讀了蘋果新的ios8 HomeKit支持。我想將HomeKit兼容性集成到我的應用中。我聽說HAP(家庭輔助協議)支持的設備只能與HomeKit框架進行通信。另外蘋果表示,第三方設備可以與HomeKit進行通信。有關硬件協議或程序的信息不多,如何在第三方設備和HomeKit之間使用橋接?

我的HomeKit橋是一個真正的硬件?

此外,我懷疑與配置的配件溝通。由於Apple HomeKit Framework具有像「startExecutingActionSet」這樣的命令來執行一個或多個任務,但該命令如何與我們在ios應用程序中定義的現有命令協議一起工作。

我是硬件工程新手。所以請給我一個簡單的例子,說明通過網橋與我的硬件設備之間的通信。

在此先感謝...

回答

2

一個HomeKit橋是一塊從接收的iDevice港式命令,並翻譯他們進入您家的目標設備上的特定協議的硬件。 Phillips Hue有one of these。 Apple有一個硬件製造商需要遵守的協議,您需要註冊他們的MFi程序才能獲得該協議。不過有人似乎已經對規格進行了逆向設計,您可以使用自己的代碼編寫自己的software bridge。這就是我正在做的。

在HomeKit中,您不會直接與設備通話。這幾乎是HomeKit的主要觀點。爲了讓每個開發人員不需要知道每個設備的特定協議,只需觸發iOS即可進行預定義操作。我相信你也可以通過建立一組你想要發生的事件和觸發事件來添加觸發器和動作集。例如。當我進去時關掉車庫裏的所有配件。您不需要知道如何關閉每個設備,您只需告訴iOS在每個設備上運行關閉命令,並知道其餘部分。或者至少對於那些已經註冊了MFi程序並可以收聽HomeKit命令的人來說。

+0

嘿克雷格感謝您的回覆。這真的很有幫助。但需要一些澄清。 - 我可以在我的舊應用中集成HomeKit框架嗎? - 我的舊圖書館代碼與設備進行通信需要?或HomeKit框架協議和委託就足夠了? – 2014-09-30 06:52:39

+0

您可以向HomeKit框架發出命令來打開和關閉設備(或加熱設備或他們提供的任何服務)設備,但是您不會在iOS應用內接收它們。命令從應用程序轉到iOS,以橋接到設備。 您可以以相同的方式從設備請求信息,但在任何情況下,它都是與該橋或設備通話的iOS設備。當命令需要在外部硬件上運行時,它不會與您的應用程序聯繫。 HomeKit的意義在於替換所有必須編寫的用於與所有不同硬件類型進行通信的自定義代碼。 – Craig 2014-09-30 09:38:09