你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

如何在 Azure IoT 中心内使用设备孪生标记来管理设备

本文介绍如何使用设备孪生标记通过标记来管理 IoT 设备

设备孪生标记是有助于整理设备的强大工具。 其作用在 IoT 解决方案中有多种类型的设备时尤为重要,可以使用标记来设置类型、位置等。例如:

{
    "deviceId": "mydevice1",
    "status": "enabled",
    "connectionState": "Connected",
    "cloudToDeviceMessageCount": 0,
    "authenticationType": "sas",
    "tags": {
        "deploymentLocation": {
            "building": "43",
            "floor": "1"
        },
		"deviceType":"HDCamera"
    },
    "properties": {
     ...
    }
}

先决条件

使用 Azure 门户添加和查看设备孪生标记

此部分介绍如何使用 Azure 门户创建 IoT 中心。

  1. 登录到 Azure 门户并转到 IoT 中心。

  2. 选择左侧导航栏中的“设备”选项卡。

  3. 选择所需设备,然后选择“分配标记”。

    选择要分配标记的设备的屏幕截图。

  4. 在打开的视图中可以看到该设备已有的标记。 若要添加新的基本标记,请提供标记的名称和值。 可在标记和属性格式中查看名称/值对的格式。 选择“保存”以保存标记。

    将标记分配到设备屏幕的屏幕截图。

  5. 保存后,可以通过再次选择“分配标记”查看已添加的标记。

    查看已添加到设备的标记的屏幕截图。

添加及查看嵌套标记

  1. 按照以上示例,可以通过选择“分配标记”中的“高级”选项卡来添加嵌套标记,并添加包含两个值的嵌套 json 对象。
    {
        "deploymentLocation": {
            "building": "43",
            "floor": "1"
        }
    }
    
  2. 选择“保存”将嵌套标记添加到设备的屏幕截图。
  3. 再次选择设备,并选择“分配标记”以查看新添加的标记查看设备的嵌套标记的屏幕截图。

使用设备孪生标记筛选设备

设备孪生标记能很好地按类型、位置等信息对设备进行分组,并且你可以通过筛选设备标记来管理自己的设备。

  1. 选择“+ 添加筛选器”,然后选择“设备标记”作为筛选器类型
  2. 输入所需的标记名称和值,选择“应用”以检索符合条件的设备列表通过标记筛选设备的屏幕截图。

使用 Azure 门户更新和删除多个设备的设备孪生标记

  1. 选择两个或更多设备,然后选择“分配标记”。
  2. 可在打开的面板中更新现有标记:在“名称”字段中键入目标标记名称,并在“值”字段中键入新字符串。
  3. 若要删除多个设备的标记,请在“名称”字段中键入目标标记名称,然后选择“删除标记”按钮。 标出要删除的标记的屏幕截图。
  4. 选择“保存”,即可从设备中删除名称匹配的标记。

使用 Azure CLI 管理设备孪生标记

以下部分介绍使用 Azure CLI 进行标记的几个示例。 有关设备孪生 CLI 的完整参考信息

  1. 在命令提示符中,运行 login 命令

    az login
    

    按照说明使用代码进行身份验证,并通过 Web 浏览器登录 Azure 帐户。

  2. 如果有多个 Azure 订阅,登录 Azure 可获得与凭据关联的所有 Azure 帐户的访问权限。 请使用 az account list 查看帐户的完整列表:

    az account list
    

    使用以下命令,选择想要用于运行命令以创建 IoT 中心的订阅。 可使用上一命令输出中的订阅名称或 ID:

    az account set --subscription {your subscription name or id}
    
  3. 以下命令启用文件通知,将文件通知属性设置为默认值。 (文件上传通知的生存时间设为一小时,锁定持续时间设为 60 秒。)

    az iot hub device-twin update -n {iothub_name} \
        -d {device_id} --tags '{"country": "USA"}'
    
  4. 通过导入 json 文件或直接将 json 添加到输入来添加复杂的嵌套标记:

    az iot hub device-twin update --name {your iot hub name} \
        -d {device_id} --tags /path/to/file
    
    az iot hub device-twin update --name {your iot hub name} \
        -d {device_id} --tags '{"country":{"county":"king"}}'
    
  5. 对现有标记使用命令以更新其值:

    az iot hub device-twin update --name {your iot hub name} \
        -d {device_id} --tags '{"country": "Germany"}'
    
  6. 以下命令通过将该值设置为 null 来移除已添加的标记。

    az iot hub device-twin update --name {your iot hub name} \
        -d {device_id} --tags '{"country": null}'
    

注意

如果使用 Powershell、CloudShell 或 Powershell 模式,需要添加正斜杠“\”来转义所有双引号。 示例:--tags '{\"country\":\"US\"}'

使用 Azure CLI 创建作业来设置标记

有关 IoT 中心作业 CLI 的完整参考信息

后续步骤

了解设备孪生后,可以根据兴趣参阅以下 IoT 中心开发人员指南主题:

要尝试本文中介绍的一些概念,请参阅以下 IoT 中心教程: