IFTTT 發送 LINE 訊息通知
去年我寫過兩篇文章介紹如何自己打造 LINE 機器人,不過如果只是要發送訊息通知,實在也沒必要花這麼大功夫去打造聊天機器人,所以這篇將會透過 IFTTT 與 LINE Notify,在不用寫什麼程式的情況下,實現「觸發某件事,就自動發送 LINE 訊息」的功能。
- 2017 LINE 機器人文章:LINE BOT 實戰 ( 原理篇 )、LINE BOT 實戰 ( 聊天篇 )
- 2018 LINE 機器人新文章:實作 LINE 聊天機器人 ( Google Apps Script )
- 其他延伸閱讀:自建 LINE Notify 訊息通知
在 IFTTT 裡啟用 LINE Notify
IFTTT 是個網路服務平台,縮寫的意思是 IF ( if ) T ( this ) T ( then ) T ( that ) ,顧名思義就是「若做了什麼 ( this ) 則 ( then ) 就執行什麼 ( that )」,而在 IFTTT 的服務裡,大概也都是用這種模式在進行,IFTTT 本身沒有太特別的功能,但最厲害的地方就是它串接了許多知名平台的服務,例如 Gmail、Twitter、Facebook...等,也因為如此,你可以透過 IFTTT,用很簡單的方式串接許多社群網站所提供的服務。
連結到 IFTTT 網站:https://ifttt.com/
進入 IFTTT 網站後就是點選「Sign up」註冊帳號並登入,當然它也支援 Google 與 Facebook 的第三方登入,登入後第一頁就是瀏覽它已經能串的服務,因為我們是要串 LINE,就直接搜尋「line」並點選 LINE。
![]()
點選後可以看到一個 Connect 的按鈕,目的在於要連結 LINE 官方所提供的 Notify 通知服務,點選 Connect 就可以進行連結。
![]()
點選後頁面會導向 LINE 的網頁登入畫面,使用自己的 LINE 帳號登入,登入後點選「同意並連動」,同時在你的 LINE 好友裡,也會自動多出一個名為 LINE Notify 的好友,屆時就是這個好友會發送通知給你。
![]()
連動完成會自動跳回 IFTTT 剛剛的頁面,這時已經看不到 Connect 的字樣,點選右上方的「Settings」,可以看到服務狀態 status 已經是 active 表示啟用完成也正在運行,如果對於連動有任何疑慮,也可以隨時點選 Disconnect LINE 就能取消。
![]()
Webhooks + LINE Notify
建立好 LINE Notify 的連結後,回到 IFTTT 主畫面,點選上方「My Applets」,再點選「New Applet」建立一個新的 Applet。
![]()
點選後會看到畫面上出現一段話:if +this then that,點選前方藍色的 +this。
![]()
點選後尋找並添加所需要的服務,在搜尋的欄位輸入「webhooks」,搜尋之後點選下方圖示,添加 webhooks 服務。
![]()
點選後繼續點選「Receive a web request」,會要求輸入一個 Event Name,我在這邊使用 line 這個名稱,輸入完成按下 Create trigger,就會回到前一個畫面。
![]()
回到前一個畫面後,會發現原本的 if +this then that 變成 if webhooks then +that,點選後方的 +that。
![]()
點選後尋找並添加所需要的服務,在搜尋的欄位輸入「line」,搜尋之後點選下方 line 的圖示,添加 line 服務。
![]()
點選 Send message,可以看到發送訊息的格式,Line Notify 提供三個 Vaule,名稱分別是 Value1、Value2 和 Value3,如果要發送圖片一樣適用這三個變數,要使用變數必須用兩個大括號{{ }}括起來,如果點選 Recipient 的下拉選單,可以看到自己的 Line 群組清單,因此我們也可以指定發送訊息到什麼群組內,預設則是一對一傳送訊息。
![]()
這裡我將文字訊息改為{{Value1}},按下 Create action 建立發送 Line 訊息的行爲。
![]()
看到 If maker Event "line", then send message 這個畫面,就表示已經建立完成,準備可以開始來傳送訊息給自己。
![]()
其實這時候如果打開 LINE,應該就會看見 Line Notify 已經傳送連動成功的訊息。
![]()
用網頁傳送 LINE 訊息
點選 My Applets,選擇 Services,點選下方的 Webhooks。
![]()
打開後點選右上方的 Setting,就可以看到一串很長的網址,這串網址後方的亂碼就是金鑰,這串金鑰很重要,如果外流的話就表示任何人都可以透過你的 LINE Notify 發訊息給你。( 如果有疑慮,其實只要刪除這個 webhooks 服務,重新跑一次建立流程,就能產生新的金鑰 )
![]()
使用網頁編輯器,輸入下方的範例程式碼,在金鑰的地方填入剛剛的金鑰,執行網頁後,就會從 LINE 收到一個 Hello World 的訊息,主要的程式碼如下,在「你的 Webhook 名稱」裡填入剛剛設定的名稱 line,金鑰的部分填入金鑰即可。
https://maker.ifttt.com/trigger/你的 Webhook 名稱/with/key/你的金鑰
完整程式碼:
<html>
<head>
<meta charset="UTF-8">
<title>發送 LINE 訊息</title>
<script
src="https://code.jquery.com/jquery-3.3.1.min.js"></script>
</head>
<body>
<script>
$(function(){
$.post('https://maker.ifttt.com/trigger/line/with/key/你的金鑰',{value1:'Hello World'});
});
</script>
</body>
</html>
![]()
小結
如果已經會用 IFTTT 發送 LINE 訊息後,就可以來串接許多不同的服務,在觸發某些事件時 ( 例如氣溫太低、行事曆提醒、空氣太差...等 ) 就會自動發送訊息通知,未來有機會會再寫些串接的服務文章。