Почему задание Notification Hub не работает с WindowsregistrationDescription? - PullRequest
0 голосов
/ 26 февраля 2019

Я слежу за https://docs.microsoft.com/en-us/previous-versions/azure/azure-services/dn790624(v=azure.100)article и, похоже, не работает.У меня есть регистрация Windows на NotificationHub с PushChannelUri (я уверен, что он зарегистрирован, потому что он получает уведомление).Я пытаюсь начать простую работу (NotificationHubJobType.ImportUpsertRegistrations), чтобы обновить теги для одной регистрации.Задание запускается и завершается правильно, но у меня есть сбой txt, который содержит:

1,<WindowsRegistrationDescription xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.microsoft.com/netservices/2010/10/servicebus/connect"><RegistrationId i:nil="true" /><Tags>pippo</Tags><ChannelUri>https://db5p.notify.windows.com/?token=AwY...T0tYw</ChannelUri></WindowsRegistrationDescription>,BadRequest,Bad Format

Я также пытаюсь создать задание типа NotificationHubJobType.ImportUpdateRegistrations, но результат тот же.

В обоих тестах файлы test.json и output.txt пусты.Я создаю регистрацию, используя такой код:

RegistrationDescription[] descriptions =
            new[]
            {
                new WindowsRegistrationDescription(
                    @"https://db5p.notify.windows.com/?token=....VEyEN0WJHUFT0tYw",
                    new []{"pippo"}),

            };

У кого-то есть идея, почему импорт не работает?есть предложение, что я могу проверить?

ОБНОВЛЕНИЕ : я заметил, что статья использует только Storage и ServiceBus, но уведомления в ServiceBus устарели.Сериализация для регистраций, сделанных центром уведомлений SDK, кажется неправильной и, вероятно, это проблема.Любая идея?

ОБНОВЛЕНИЕ 01/03/2019: Я пытаюсь выполнить задание NotificationHubJobType.ExportRegistrations, и в результате получается набор регистраций в этом формате:

<RegistrationDescription xmlns:i='http://www.w3.org/2001/XMLSchema-instance' i:type='WindowsRegistrationDescription' xmlns='http://schemas.microsoft.com/netservices/2010/10/servicebus/connect'>
        <ETag>6</ETag>
        <ExpirationTime>9999-12-31T23:59:59.9999999Z</ExpirationTime>
        <RegistrationId>2050731396180973469-6098694686212631676-1</RegistrationId>
        <Tags>test</Tags>
        <ChannelUri>https://db5p.notify.windows.com/?token=AwYAAAC8ATPHnWvvWXj08AI4s...uj6MS</ChannelUri>
</RegistrationDescription>

Затем я пытаюсь выполнить задание NotificationHubJobType.ImportUpsertRegistrations, используя эту сериализацию (я создаю сериализацию самостоятельно без какого-либо SDK):

<RegistrationDescription xmlns:i="http://www.w3.org/2001/XMLSchema-instance" i:type="WindowsRegistrationDescription" xmlns="http://schemas.microsoft.com/netservices/2010/10/servicebus/connect">
    <Tags>anotherTest</Tags>
    <ChannelUri>https://db5p.notify.windows.com/?token=AwYAAAC8ATPHnWvvWXj08AI4s...uj6MS</ChannelUri>
</RegistrationDescription>

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

Спасибо, Макс

...