Windows Phone 7 Push-уведомления не отображаются на моем телефоне при использовании службы PHP - PullRequest
2 голосов
/ 21 июля 2011

У меня есть некоторые проблемы с моим php-сервисом.Я использую php для отправки обновлений Tile и запросов на обновление Toast в MS Notification Service.После первого запроса в ответ у меня есть следующие заголовки:

URL: http://db3.notify.live.net/throttledthirdparty/01.00/AAHFGdPCYDOUSbbzeTpjKOMZAgAAAAADAQAAAAQUZm52OjIzOEQ2NDJDRkI5MEVFMEQ

ОТВЕТ:

HTTP/1.1 200 OK
Cache-Control: private
Server: Microsoft-IIS/7.5
X-DeviceConnectionStatus: Connected
X-NotificationStatus: Received
X-SubscriptionStatus: Active 
X-MessageID: da8aa692-e9cd-682b-fe1c-22ffe7379414
ActivityId: cd9c8b0b-26db-4eac-835d-9f9505d7a381 
X-Server: DB3MPNSM016
X-AspNet-Version: 4.0.30319 
X-Powered-By: ASP.NET
Date: Wed, 20 Jul 2011 11:21:42 GMT
Content-Length: 0

Array ( [X-SubscriptionStatus] => Active [X-NotificationStatus] => Received [X-DeviceConnectionStatus] => Connected )

Но в моем приложении WP7 у меня ничего нет.Когда я снова пытаюсь обновить плитку:

URL: http://db3.notify.live.net/throttledthirdparty/01.00/AAHFGdPCYDOUSbbzeTpjKOMZAgAAAAADAQAAAAQUZm52OjIzOEQ2NDJDRkI5MEVFMEQ

ОТВЕТ:

HTTP/1.1 404 Not Found
Cache-Control: private
Content-Type: text/html
Server: Microsoft-IIS/7.5
X-DeviceConnectionStatus: Disconnected
X-NotificationStatus: Dropped 
X-SubscriptionStatus: Expired
X-MessageID: {B6AAC154-DA37-277F-14FE-9F76365ACDD1}
ActivityId: f6b6a06b-a836-449c-9c9b-dc3033850981
X-Server: DB3MPNSM033 
X-AspNet-Version: 4.0.30319
X-Powered-By: ASP.NET
Date: Wed, 20 Jul 2011 11:29:34 GMT
Content-Length: 1245 

Похоже, что после первого запроса мой URL был удален.

У меня нет проблем в моем приложении WP7, потому что при использовании WindowsService все работает нормально.

Кажется, что моя проблема похожа на проблему [вопрос]: Windows Phone 7 Push-уведомления не отображаютсяНа моем телефоне

Ответы [ 2 ]

2 голосов
/ 24 января 2012

Внимательно проверьте ваш XML.У меня точно такое же поведение с незамкнутым тегом.

0 голосов
/ 27 марта 2013

Потратив некоторое время, пытаясь исправить XML, в котором нет ничего неправильного (из-за ответов, которые предположили, что код ошибки 404 вызван неверным XML), я чувствую необходимость поделиться своими выводами.

Отправканеверный XML в уведомлении в первый раз не будет сразу идентифицирован в ответе (т. е. ответ будет 200 / Получен / Активен / Подключен, даже если уведомление не достигнет устройства).

ОднакоВ следующий раз, когда вы попытаетесь отправить уведомление на этот канал (имеет ли он действительный или недействительный XML), вы обнаружите, что канал больше не является действительным (т. е. ответ будет 404).

Канал становится недействительным из-за ранее отправленного недействительного сообщения.

Это означает, что если вы получаете эту ошибку, вы должны сначала получить новый канал уведомлений (запустив ваше приложение, которое должно инициировать подписку на службу MPN).).

Только тогда вы должны проверить правильность вашего XML и попытаться отправить уведомление новомуhannel.На этот раз вы снова получите статус 200, и единственный способ узнать, был ли XML действительным, - это проверить, поступило ли уведомление на устройство.

...