跳到主要內容

使用 IFTTT 傳送通知到手機上




點擊右上角Sign up。
可以選擇Google帳號或是Facebook帳號。

因為我之前已經註冊過,所以我直接登入。


註冊/登入 成功右上角會有自己的帳號。

點擊 Documentation,這裡可以測試自己建立的事件是否可以正確觸發。
上方一長串的亂數就是你的Maker Key,通常是辨別你的身份用,請別洩漏出去。


如果想要更新自己的Maker Key,請回到上一頁點擊Settings,再點 Edit connection,網站就會換一組新的給你。(下圖為點擊後的狀況)


現在我們就來做一個傳送通知到手機上吧!
點擊自己的帳號名字,選擇第一個 New Applet,每一個觸發事件都叫做一個Applet。

接著點擊我們的 +this ,也就是我們觸發來源 Source。

IFTTT有提供非常多的Service,而我們今天要做的是透過HTTP推播通知到手機上,所以我們搜尋Webhook。



第二步選擇Receive a web request。

接著會要求我們輸入事件名稱(Event Name),輸入完後點擊下方的Create trigger。
(補充:經測試過後盡量不要使用中文事件名稱,會比較容易出現編碼上的問題。)

到這邊我們的來源就已經設定好了,接著設定手機端的+That,也就是Action。

搜尋端輸入notifications。

第四步可以選擇簡單的文字格式(左邊),也可以選擇帶有照片及網址的通知(右邊)。
今天選擇左邊做簡單的測試。

以氣象通知為例,我輸入的是

今天 {{Value1}}的天氣最高溫是  {{Value2}} 度,最低溫是 {{Value3}} 度。
- {{OccurredAt}}

這裡的Value1、Value2、Value3是來自HTTP端的query值或是包含在body都可以,由個人喜好選擇,稍後會實驗給各位看。

點擊Add ingredient可以選擇變數,EventName代表的是事件名稱,此範例是今日天氣。 OccurredAt就是時間觸發當下,也是可以自由添加,主要用途應該是當手機從沒網路到連上網路時,可以從OccurredAt得知事件發生時間(有時候手機上的通知時間會不準確)。

完成後點擊Create action。


我們的第一個事件就建立好了! 接下來就開始測試吧!

有三種方式:
  1. HTTP GET。
  2. HTTP POST。
  3. Terminal。

第一種最簡單,只要在瀏覽器輸入我們剛剛事件名稱及query值,即可觸發成功。
Query 標準輸入方式是在網址後方加入
”?value1=VALUE1&value2=VALUE2&value3=VALUE3”

我的網址如下(以下範例都請將YOUR_MAKER_KEY改成自己的Maker Key)。

因為中文編碼不一樣,所以在網站上看起來會怪怪的,但不影響手機端接收。

此時即可在手機收到通知。


第二種方式是HTTP POST,我使用Python requests示範。

結果圖,會回傳與網頁端相同的文字。


在手機端亦可收到結果。


第三種是使用終端機的方式。
(事件名稱的中文編碼上有修改,不然直接打中文會有問題,建議還是取英文比較好。)

curl -X POST -H "Content-Type: application/json" -d '{"value1": "高雄", "value2": "31", "value3": "24"}' https://maker.ifttt.com/trigger/%E4%BB%8A%E6%97%A5%E5%A4%A9%E6%B0%A3/with/key/YOUR_MAKER_KEY

回傳結果。

手機端。


總結:


以第一次來使用IFTTT來說,其實還蠻方便的,除了提供一般的HTTP方式,還可以用終端機的方式輸入,應該是可以大大擴充物聯網小設備的限制。另外也可以結合Python Web Scapying,做更多的擴充,期待越來越多的功能被實現出來。

資料參考:
    https://sspai.com/post/39243

留言

這個網誌中的熱門文章

在 mac OS 上實現 ARP 欺騙

操作環境 攻擊電腦: IP: 192.168.0.101 Operating System: macOS High Sierra 10.13.5 Hardware: MacBook Pro (13-inch, 2017, Four Thunderbolt 3 Ports) Programming Language: Python 3.5.4 IDE: PyCharm 2018.1 WireShark: Version 2.6.0 被攻擊電腦: IP: 192.168.0.102 Operating System: Windows 10 Hardware: ASUS S550CM 路由器: IP: 192.168.0.1 說明: 當駭客的第一步,最常見的方法就是擷取別人的封包。假設A電腦連上一個未加密的網站,那這台電腦丟給這個網站的封包都會以明文傳送,這時候就很容易被有心人士竊聽封包,將你的帳號密碼全部竊取走!這也是為什麼現在越來越多網站都要提升安全性,將HTTP加密,成為HTTPS。 ARP: 全名為 Address Resolution Protocol,為 位址解析協定,在每一台電腦中都有一個ARP Table,儲存區域內的電腦 IP 及 MAC Address。通常 Host 會以廣播的方式詢問誰擁有某個 IP的實體位址,在此區域上的電腦,都會確認自己是不是與廣播中的相符,若一樣的話則回覆自己的MAC Address,反之則忽略。 而 ARP Table 儲存在 ARP Cache 中,裡面也有分動態記錄及靜態紀錄兩種: 動態記錄: 當一台電腦解析完 ARP 封包後,會將結果儲存在 ARP Cache中,以供後續使用。但為了避免網路黑洞的發生,所以紀錄的壽命時間通常為兩分鐘,若有被使用到,就會被延長為10分鐘。 靜態紀錄: 如果使用者知道對方的 IP 及 MAC Address 為何,就可以以手動的方式加入,就叫做靜態紀錄,但它的壽命比動態記錄長,只有重新開機、與動態記錄衝突、手動刪除才會消失。 設置靜態紀錄可以在終端機輸入: arp -s IP MAC 步驟: 首先,必須要先下載 Scapy,它就很像是Wireshark,一樣可以截取封包,更厲害的...

[操作記錄] 在 Mac上安裝 Nginx 以實現 HLS Stream

因為課堂需要,所以在此簡單紀錄安裝 Nginx 的過程。 首先,在 Terminal 輸入以下指令來安裝 Homebrew: $ ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install )" 若要移除安裝,則執行以下指令: $ ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/uninstall )" 升級 Homebrew: $ brew update 接著就是開始安裝 Nginx: $ brew tap denji/nginx 我們需要用到  nginx-rtmp-module,所以接著輸入 : $ brew install nginx-full --with-rtmp-module 設定 RTMP 與支援 HLS,打開位於  /usr/local/etc/nginx 的 nginx.conf 新增以下文字: 在event 跟 http 之間輸入: event{ .. } rtmp {     server {         listen 1935;         chunk_size 4000;         application hls {             live on;             hls on;             hls_path /tmp/hls;             hls_continuous on;             hls_cleanup off;...