Azure通知中心随机不向IOS提供

时间:2015-02-17 09:00:11

标签: c# phonegap-pushplugin azure-notificationhub

我使用Azure通知中心将通知推送到当前安装在IOS上的Phonegap应用程序。我也会发送到Android设备,但我的问题只是关于IOS。

我的问题是消息有时无法提供。如果我连续多次发送相同的通知,那么它可能只会提供50%的时间。

这是我发送通知的代码段:

private async Task SendNotificationTemplate(string message, string title = null, int? badgeCount = null, string pageId = null, int? itemId = null, IList<string> tags = null)
    {
        var hub = creatHubClient();
        var notification = new Dictionary<string, string>();

        if (string.IsNullOrEmpty(message))
            throw new InvalidDataException("The message field is required for a notification");

        notification.Add("message", message);

        if (!string.IsNullOrEmpty(title))
            notification.Add("alert_title", title);

        if (!badgeCount.HasValue)
            badgeCount = 1;

        notification.Add("badge_number", badgeCount.ToString());

        notification.Add("page_id", !string.IsNullOrEmpty(pageId) ? pageId : string.Empty);

        notification.Add("id", itemId.HasValue ? itemId.ToString() : "0");

        if (tags == null || tags.Count == 0)
        {
            var result = await hub.SendTemplateNotificationAsync(notification);
            if (result.Success!=0)
            {
                _logger.Error("An error occurred when attempting to send a push notification:" + string.Join(",",result.Results.Select(r=>r.Outcome)));
            }
        }
        else
        {
            var result = await hub.SendTemplateNotificationAsync(notification,tags);
            if (result.Success != 0)
            {
                _logger.Error("An error occurred when attempting to send a push notification:" + string.Join(",", result.Results.Select(r => r.Outcome)));
            }
        }

    }

在仪表板监视器中有一些APNS错误,但我怎样才能找出它们是什么?

我感谢任何帮助或建议,因为这里的不一致让我有点生气。我知道推送通知不能保证送达,但Apple提供的送货率必须比我得到的好。我知道我的客户不会像现在这样接受它!

以下是Azure Notification Hub Monitor信息中心的屏幕截图:

Azure Monitor 谢谢 约翰

1 个答案:

答案 0 :(得分:0)