3

Отправка толчок уведомление от Notification Hub Azure Mobile Services на устройство IOS терпит неудачу половину времени с этой ошибкой:Azure Push-концентратор уведомления Уведомления в APNS Сбой Половину времени

The Push Notification System returned an Internal Server Error

Вот мои настройки:

  • Бесплатная пробная версия Azure
  • Песочница сертификаты загружены на Mobile
  • Service/Notification Hub App развитом с PhoneGap и встроенным USI ng Служба создания PhoneGap Adobe
  • Использование плагина Cordova (вместе со стандартным телефонным звонком PushPlugin.

Я могу использовать любую страницу DEBUG на сайте Azure, Visual Studio 2013 (Server Проводник -> Azure) или ServiceBusExplorer с открытым исходным кодом программа для отправки тест JSON сообщений Apple. Он работает, половина времени, а другая половина времени я получаю ошибку выше.

Шаги для воспроизведения:

  • Open Visual Studio -> Сервер Проводник -> Azure. Он указывает на мою пробную учетную запись.
  • Контекст-клик на моем узле уведомлений «Диагностика»
  • В разделе «Регистрация устройств» я удаляю любые записи, которые я ранее накапливал. В настоящее время нет регистрации устройств.
  • Удалить и переустановить тестовое приложение на iPhone (iOS 8)
  • Запустить тестовое приложение. В центре уведомлений появится новая регистрация. Тип «Родной». (У меня также были проблемы с «Шаблоном».)
  • Перейдите на вкладку «Отправка теста»; Получатель: трансляция; Тип сообщения: Apple (по умолчанию)
  • Я использую стандартное выборочное уведомление (но получаю аналогичные результаты с другими сообщениями JSON): {"aps":{"alert":"Notification Hub test notification"}}
  • Хит «Отправить»; Это не работает. В разделе «Message Result:» для моей единственной регистрации у меня есть это сообщение об ошибке: «Система Push Notification вернула ошибку внутреннего сервера»
  • Подождите 90 секунд, нажмите «Отправить» еще раз. Уведомление работает, оно появляется по телефону, результатом сообщения является «Уведомление было успешно отправлено в систему уведомлений о нажатии»
  • Подождите еще 90 секунд, нажмите «Отправить» еще раз. Уведомление завершается ошибкой с той же внутренней ошибкой сервера, что и в первый раз.
  • Подождите еще 90 секунд, нажмите кнопку «Отправить» еще раз. Он работает отлично, как и во второй попытке.

В целом он работает примерно в половине случаев. В приведенном выше примере он работал каждый раз, но это не всегда так - он может выполняться несколько раз подряд или сбой несколько раз подряд. Я не изменяю JSON вообще между вышеуказанными тестовыми сообщениями. Даже если я меняю JSON, я получаю тот же результат.Я получаю аналогичные результаты независимо от того, выполняю ли я тестирование через Visual Studio (выше), портал Azure (вкладка DEBUG) или через программу ServiceBusExplorer.

Что вызывает это? Как устранить эту проблему?

+0

У вас не было удачного отслеживания этого? Я получаю больше шансов на 10% на нашем узле Notify Hub, и лучше на производственном. Это похоже на проблему в Notification Hubs. –

+0

& erichedstrom Нет прогресса. Microsoft попросила меня опубликовать в MSDN (https://social.msdn.microsoft.com/Forums/en-US/0131cdd6-d326-49e8-a91f-d1b49477c9f6/push-notifications-to-apns-fail-50-of-of- the-time? forum = notificationhubs), но пока не повезло. Я думаю, что ответ должен прийти от Microsoft - я не вижу, что я могу изменить в своей настройке. –

+0

Я только что открыл билет поддержки. Я буду следить за всем, что узнаю. –

ответ

0

Возможно, вы используете свой телефон в сети Wi-Fi, так как находитесь в разработке. Если это так, вы можете проверить, что ваш маршрутизатор не блокирует использование необычных портов Apple для песочницы apns. Если это ваш случай, вы можете попробовать переадресовать порты: 2195 5223. Вы также можете попробовать отключить Wi-Fi и попробовать свою сотовую сеть.

+0

Если порты были заблокированы на конце телефона, интерфейс Azure не знал бы этого, правильно? Кроме того, он работает половину времени. –

+0

Ну почему я спрашиваю, что вы упомянули, что вы отправляете уведомления через vs и вкладку debug. Оба из них ждут возвращения всего результата уведомления. Таким образом, вы можете получить информацию о полном объеме процесса. – tezromania

+0

Спасибо за дополнительную информацию о том, как работает этот процесс. Это может объяснить, почему некоторые люди видят больше успеха в производстве, чем среды песочницы. –

Смежные вопросы