2017-01-12 3 views
0

Я разрабатываю приложение WinRT на месте и хотел бы отправлять push-уведомления, когда доступно новое обновление (поскольку это приложение на месте, установка для процесса требуется настраиваемый загрузчик, а не приложение Windows Store).Использовать служебную шину в качестве обходного метода push-уведомления (за исключением Notification Hub)

Тем не менее, я пытаюсь оборачивать голову тем, как должна идеально функционировать такая система.

Возможно, я мог создать службу, которая возвращает номер последней версии, и приложение будет периодически опросить службу для этой информации. Это было бы легко реализовать, но это похоже на очень уродливый подход (необходимость отправки постоянных запросов для последней версии не кажется элегантной).

У меня есть сила Azure в моем распоряжении. Очевидно, что предпочтительным был бы Notification Hub. ОДНАКО, я не собираюсь получать учетную запись Windows Store исключительно для разработки «частного» приложения на месте. Поэтому использование Notification Hub - это не-go.

Я думал об использовании тем. Это БУДЕТ работать, но каждый клиент, вероятно, должен быть добавлен в качестве подписчика. Хотя технически это возможно, административные накладные расходы могут стать серьезной проблемой. Я также думал о динамическом создании подписчиков с помощью самого приложения WinRT. Однако SDK (Azure Messaging Managed) для обработки слишком старый и всегда выдает ошибку (неверный формат даты, который, по-видимому, был изменен в какой-то момент) при создании подписчиков. Единственный «текущий» пакет из MS, по-видимому, относится к полной платформе .NET, а не к ограниченному экземпляру WinRT.

Я ищу способы решения этой проблемы. Либо новый, правильный SDK (который может обрабатывать списки и создавать подписки, а также получать тему), или, возможно, совершенно другой подход к проблеме.

Примечание. Мне еще не нужен код. Псевдокод или просто описание того, как будет работать связь, должно быть достаточно.

ответ

0

Для ограниченного масштаба развертывания Темы сервисной шины вполне могут быть приемлемым выбором. Или вы можете взглянуть на концентратор IoT как на альтернативный канал уведомлений.

Новый клиент SDK для служебной шины для .NET Standard живет в этом репо, но мы пока не создаем двоичные файлы: https://github.com/Azure/azure-service-bus-dotnet

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