Регистрация канала URI с помощью облачного сервиса
Согласно этому видео (между 9:40 и 12:50)
https://youtu.be/GwoAjG_tgGQ?t=9m40s
Докладчик объясняет, как получить URI канала на шаге 1., а затем на шаге 2 - как зарегистрироваться в облачной службе. Однако мне неясно, какой сценарий он изображает для связи канала uri пользователя с некоторым контекстом.
Например, скажем, пользователь хочет получать уведомления об уведомлении для определенных новостных статей, задолго до отправки uri канала в облачную службу, как вы объединяете это с контекстом (то есть новостными статьями, о которых конкретный пользователь хочет получать уведомления)?
Я думал - вы можете отправить URI канала в облачный сервис вместе с настройками - вот так
{
channelURI: uri,
notificationSettings: {whatever setting options user entered in the app settings go hers - that the cloud service understands to deliver notification to this Uri}
}
1 ответ
Однако мне неясно, какой сценарий он изображает для связи канала uri пользователя с некоторым контекстом.
Согласно вашему описанию, я посмотрел видео, предоставленное вами для доставки уведомлений с помощью WNS. Насколько я понимаю, вам нужно хранить URI канала с одним пользователем в бэкэнде облачной службы (например, использовать хранилище таблиц Azure для хранения записи) и обновлять облачный сервер при изменении URI.
Для отдельного пользователя, который подписывается на конкретные действия, вам необходимо сохранить действия, подписанные пользователем, с URI канала этого пользователя в вашем внутреннем хранилище, а затем, когда инициируются действия подписанного пользователя, вы можете вызвать HTTP-запрос для URI канала пользователя с конкретной полезной нагрузкой и кодом авторизации для отправки push-уведомления.
Кроме того, для простого способа вы могли бы использовать Notification Hubs следующим образом Notifications.Instance.Hub.SendWindowsNativeNotificationAsync(toast, userTag)
толкать уведомления для конкретных пользователей. Для более подробной информации, вы можете обратиться к этому официальному учебнику.