【发布时间】:2020-08-05 09:15:35
【问题描述】:
我们正在使用带有枚举的遥测属性“灯泡状态”,如下所示
"@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"
}
]
}
使磁贴在模板中显示“最后一个已知值”
当我们如下发送有效载荷时
payload = '{"on_off": %s}' % (random.choice([0, 1]))
我们正在正确显示灯泡状态,如下所示
当我们发送 没有 Bulb status(on_off) 遥测属性的有效负载时,如下所示
payload = '{"current_level": %f}' % random.randrange(10.0, 100.0)
我们将灯泡状态显示为空白,如下所示
正确的行为: Bulb 状态应显示来自 on_off 属性的最后一个已知值,并且在我们不发送该遥测属性时不应显示为空白。
这种枚举行为给我们带来了问题。请提供解决方案。
请让我知道我在哪里可以将此作为 Azure IoT Central 中的 Enum 错误发布?
【问题讨论】: