使用 Pushover 服務來發送訊息給手機

「推播服務」是一種讓應用程式(app)被動接收訊息的服務,例如大家手上的 LINE 電話、訊息,在長時間不使用的狀況下,如果有人打了通LINE給你,仍然可以快速的聽到響鈴聲。可以這麼快的收到訊息,就是推播的功能。

不做程式設計的人也許不瞭解這有什麼困難的,但要隨時可以接到訊息,必需要一直保持著一個網路TCP連線,這會使得手機一直無法進入省電模式,因為進入省電模式便會導致網路斷線而無法接收訊息。

這時透過各手機平台支援的「推播服務」就可以最佳化的網路設定,取得訊息通知。下面的是 Google 提供的 「Firebase Cloud Message」服務的架構圖。

建立自己的推播服務

如果使用得當,主動傳送訊息到自己的手機,是一個蠻有用的功能。比如監控股價、安全監控、部落格留言即時通知。要建立自己的的推播服務,當然可以自己申請一個 Google Firebase Cloud Message 服務,然後寫個 app,再自己架個 server 來發送通知…

如果你有相關的知識,不難,最多弄個二三天就可以了,不過現在有更快的方法。PushOver 服務,付個一百多塊,就能建立起一個個人的推播服務了。

PushOver 推播服務

在「小米手環4, 可以買嗎?我的用途給你參考 」這篇裡面,手環的其中一個用途就是接收 PushOver 發出的通知。現在我已經建置了股票申購通知與部落格留言通知。

PushOver 是一個開放的服務,個人使用的收費方式是以平台來計算。例如你使用它的 Android 手機的付費app來接收通知,那你其它所有的 Android 裝置就都可以使用不需再付費。但是如果你有另一部 iOS 手機,那就要再買 iOS 上的 app,一樣可以在所有的 iOS 上裝置都可以使用。

上面講的是接受訊息,在發送訊息的部份,一個月可以免費發送7500條訊息,對於個人來講應該已經相當足夠了。如果用戶要傳送訊息,可以透過它網頁上提供的介面來傳送,另外也可以透過 HTTPS 來發送通知,可以說非常的有彈性,不需要專用的 API Library 了。

網頁發訊介面

HTTP POST API

 

接下來,我們就以Android為例,一步步從安裝程式說起,如何利用 PushOver 來傳送訊息。

PushOver APP安裝

Play 商店安裝 Pushover,並註冊帳號。

安裝app並註冊帳號

接下來要為這個手機安裝的 app 命名,在發送訊息的時候可以選擇要發送的對象,所以這個名稱還算有點重要。

為這支電話命名

安裝完畢後就可以看到預設的訊息列表了。

預設的訊息列表

從 Pushover 網站發送訊息

為了快速測試功能,Pushover 的官網就提供了從 WEB 發送訊息的介面。

以瀏覽器開啟 Pushover 官網(https://pushover.net/),並按右上的 Login 來登入,帳號就是剛剛在手機上申請的同一個。

開始登入

登入後,官網還蠻用心的直接顯示傳訊息的功能,可能這才是最常用的功能吧。

WEB 傳訊功能

網頁的右上方有個 USER KEY 的項目,這在實際畫面會顯示你的 user id,在手機 app 上也找的到。這個在後面使用腳本來發送訊息時會用上。

這頁幾個選項可以選擇

  1. Device: 選擇要發送的對象,如果有要限定某台裝置才能收到,這邊就要修改一下。不然用預設的 “All” 就可以了。
  2. Title: 發送訊息的標題
  3. Message: 發送訊息的內容

按下 Send Notification 後,在手機應該就可以收到有新訊息的提醒,打開 PushOver app 就可看到內容了。

下方收到了訊息通知

第一個訊息就是剛發出的內容

使用腳本來發送訊息

自動發送訊息要實用,就一定要可以用腳本來執行,這樣才能在背景做一些檢查後,依狀況發送。要可以用腳本發送訊息,就要先申請一個 Pushover 的 App Token。App Token 的申請,同樣在傳送訊息頁,在最下面就可以看到了。點入後,填入簡單資料就可以申請成功。

點進連結進行申請

申請 app token

Pushover App 裝態

申請成功後,可以看到這個 app 的使用狀態,而在上方就會列出這個 App 的 Token 字串,將前面提到的 UserID 也複製下來,套用進下面的Linux腳本。執行後,就可發送訊息到手機了。

 

收到腳本發送的訊息

 

看到手機上 app 最上面的那個訊息就是由腳本發送的,而且圖示還不一樣。

 

結語

本文只介紹了如何使用推播來發送訊息,當然後面的應用才是最重要的。我目前自己是用在抽股票和部落格留言的監控程式,當有發現會賺的抽股機會或者部落格有新的留言,都可以發送訊息過來。至於這個傳訊功能對大家有沒有用呢?還是要看你的需求了~~

Leave a Reply(Name請以user_開頭,否則會被判定會垃圾息)

請輸入答案 ÷ 1 = 7