先註冊line notify跟IFTTT,
然後在IFTTT上開通2項服務MAKER跟LINE,IFTTT就是IF This Then That的縮寫,
它的原理就是:如果(if)MAKER收到PM25的訊號(this)就(then)LINE通知(that)
詳細申請與設定步驟可參考網路文章 http://k12cc.tw/tools/page/show_page.php?page_url=%2FSite%2Fkc12266%2Fdir_AKFdZq%2Farticle_qsXqz6.html
MAKER在設定好後,會得到一組APIKEY,與自訂的啟動指令,跟資訊中心提供的資料庫介接方法很類似,
以GET或POST把這串帶有APIKEY與自訂指令的網址送出後,MAKER收到就會啟動LINE通知,
不過上面的教學大章使用的是scratch,要送出https的網址比較簡單,我們的ESP8266就複雜一些,得再修改一下原本的程式碼
MAKER是以https接收,所以多引入一個#include <WiFiClientSecure.h>
接著仿照原本程式30分鐘傳回資訊中心資料庫的寫法,
多設一組計時器,把時間間隔加大到1小時或更久,才不會空氣品質不好時,LINE半小時就叮咚一次
<pre>
if(abs( millis() - updateStart2) > updateInterval2 && T>=54 ) {
WiFiClientSecure client;
if( !client.connect("maker.ifttt.com", 443 ) )
{
return;
}
else
{
String getStr_line = "GET /trigger/自訂指令/with/key/MAKER的APYKEY HTTP/1.1\r\n";
client.print( getStr_line );
client.print( "Host: maker.ifttt.com\n" );
client.print( "Connection: close\r\n\r\n" );
client.stop();
updateStart2 = millis();
}
}
</pre>
把修改好的程式碼再燒錄回ESP8266,
資訊中心已有提供貼紙,產生貼紙時會自動去抓取資料庫裡最新的一筆資料,
我覺得這超讚的,在送回MAKER的資料就不用加上PM2.5的數據了
直接在LINE通知的貼圖填入網址
http://pm25.tn.edu.tw/xoops/uploads/tn_pm25/學校代碼_貼紙種類.png
這樣就大功告成了