是否可以使用地理位置作为条件进行通知



示例:安排15分钟的通知并保存用户的位置。

如果用户离开半径,则不会发送通知。

可以使用onsignal或仅通过核心异评申请来执行此操作?

var notificationObj = {
                contents: {
                    en: "asdasdasd"
                },
                include_player_ids: [playerId],
                send_after: "2017-02-15 20:42:00 GMT-0200",
            }
window.plugins.OneSignal.postNotification(notificationObj,
    function(successResponse) {
        console.log("Notification Post Success:", successResponse);
    },
    function (failedResponse) {
        console.log("Notification Post Failed: ", failedResponse);
        alert("Notification Post Failed:n" + JSON.stringify(failedResponse));
        }
    )
 })

在此之前,我将保存当前位置,在发送时,我将比较该位置是否在半径1公里内。如果是,我会发送它,如果不是,我不会发送

有两种类型的通知:本地通知和推送通知。本地通知像警报一样工作(即我想在上午9点醒来),并且可以在指定的时间在本地保存和启动它们,而无需任何Internet连接。对于此类通知,您可以使用本地通知插件。第二种情况,即推送通知,(基本上是...)通过Internet通过Internet适当地从您的服务器发送到用户应用程序。因此,对于您的具体情况,如果我有您的需求,则可以:

  1. 获取您的实际位置和时机,将所有这些数据发送到服务器
  2. 保存(服务器端)这些数据并设置一个时间(15分钟)以发送推送通知
  3. 15分钟后,没有客户端应用程序的信息,请发送推送通知。

如果用户离开圆形半径,请向您的服务器发送一条消息,并告诉"我不在圆圈,不要向我发送推送通知"。您可以决定服务器端,以停止进一步的通知发送。

所以,就您的情况而言,我只使用推送通知。

小缺点:如果用户松开连接并离开圆圈,则不会将客户端消息发送到服务器,并且服务器不会被提醒,因此它将通知将通知发送给用户。无论如何,您可以管理客户端,这种情况避免它。

编辑:您还可以使用本地通知作为警报来管理所有内容,并且根据需要完全使用推送通知。我不会使用两个系统。

最新更新