Temboo 是一個好用的超級線上函式庫,有免費也有付費的帳號。在本團隊翻譯的[實戰物聯網開發:使用Arduino Yun] 這本書中,就讓 Arduino Yun 利用 Temboo 的各種函式庫來上傳資料到 Google spreadsheet、發送 Gmail 以及上傳 webcam 照片到 Dropbox 等功能。
本篇要來介紹如何透過Temboo 讓您的 Arduino Yun 可以發布 Facebook 動態,分成兩部分:Facebook 端與 Temboo 端,話說回來,要申請一個 Facebook app 是愈來愈難了。有興趣的讀者們請耐心完成喔!
成功的話就可以在您的 Facebook 上看到這樣的畫面,我是把 DHT11 溫濕度感測器上傳到我個人的 Facebook 動態牆。您可以看到有一個 caveyun,代表我們是透過一個名為 caveyun 的 Facebook app 來發佈動態,如果您是透過Facebook 網頁或是手機端的 app 的話,就不會看到這類東西。換言之,instagram, iphoto 等也是同樣的做法。
在 Temboo 首頁(需建立帳號)也可以看到您最近執行哪些操作。
參考:
ArduinoYun使用Temboo上傳照片至Dropbox
第一部分:Facebook 端
1. 請到 Facebook 開發者網站,登入您的個人帳號之後在 My Apps 標籤下,選擇 Add a New App 來建立一個 App,之後就需要用這個 App (我是用 caveyun)來讓您的 Arduino Yun 與 Facebook 互動。這邊的認證一定會比較嚴格,不然阿貓阿狗也可以發動態到您的個人動態牆就不妙了。另一方面,如果您的 Facebook 帳號比較不活躍(例如沒有通過電話簡訊認證)的話,這一步很有可能無法完成,Facebook 可能會認為這是洗板的機器人帳號。
建立時,請選擇最右邊的 www 網站,接下來就依序填入相關的資料就好。
建好之後,就會看到以下的 App 設定,其中重要的就是 App ID 與 App Secret,這兩筆資料在第二階段 Temboo 申請 OAuth token會用到。
第二階段:Temboo 端
1. 在 Temboo網站註冊一個帳號後,請先點選右上角的 ACCOUNT 標籤,接著點選左側的 Applications,在此要建立一個 temboo application,一樣會看到一個 Application name (arduinoyun) 與 application key,這些資料要填在 Temboo.h 中喔!
2. 把畫面右上角的 IoT Mode 打開,並選擇開發板為 Arduino Yun
3. 選擇 Temboo 頁面左側,您會看到很多知名的網路服務(Google, Dropbox, duckduckgo… 還有 Uber,真想都玩玩看!)請找到 Facebook 下的 Publishing -> SetStatus。
4. 請點選 Get OAuth tokens,Temboo會帶您一步步操作,成功的話就可以取得 AccessToken,一起來吧!下方的 Message 選項則是您要發佈到 Facebook 個人動態牆的內容。
5. OAuth 第一步是要請您建立一個 Facebook app,這已經完成了吧。
6. 第二步是要在 Facebook app 頁面填入一個 Callback URL,請把 [https://temboo.com/oauth_helpers/confirm_facebook/] 這個連結填入您的 App Website 區中的 Site URL 欄位,完成後點選 Save Changes。
7. 在此填入您的 Facebook App ID 與 App Secret
8. 啟動認證,這時會跳轉到一個 Facebook 畫面,詢問您是否同意這個 app 可以發布訊息到您的動態牆,您在此可以決定發布的訊息是公開、只限朋友還是只限個人。很多 Facebook 小程式或是遊戲都會有這個步驟。
9. 終於完成了,其實 Temboo 也幫您把程式碼都弄好了,就是要取得這個 Access token嘛。請把這份程式燒錄到您的 Arduino Yun,確認網路連線都正常之後。過一會應該就可以看到您的 Facebook 帳號出現新的貼文囉!
別忘了在 Temboo.h 中要填入三筆資料,您的 Temboo 帳戶名稱、Application name 與 Application key,別把 Facebook 的 App ID / App Secret 搞混啦!