#分享 用 Siri 打造你的智慧家庭吧!

前情提要~https://www.dcard.tw/f/3c/p/227099787?ref=android
*本篇需要 JB越獄*

我還是頭一次發 iOS 的分享文呢XD
以往的主角都是 Android

在上一篇開箱文中,有人問說能不能研究一下怎麼跟 iOS 串接
在網路上爬到的教學都是 Home Assistant → HomeBridge → HomeKit → Siri,一路串下來,而且 iOS 端要有 Home app。而我現在 iPhone 不在手邊,iPad 為了有 JB 而停在 8.4,所以我沒辦法研究
(沒有 JB 的 iOS 裝置我打死不用)

後來呢,我想了又想,只要能做 HTTP Requests 而且吃 json 格式的話,那就根本不需要串HomeBridge再串HomeKit了
直接 Siri → HTTP Requests → Home Assistant → Broadlink RM Pro
事實上我在 Android 端跟 PC 端操作 Broadlink RM Pro 也是用 HTTP Requests
Google Assistant 則是有 IFTTT 夾在中間做 HTTP Requests

那~ 怎麼讓 Siri 做 HTTP Requests 呢?
1. 先越獄
2. 安裝以下三個 Cydia 插件
- Activator (免費)
- Activate Command (免費)
- Assistant+ ($1.99)

.Activator 這個插件對於 JB 玩家一定不陌生,幾乎每一篇 JB 教學都一定會建議你安裝。
.Activate Command 是讓 Activator 能下命令(Command),也就是我剛剛說的 HTTP Requests。
.Assistant+ 則是 Siri 的強化工具,可以讓你自訂 Siri 的觸發與動作。

在 Activate Command 中輸入 HTTP Requests

curl -H "Content-Type: application/json" -d '{"entity_id": "你的家電按鈕名"}' http://你的DDNS位址:8123/api/services/switch/toggle?api_password=密碼
在 Assistant+ 中設定你要對 Siri 說的指令以及觸發的 Activator 動作名稱
在 Activator 中設定你剛剛在 Assistant+ 中建的動作名稱,以及設定這動作要執行什麼,將他指向 Activate Command
嘛...這些設定後,你就可以...
我在上一篇中說 Android 可以從 "任何莫名其妙的地方" 來操控家電,透過 Activator 也能做到相同的事
不過 Activator 好像不能像 Android 的 Tasker 一樣製作 Scenes
透過 Scenes,你可以在手機上任何地方叫出完整的遙控器,而不是單獨的按鈕
看似是一個個單獨的按鈕
實際上按下去可以叫出完整的遙控面板
這是冷氣的
這是投影機的
以上~是針對 Siri 的部分,如果不想要那麼複雜,你可以用官方的易控程式,或者被 Apple 買下的 Workflow
Workflow 支援 IFTTT 與 Web API,都可以來遙控 RM Pro,但就是不支援 Siri
看看哪天 Apple 會將 Siri 整合進 Workflow
Workflow 官方對 Web API 的說明我看了就頭痛...https://workflow.is/docs/taking-advantage-of-web-apis(能用 Web API 就盡量別用 IFTTT,因為透過 IFTTT 會延遲個2~3秒,而且 IFTTT 做的事也是 Http post,那不如直接用 Web API )

分享到這邊,詳細的教學,有需要的話我會跟上一篇一起寫教學文

這下你不用買 Apple 認證的 HomeKit 產品了

favorite_border28
toc12