Azure IoT Central - значение Enum, отображающее пустое значение на панели инструментов - PullRequest
1 голос
/ 05 августа 2020

Мы используем свойство телеметрии «Bulb status» с перечислением, как показано ниже.

"@id": "urn:veeazigbeeappdemo:ZigbeeDeviceTemplate_12r3:on_off:1",
      "@type": "Telemetry",
      "displayName": {
        "en": "Bulb Status"
      },
      "name": "on_off",
      "schema": {
        "@id": "urn:veeazigbeeappdemo:ZigbeeDeviceTemplate_12r3:on_off:hxdsbx1pp:1",
        "@type": "Enum",
        "displayName": {
          "en": "Enum"
        },
        "valueSchema": "string",
        "enumValues": [
          {
            "@id": "urn:veeazigbeeappdemo:ZigbeeDeviceTemplate_12r3:on_off:hxdsbx1pp:On:1",
            "@type": "EnumValue",
            "displayName": {
              "en": "On"
            },
            "enumValue": "1",
            "name": "On"
          },
          {
            "@id": "urn:veeazigbeeappdemo:ZigbeeDeviceTemplate_12r3:on_off:hxdsbx1pp:Off:1",
            "@type": "EnumValue",
            "displayName": {
              "en": "Off"
            },
            "enumValue": "0",
            "name": "Off"
          }
        ]
      }

Плитка создана для отображения «Последнее известное значение» в шаблоне

Bulb status

When we send a payload as follows

payload = '{"on_off": %s}' % (random.choice([0, 1]))

we are getting the Bulb status correctly displayed as follows

Bulb status on

when we send a payload which doesn't have Bulb status(on_off) telemetry property in it as below

payload = '{"current_level": %f}' % random.randrange(10.0, 100.0)

we are getting the Bulb status being shown as blank as follows

Пустой статус лампы

Правильное поведение: в статусе Bulb должно отображаться последнее известное значение из свойства on_off и не должно отображаться как пустое, если мы не отправляем это свойство телеметрии.

Этот тип поведения с enum вызывает у нас проблему. Предоставьте решение, чтобы решить эту проблему.

Сообщите мне, где я могу опубликовать это как ошибку Enum в Azure IoT Central?

1 Ответ

1 голос
/ 05 августа 2020

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

В качестве временного решения: можете ли вы изменить тип на SemanticType / State? История состояний работает хорошо:

enter image description here

enter image description here

The feedback to the IoT Central team is здесь .

...