Siri、IFTTT 整合入門 part 3: 雲端訊息控制 MightyRC

Photo by HONG FENG on Unsplash

 

上一篇我們提到了怎麼透過 Android Automate 來與 MightyRC 做連動,這一篇我們要教大家怎麼透過 Automate 把 MightyRC 的服務開放出來,並透過雲端訊息來控制 MightyRC。

這次我們來試試透過雲端來控制家中的冷氣跟電風扇

1. 先在Android 主機上的 Automate  App裏頭建立一個 Flow (流程),然後新增一個 Cloud message receiver (接收訊息)的 Block (區塊)

    

 

 

2. 建立接收訊息的區塊 Block

開始編輯 Cloud receiver 這個 Block,首先在 Input arguments 選擇你想要透過哪個 Google 帳號來接收訊息 (Cipher account 不用填)。

另外可以在 From device 跟 Payload 分別填入 device, payload (以上皆為變數的名稱,後續我們會在下一個步驟中用 payload 這個變數來做流程判斷)

   

 

3. 新增一個判斷接收到的訊息是否正確的區塊 Block

再新增一個 Block “Expression true?”,新增之後去編輯這個Block,填入 payload = “cool”這裡的等號是判斷式中的是否相等的意思,也就是說在上一個步驟接收到的資料 payload 如果等於 “cool” 的話,則走 Yes 的流程,反之不等於 “cool”的話,就走 No 的流程。

 

4. 加些除錯訊息 (選用)

為了除錯方便,我們在 “Expression true?” 的 Yes/No 分別加上了 Log append 的 Block,這邊填入的字串待會根據 Payload是否為 “cool” 做不同的呈現 ( Cool 或是  Not Cool),當街收到的資訊等於或是不等於 “cool” 時,我們都可以透過除錯訊息看出些端倪。

    

 

把這個訊息 Not cool 串到步驟三的區塊的紅色節點 No 上

把這個訊息 Cool 串到步驟三的區塊的綠色節點 Yes 上

5. 接收到訊息後,啟動 MightyRC

好的,重頭戲來了,根據我們之前的設計,如果接收到的訊息內容 payload 為 “cool” 的話,我們啟動冷氣機情與電風扇情境,為此我們要新增 Broadcast send 這個 Block 來呼叫 MightyRC 執行情境命令。

所以我們需要先到 MightyRC App情境列表裏頭,長壓客廳冷氣跟電風扇,取得代碼,然後填入到 Extras 裡

(這裡不熟悉的朋友可以看 part 2 的介紹喔)

   

\

 

最後在把區塊 (Block) 流程的線編輯一下,就會變成下面這個模樣! 之後可以啟動這個 Flow,來接受訊息囉~

6. 如何透過雲端來控制 MightyRC?

我們透過任何一支手機或是電腦,先到這個網頁 (https://llamalab.com/automate/cloud/)

壓下 Secret 右下方的那個按鈕,自動產生傳輸資訊的密鍵 (很重要,後續與 IFTTT等服務整合時都會用到),之後再選擇之前在步驟二填的 Google 帳號的email,然後在 Payload的地方填下 cool ,然後壓下 Send,這個網頁就會送出訊息,順利的話就會傳到我們剛剛在步驟二建立的接收訊息的區塊上。

     

 

一旦 Flow 接收到訊息,而且 Payload 是 cool 的話,Log 就會把 Cool 的資訊呈現出來 (參見步驟4),同時也會開始執行 MightyRC  的打開冷氣跟電風扇兩個情境!

 

了解基本怎麼透過雲端訊息來與 MightyRC 連動的機制後,接下來就可以大展身手,做些有趣的應用了~

我們會在下一篇教大家怎麼透過 IFTTT 來控制 MightyRC喔~

 

沒有留言

留言

你的電子郵件不會被公開