Пуши в Windows Phone 8.1
Итак, для доставки пушей у вас должен быть свой сервер (если вы не используете Azure), который авторизуется на WNS, затем телефоны передают серверу URI, и наконец, ваш сервер, когда необходимо, шлёт сообщения на телефоны по полученным URI
Стоит помнить, что:
1. URI периодически меняется и его нужно обновлять
2. При авторизации сервера указывается именно SID приложения, а не client_id
Скачать «заменитель» сервера для отправки пушей на телефон можно тут:
https://yadi.sk/d/WS6QmSTTcke7t
Получение Uri на телефоне:
private async void OpenChannelAndRegisterTask() { // Open the channel. See the "Push and Polling Notifications" sample for more detail try { if (rootPage.Channel == null) { PushNotificationChannel channel = await PushNotificationChannelManager.CreatePushNotificationChannelForApplicationAsync(); String uri = channel.Uri; rootPage.Channel = channel; // This event comes back in a background thread, so we need to move to the UI thread to access any UI elements await _dispatcher.RunAsync(CoreDispatcherPriority.Normal, () => { OutputToTextBox(uri); RootPage.NotifyUser("Channel request succeeded!", NotifyType.StatusMessage); }); } } catch (Exception ex) { rootPage.NotifyUser("Could not create a channel. Error number:" + ex.Message, NotifyType.ErrorMessage); } }
Дополнительно:
How to write a background task for raw push notifications (HTML)