我在node.js中構建了一個命令行應用程序,並且想要接收GCM推送通知(命令行應用程序將與iOS的相同服務集/ Android應用程序使用,因此希望使用相同的通知服務)。在node.js中接收GCM推送通知應用
鑑於GCM可以在iOS上使用(因此不是Android特有的),我希望它也可以在node.js中使用。
我見過很多關於的文章,發送來自node.js的推送通知,但是在接收端沒有找到關於使用node.js的任何內容。
我在node.js中構建了一個命令行應用程序,並且想要接收GCM推送通知(命令行應用程序將與iOS的相同服務集/ Android應用程序使用,因此希望使用相同的通知服務)。在node.js中接收GCM推送通知應用
鑑於GCM可以在iOS上使用(因此不是Android特有的),我希望它也可以在node.js中使用。
我見過很多關於的文章,發送來自node.js的推送通知,但是在接收端沒有找到關於使用node.js的任何內容。
我不認爲這有可能(以簡單的方式)......
的Android/iOS版具有與操作系統與GCM通信服務的背後...
如果你想運行一個CLI工具,你需要在操作系統(Linux,Windows Mac)上實現一個服務,以便它能夠接收通知。
謝謝,@盧卡斯片山。所有iOS設備上是否都有內置的GCM服務?我假設它不是來自Apple,它只有在安裝了GCM sdk的應用程序時纔會出現。 – skb
它可能是類似的東西......我是一個Android開發人員...不太瞭解ios ...但假設他們是相似的...我認爲ios有一個服務與服務器通信像GCM的方式...... –
GCM向通過推送通知服務器註冊時從iOS/Android設備生成的設備令牌發送通知。如果您正在考慮收到沒有設備令牌的通知,則這基本上是不正確的。
我沒有說我想這樣做沒有設備令牌。 :)我認爲這將是必要過程的一部分。 – skb
我覺得如果你需要發送推送通知,以iOS和Andriod的再FCM是更好然後GCM使用本
router.post('/pushmessage', function (req, res) {
var serverKey = '';//put server key here
var fcm = new FCM(serverKey);
var token = "";// put token here which user you have to send push notification
var message = {
to: token,
collapse_key: 'your_collapse_key',
notification: {title: 'hello', body: 'test'},
data: {my_key: 'my value', contents: "abcv/"}
};
fcm.send(message, function (err, response) {
if (err) {
res.json({status: 0, message: err});
} else {
res.json({status: 1, message: response});
}
});
});
我相信你可以使用勞務工。
推送是基於服務人員,因爲服務人員在後臺操作。這意味着唯一的時間碼是針對推送通知運行的(換句話說,電池使用的唯一時間)是用戶通過單擊或關閉通知與通知進行交互的時間碼。如果您不熟悉它們,請查看服務人員介紹。當我們向您展示如何實現推送和通知時,我們將在後面的章節中使用服務工作者代碼。
所以基本上有一個後臺服務,等待推,這就是你打算建立。
兩種技術
推送和通知使用不同但互補的的API:推入時調用服務器提供信息服務工作者;通知是服務工作者或網頁腳本向用戶顯示信息的動作。
self.addEventListener('push', function(event) {
const promiseChain = getData(event.data)
.then(data => {
return self.registration.getNotifications({tag: data.tag});
})
.then(notifications => {
//Do something with the notifications.
});
event.waitUntil(promiseChain);
});
您在 「源」 應用程序服務器的控制權? –