Azure通知中心与APNS

时间:2015-04-02 18:19:06

标签: ios azure notifications push-notification azure-mobile-services

我必须在将列插入表格时从azure数据库列表向特定用户发送推送通知。我不确定我应该使用哪种方式直接使用APNS或通知中心?

1)如果我使用azure中的直接APNS(在插入查询下面),在表TODOITEM中插入列时,我会得到推送通知,但What should i do to send it to specific user from table我想出null应该用令牌替换我在哪里获得特定用户的支持

 function insert(item, user, request) {
request.execute();

setTimeout(function() {
    push.apns.send(null, {
        alert: "Alert: " + item.text,
        payload: {
            inAppMessage: "Hey, a new item arrived: '" + item.text + "'"
        }
    });
}, 2500);}

2)如果我使用通知中心,我甚至无法在第一种情况下在表格中插入列时使用推送通知。 在IOS方面,我使用代码作为通知中心:

SBNotificationHub* hub = [[SBNotificationHub alloc] initWithConnectionString:
                          @"..
[hub registerNativeWithDeviceToken:deviceToken tags:nil completion:^(NSError* error) {
    if (error != nil) {
        NSLog(@"Error registering for notifications: %@", error);
    }
}];

如何在表格插入时发送通知,如同在案例1中发生的那样,以及如何发送给表格的特定用户(有什么方法可以查询表格并发送)

请你能回答这两个案件。

1 个答案:

答案 0 :(得分:0)

您需要使用标签。标签可以唯一标识设备(唯一ID)或一组设备(例如:国家,团队等)。

在您的iOS代码中,您当前将nil传递给tags参数。将其更改为唯一ID但不使用设备令牌。我只是丢了一整天弄清楚它太长了但是如果用作标签就不会产生任何错误。去搞清楚!我正在使用每次启动应用程序时生成的GUID,并将其存储在后端。

在您的JS代码中,将null替换为唯一ID。您可以使用字符串(而不是数组)指定多个标记,这些标记用逗号分隔标记而不是空格。

在门户网站中,您可以打开Service Hub页面并使用调试选项卡使用标记发送测试通知。