你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
Devices - Replace Twin
替换设备孪生的标记和所需属性。 有关详细信息,请参阅https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-device-twins。
PUT https://fully-qualified-iothubname.azure-devices.net/twins/{id}?api-version=2021-04-12
URI 参数
名称 | 在 | 必需 | 类型 | 说明 |
---|---|---|---|---|
id
|
path | True |
string |
设备的唯一标识符。 |
api-version
|
query | True |
string |
Api 的版本。 |
请求头
名称 | 必需 | 类型 | 说明 |
---|---|---|---|
If-Match |
string |
表示设备孪生的弱 ETag 的字符串,根据 RFC7232。 它确定是否应执行替换操作。 |
请求正文
名称 | 类型 | 说明 |
---|---|---|
authenticationType |
enum:
|
设备使用的身份验证类型。 |
capabilities |
设备上启用的功能的状态。 |
|
cloudToDeviceMessageCount |
integer |
发送的云到设备的消息数。 |
connectionState |
enum:
|
设备的连接状态。 |
deviceEtag |
string |
表示设备的 ETag 的字符串,根据 RFC7232。 |
deviceId |
string |
IoT 中心标识注册表中设备的唯一标识符。 它是一个区分大小写的字符串, (最多 128 个字符长) ASCII 7 位字母数字字符, 以及以下特殊字符 {'-', ':', '.', '+', '%', '_', '#', '*', '?', '!', ' (', ') ', ',', '=', '@', ';', '$', '''}。 |
deviceScope |
string |
设备的范围。 |
etag |
string |
表示设备孪生的 ETag 的字符串,根据 RFC7232。 |
lastActivityTime |
string |
设备上次连接、接收或发送消息的日期和时间。 日期和时间以 UTC 格式ISO8601日期/时间格式分隔,例如 2015-01-28T16:24:48.789Z。 如果设备使用 HTTP/1 协议执行消息传送操作,则不会更新此值。 |
moduleId |
string |
IoT 中心标识注册表中模块的唯一标识符。 它是一个区分大小写的字符串, (最多 128 个字符长) ASCII 7 位字母数字字符, 以及以下特殊字符 {'-', ':', '.', '+', '%', '_', '#', '*', '?', '!', ' (', ') ', ',', '=', '@', ';', '$', '''}。 |
parentScopes |
string[] |
上层边缘设备的范围(如果适用)。 仅适用于边缘设备。 |
properties |
孪生体的所需属性和报告属性。 |
|
status |
enum:
|
设备的启用状态。 如果禁用,设备将无法连接到服务。 |
statusReason |
string |
设备当前状态的原因(如果有)。 |
statusUpdateTime |
string |
上次更新设备状态的日期和时间。 |
tags |
object |
由解决方案后端读取和写入的键值对的集合。 它们对设备应用不可见。 它们的密钥是 UTF-8 编码的,区分大小写,最大长度为 1KB。 允许的字符排除 (段 C0 和 C1) 、“.”、“$”和空格的 UNICODE 控制字符。 值为 JSON 对象,长度最大为 4KB。 |
version |
integer |
设备孪生的版本,包括标记和所需属性 |
x509Thumbprint |
设备的 X509 指纹。 |
响应
名称 | 类型 | 说明 |
---|---|---|
200 OK |
没问题。 |
定义
名称 | 说明 |
---|---|
Device |
设备上启用的功能的状态。 |
Twin |
设备或模块的状态信息。 在IoT 中心中创建或删除相应的设备/模块标识时,会隐式创建和删除此标识。 |
Twin |
孪生体的所需属性和报告属性。 对象的最大深度为 10。 |
X509Thumbprint |
DeviceCapabilities
设备上启用的功能的状态。
名称 | 类型 | 说明 |
---|---|---|
iotEdge |
boolean |
确定设备是否为边缘设备的属性。 |
Twin
设备或模块的状态信息。 在IoT 中心中创建或删除相应的设备/模块标识时,会隐式创建和删除此标识。
名称 | 类型 | 说明 |
---|---|---|
authenticationType |
enum:
|
设备使用的身份验证类型。 |
capabilities |
设备上启用的功能的状态。 |
|
cloudToDeviceMessageCount |
integer |
发送的云到设备的消息数。 |
connectionState |
enum:
|
设备的连接状态。 |
deviceEtag |
string |
表示设备的 ETag 的字符串,根据 RFC7232。 |
deviceId |
string |
IoT 中心标识注册表中设备的唯一标识符。 它是一个区分大小写的字符串, (最多 128 个字符长) ASCII 7 位字母数字字符, 以及以下特殊字符 {'-', ':', '.', '+', '%', '_', '#', '*', '?', '!', ' (', ') ', ',', '=', '@', ';', '$', '''}。 |
deviceScope |
string |
设备的范围。 |
etag |
string |
表示设备孪生的 ETag 的字符串,根据 RFC7232。 |
lastActivityTime |
string |
设备上次连接、接收或发送消息的日期和时间。 日期和时间以 UTC 格式ISO8601日期/时间格式分隔,例如 2015-01-28T16:24:48.789Z。 如果设备使用 HTTP/1 协议执行消息传送操作,则不会更新此值。 |
moduleId |
string |
IoT 中心标识注册表中模块的唯一标识符。 它是一个区分大小写的字符串, (最多 128 个字符长) ASCII 7 位字母数字字符, 以及以下特殊字符 {'-', ':', '.', '+', '%', '_', '#', '*', '?', '!', ' (', ') ', ',', '=', '@', ';', '$', '''}。 |
parentScopes |
string[] |
上层边缘设备的范围(如果适用)。 仅适用于边缘设备。 |
properties |
孪生体的所需属性和报告属性。 |
|
status |
enum:
|
设备的启用状态。 如果禁用,设备将无法连接到服务。 |
statusReason |
string |
设备当前状态的原因(如果有)。 |
statusUpdateTime |
string |
上次更新设备状态的日期和时间。 |
tags |
object |
由解决方案后端读取和写入的键值对的集合。 它们对设备应用不可见。 它们的密钥是 UTF-8 编码的,区分大小写,最大长度为 1KB。 允许的字符排除 (段 C0 和 C1) 、“.”、“$”和空格的 UNICODE 控制字符。 值为 JSON 对象,长度最大为 4KB。 |
version |
integer |
设备孪生的版本,包括标记和所需属性 |
x509Thumbprint |
设备的 X509 指纹。 |
TwinProperties
孪生体的所需属性和报告属性。 对象的最大深度为 10。
名称 | 类型 | 说明 |
---|---|---|
desired |
object |
所需属性键值对的集合。 密钥采用 UTF-8 编码,区分大小写,最大长度为 1KB。 允许的字符排除 (段 C0 和 C1) 、“.”、“$”和空格的 UNICODE 控制字符。 所需的 porperty 值为 JSON 对象,长度最大为 4KB。 |
reported |
object |
报告的属性键值对的集合。 密钥采用 UTF-8 编码,区分大小写,最大长度为 1KB。 允许的字符排除 (段 C0 和 C1) 、“.”、“$”和空格的 UNICODE 控制字符。 报告的属性值是 JSON 对象,长度最大为 4KB。 |
X509Thumbprint
名称 | 类型 | 说明 |
---|---|---|
primaryThumbprint |
string |
X509 客户端证书主指纹。 |
secondaryThumbprint |
string |
X509 客户端证书辅助指纹。 |