可在臉書自動發布的Ameba空氣盒

Description

Description
作者:Wei-Chi Lai

創作發想

Facebook 是知名的社群網站,提供使用者溝通、分享、儲存影音、建立社團等等。這樣資源豐富的平台,如果能讓 Arduino-like 的開發版使用,就可以使嵌入式的應用更貼近人們的生活。但是 Facebook 提供的 SDK 對於 Arduino-like 的開發版來說太龐大而無法執行,目前常看到的解決方式是藉助第三方網站的幫忙,像是 Temboo、或是自己架站,然而這種方式限制了 Arduino-like 在 Facebook 的操作範圍,也受限於網站的穩定性。

Facebook 除了 SDK 之外,也提供 Graph API 供開發人員使用。Graph API 是建立於 HTTPS 的溝通介面,意謂著如果 Arduino-like 的開發板具有 SSL 的功能,就可以連接至 Facebook 。

Realtek Ameba RTL8195A 是一款具備 WiFi的開發版,也提供SSL,於是我們嘗試讓 Ameba 偵測 PM2.5 的濃度,再發表文章至 Facebook 塗鴉牆上。

使用材料

  • ・Realtek Ameba RTL8195A
  • ・Plantower PMS5003

運作方法

首先我們需要成為 Facebook 開發人員

接著要到 Graph API Explorer 申請權限與 access token。access token 的作用是讓應用程式有限制地代表使用者執行某些操作,這樣可以避免應用程式直接拿使用者的帳號密碼,而造成密碼洩露或是意外的行為。

https://developers.facebook.com/tools/explorer

using_graph_api_explorer

接著可以用 access token debugger 檢視 access token 是否申請成功,並且加已展延到期時間。

https://developers.facebook.com/tools/debug/accesstoken/

access_token_debugger

然後我們使用 Arduino IDE ,修改 Realtek SDK 1.1.5 版本的 Facebook 範例 “facebook_pm25_notifier”,設定成發佈在自己的塗鴉牆上。

program_under_arduino_ide

然後將 Ameba 與 Plantower PMS5003 接上,它使用到一組 UART,接法如下:

wiring

完成之後就可以測試,如果Ameba成功代替使用者發表文章到塗鴉牆上,可以看到自己名字底下有 “ameba” 的字串。

facebook_post

請點選Demo影片:

結語

Ameba 還可以與 Facebook 結合一些功能,像是在 Ameba 上加上 PIR 與 UVC Camera,讓 Ameba 偵測有動靜時拍張照上傳至 Facebook 並通知使用者,這樣就完成簡易的防盜應用。我們也不需要耗費心力維護網站與手機應用程式,也不需要安裝很少人使用的手機應用程式。

Facebook 提供了不少資源供我們利用,相信 Ameba 在 Facebook上還有許多有趣的應用。

Latest posts by Wei-Chi Lai (see all)

    Contact

    Contact

    Project簡述

    Project簡述
    • 簡述
      如果 Arduino-like 的開發板具有 SSL 的功能,就可以連接至 Facebook 。Ameba是一款具備 WiFi的開發版,也提供SSL,於是我們嘗試讓 Ameba 偵測 PM2.5 的濃度,再發表文章至 Facebook 塗鴉牆上。
    • 作者
      Wei-Chi Lai

    您的姓名 〈需填寫〉

    您的電子郵件信箱 〈需填寫〉

    主旨

    您的信件內容