Маршрутизация Azure IotHub не работает

У меня есть следующий запрос маршрутизации, определенный в Azure IotHub: $body.messageType="Test"

И используя Microsoft.Azure.Devices.Client" SDK Version="1.28.0"

Вот мой очень простой код на C #.

            var device = DeviceClient.CreateFromConnectionString(DeviceConnectionString);
       
            await device.OpenAsync();

            var obj = new
            {
                messageType = "Test"
            };

            var telemetryJson = JsonConvert.SerializeObject(obj);

            var message = new Message(Encoding.UTF8.GetBytes(telemetryJson));

            // Set message body type and content encoding. 
            message.ContentEncoding = "utf-8";
            message.ContentType = "application/json";

            await device.SendEventAsync(message);

Сообщение доставляется в IotHub, но маршрутизация не применяется! Есть идеи, почему?


person Mori    schedule 02.09.2020    source источник
comment
строка запроса маршрутизации в порядке. Не могли бы вы опубликовать фрагмент экрана с подробной информацией о маршруте?   -  person Roman Kiss    schedule 02.09.2020
comment
также в целях тестирования добавьте маршрутизацию сообщений телеметрии устройства (true) в большой двоичный объект хранилища. Вы должны увидеть текст сообщения в формате json, например {messageType: Test}.   -  person Roman Kiss    schedule 02.09.2020
comment
также Центр Интернета вещей создает журналы диагностики для маршрутов, которые могут помочь   -  person Helikaon    schedule 02.09.2020


Ответы (2)


Не могли бы вы попробовать это с одинарными кавычками, как это $body.messageType='Test'?

person Helikaon    schedule 02.09.2020

Я заметил, что поведение ресурса IotHub было совершенно ненормальным. Начали появляться разные типы сообщений об ошибках типа IotHub is not in an Active state вообще.

Проблема была решена после удаления и повторного создания ресурса.

person Mori    schedule 02.09.2020