簡體   English   中英

向目標設備發送推送通知

[英]Sending push notifications to a targeted device

我有一個為在線商店創建的移動應用程序(iOS 和 Android)。 此特定版本的應用程序僅供賣家使用。 其中有一個部分用作幫助台。 基本上買家可以開票,向賣家發送消息等。所以我想要做的是每次當買家這樣做時,賣家應該在他的設備上收到推送通知。

保存買家、賣家和其他一切記錄的數據庫在單獨的服務器上運行。 我可以有某種 cron 工作來定期檢查買家打開的新案例。 我希望使用Parse來處理推送通知。

在此處輸入圖片說明

現在我遇到的問題是如何將我的數據庫服務器與 Parse 相關聯。

我目前的計划是這樣的。

在此處輸入圖片說明

  1. 應用程序啟動,賣家首次登錄。 Parse SDK 向其服務器注冊設備。 除此之外,使用單獨的 Web 服務,我希望保存 Parse 生成的唯一 ID(經過研究,我發現合適的唯一 ID 稱為Installation ID )以及我的數據庫中登錄的賣家 ID。

  2. 當 cron 作業找到一個打開的案例時,它會檢索它應該去的賣家 ID。 連同它,安裝 ID。

  3. 我的服務器發出一個 HTTP 請求,以使用 Parse 的 REST API 向具有該安裝 ID 的設備發布推送通知。

一題。 他們沒有在他們的文檔中指定傳遞安裝 ID 的方法。

我想知道這是否可能? 或者如果有更好的方法來解決這個問題?

很確定這是可能的。 首先,你可以得到installationId通過PFInstallation

PFInstallation.currentInstallation().installationId // swift

或者

[PFInstallation currentInstallation].installationId  // Objective-C

不知道android,但可能類似

ParseInstallation.getCurrentInstallation().getInstallationId() // Java

https://parse.com/docs/osx/api/Classes/PFInstallation.html https://parse.com/docs/android/api/com/parse/ParseInstallation.html

發送推送

然后您實際上必須發送推送:查看“使用高級定位”下的Parse REST 指南

您可以使用如下所示的 curl 查詢:

curl -X POST -H "X-Parse-Application-Id: %appId%" -H "X-Parse-REST-API-Key: %api key%" -H "Content-Type: application/json" -d '{ "where": { "installationId": "%installationId%" }, "data": { "alert": "The Giants scored a run! The score is now 2-2." } }' https://api.parse.com/1/push

這里的重要部分是{ "where": { "installationId": "%installationId%" }它將推送消息僅發送到與查詢匹配的安裝 - 正是具有給定 ID 的安裝。

我剛剛嘗試並僅在特定設備上收到推送消息:)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM