通过 API 在 Azure 数字孪生中创建多个孪生
Create multiple twins in Azure Digital Twin via API
我正在尝试使用 Azure Digital Twins API 创建我上传的模型的双胞胎。到目前为止,我可以根据 API 请求为每个模型成功创建一个双胞胎。
有没有办法在 1 个请求中从多个模型创建多个孪生?
到目前为止,我已尝试将以下内容的各种迭代解析为 JSON 有效负载。
{"digitalTwinsGraph": {
"digitalTwins": [
{
"$dtId": "Building1",
"$etag": "W/\"28bcd6a5-f0ab-477c-b314-a11193d2bf61\"",
"address": {
"$metadata": {}
},
"area": {
"$metadata": {}
},
"capacity": {
"$metadata": {}
},
"occupancy": {
"$metadata": {}
},
"temperature": {
"$metadata": {}
},
"humidity": {
"$metadata": {}
},
"CO2": {
"$metadata": {}
},
"$metadata": {
"$model": "dtmi:digitaltwins:rec_3_3:core:Building;1"
}
},
{
"$dtId": "Floor4",
"$etag": "W/\"c34f7f70-2511-4299-bb10-0b5a17ee39cd\"",
"area": {
"$metadata": {}
},
"capacity": {
"$metadata": {}
},
"occupancy": {
"$metadata": {}
},
"temperature": {
"$metadata": {}
},
"humidity": {
"$metadata": {}
},
"CO2": {
"$metadata": {}
},
"$metadata": {
"$model": "dtmi:digitaltwins:rec_3_3:core:Level;1"
}
},
{
"$dtId": "Office",
"$etag": "W/\"ce195644-3174-4a61-ac37-00d8a0f95713\"",
"area": {
"$metadata": {}
},
"capacity": {
"$metadata": {}
},
"occupancy": {
"$metadata": {}
},
"temperature": {
"$metadata": {}
},
"humidity": {
"$metadata": {}
},
"CO2": {
"$metadata": {}
},
"$metadata": {
"$model": "dtmi:digitaltwins:rec_3_3:core:Room;1"
}
},
{
"$dtId": "MainWorkingSpace",
"$etag": "W/\"507e727c-6a10-45c2-8293-84817e37981b\"",
"area": {
"$metadata": {}
},
"capacity": {
"$metadata": {}
},
"occupancy": {
"$metadata": {}
},
"temperature": {
"$metadata": {}
},
"humidity": {
"$metadata": {}
},
"CO2": {
"$metadata": {}
},
"$metadata": {
"$model": "dtmi:digitaltwins:rec_3_3:core:Zone;1"
}
},
{
"$dtId": "SmallMeetingRoom",
"$etag": "W/\"ac3ed267-0320-46dc-9247-ed93ef81bfcd\"",
"area": {
"$metadata": {}
},
"capacity": {
"$metadata": {}
},
"occupancy": {
"$metadata": {}
},
"temperature": {
"$metadata": {}
},
"humidity": {
"$metadata": {}
},
"CO2": {
"$metadata": {}
},
"$metadata": {
"$model": "dtmi:digitaltwins:rec_3_3:core:Zone;1"
}
},
{
"$dtId": "BigMeetingRoom",
"$etag": "W/\"fb77e308-0a30-4a46-a7a3-c7bf7306af38\"",
"area": {
"$metadata": {}
},
"capacity": {
"$metadata": {}
},
"occupancy": {
"$metadata": {}
},
"temperature": {
"$metadata": {}
},
"humidity": {
"$metadata": {}
},
"CO2": {
"$metadata": {}
},
"$metadata": {
"$model": "dtmi:digitaltwins:rec_3_3:core:Zone;1"
}
},
{
"$dtId": "Ground",
"$etag": "W/\"4a0f4290-9eab-4985-9c13-51ecb2f6e7ae\"",
"area": {
"$metadata": {}
},
"capacity": {
"$metadata": {}
},
"occupancy": {
"$metadata": {}
},
"temperature": {
"$metadata": {}
},
"humidity": {
"$metadata": {}
},
"CO2": {
"$metadata": {}
},
"$metadata": {
"$model": "dtmi:digitaltwins:rec_3_3:core:Level;1"
}
},
{
"$dtId": "Floor1",
"$etag": "W/\"3afb4ff2-22ea-4b1f-b7a7-109f2b3b95f4\"",
"area": {
"$metadata": {}
},
"capacity": {
"$metadata": {}
},
"occupancy": {
"$metadata": {}
},
"temperature": {
"$metadata": {}
},
"humidity": {
"$metadata": {}
},
"CO2": {
"$metadata": {}
},
"$metadata": {
"$model": "dtmi:digitaltwins:rec_3_3:core:Level;1"
}
},
{
"$dtId": "Floor2",
"$etag": "W/\"b630afa3-c90d-4889-95d8-a214c6bbbe78\"",
"area": {
"$metadata": {}
},
"capacity": {
"$metadata": {}
},
"occupancy": {
"$metadata": {}
},
"temperature": {
"$metadata": {}
},
"humidity": {
"$metadata": {}
},
"CO2": {
"$metadata": {}
},
"$metadata": {
"$model": "dtmi:digitaltwins:rec_3_3:core:Level;1"
}
},
{
"$dtId": "Floor3",
"$etag": "W/\"de51bc09-2961-4500-8289-a3e203763073\"",
"area": {
"$metadata": {}
},
"capacity": {
"$metadata": {}
},
"occupancy": {
"$metadata": {}
},
"temperature": {
"$metadata": {}
},
"humidity": {
"$metadata": {}
},
"CO2": {
"$metadata": {}
},
"$metadata": {
"$model": "dtmi:digitaltwins:rec_3_3:core:Level;1"
}
},
{
"$dtId": "Floor5",
"$etag": "W/\"d22277ed-7a41-4f24-8b40-e8dbdd9aeaa9\"",
"area": {
"$metadata": {}
},
"capacity": {
"$metadata": {}
},
"occupancy": {
"$metadata": {}
},
"temperature": {
"$metadata": {}
},
"humidity": {
"$metadata": {}
},
"CO2": {
"$metadata": {}
},
"$metadata": {
"$model": "dtmi:digitaltwins:rec_3_3:core:Level;1"
}
},
{
"$dtId": "Floor6",
"$etag": "W/\"323bce27-ad21-4e17-9754-02c5c59065a0\"",
"area": {
"$metadata": {}
},
"capacity": {
"$metadata": {}
},
"occupancy": {
"$metadata": {}
},
"temperature": {
"$metadata": {}
},
"humidity": {
"$metadata": {}
},
"CO2": {
"$metadata": {}
},
"$metadata": {
"$model": "dtmi:digitaltwins:rec_3_3:core:Level;1"
}
},
{
"$dtId": "967a6e7b-9590-474f-bd4d-be5fa1e1e2c5",
"$etag": "W/\"71c04c7f-9394-4e41-8e1e-f0f886b36fb6\"",
"area": {
"$metadata": {}
},
"capacity": {
"$metadata": {}
},
"occupancy": {
"$metadata": {}
},
"temperature": {
"$metadata": {}
},
"humidity": {
"$metadata": {}
},
"CO2": {
"$metadata": {}
},
"$metadata": {
"$model": "dtmi:digitaltwins:rec_3_3:core:Level;1"
}
}}
我收到以下错误:
{
"errors": {
"twinCreate": [
"The twinCreate field is required."
],
"digitalTwinsGraph.digitalTwins": [
"Invalid property identifier character: {. Path 'digitalTwinsGraph.digitalTwins', line 306, position 12."
]
},
"type": "https://tools.ietf.org/html/rfc7231#section-6.5.1",
"title": "One or more validation errors occurred.",
"status": 400,
"detail": null,
"instance": null,
"extensions": {
"traceId": "|bfeb7647-4044d66d0401388a."
}
}
我似乎找不到任何文档解释这是否可能,甚至 twinCreate
字段是什么。
遗憾的是,您无法在一次 API 调用中完成此操作。您可以同时添加多个模型,但不能一次添加多个双胞胎。
这会很好 feature request。
我正在尝试使用 Azure Digital Twins API 创建我上传的模型的双胞胎。到目前为止,我可以根据 API 请求为每个模型成功创建一个双胞胎。
有没有办法在 1 个请求中从多个模型创建多个孪生?
到目前为止,我已尝试将以下内容的各种迭代解析为 JSON 有效负载。
{"digitalTwinsGraph": {
"digitalTwins": [
{
"$dtId": "Building1",
"$etag": "W/\"28bcd6a5-f0ab-477c-b314-a11193d2bf61\"",
"address": {
"$metadata": {}
},
"area": {
"$metadata": {}
},
"capacity": {
"$metadata": {}
},
"occupancy": {
"$metadata": {}
},
"temperature": {
"$metadata": {}
},
"humidity": {
"$metadata": {}
},
"CO2": {
"$metadata": {}
},
"$metadata": {
"$model": "dtmi:digitaltwins:rec_3_3:core:Building;1"
}
},
{
"$dtId": "Floor4",
"$etag": "W/\"c34f7f70-2511-4299-bb10-0b5a17ee39cd\"",
"area": {
"$metadata": {}
},
"capacity": {
"$metadata": {}
},
"occupancy": {
"$metadata": {}
},
"temperature": {
"$metadata": {}
},
"humidity": {
"$metadata": {}
},
"CO2": {
"$metadata": {}
},
"$metadata": {
"$model": "dtmi:digitaltwins:rec_3_3:core:Level;1"
}
},
{
"$dtId": "Office",
"$etag": "W/\"ce195644-3174-4a61-ac37-00d8a0f95713\"",
"area": {
"$metadata": {}
},
"capacity": {
"$metadata": {}
},
"occupancy": {
"$metadata": {}
},
"temperature": {
"$metadata": {}
},
"humidity": {
"$metadata": {}
},
"CO2": {
"$metadata": {}
},
"$metadata": {
"$model": "dtmi:digitaltwins:rec_3_3:core:Room;1"
}
},
{
"$dtId": "MainWorkingSpace",
"$etag": "W/\"507e727c-6a10-45c2-8293-84817e37981b\"",
"area": {
"$metadata": {}
},
"capacity": {
"$metadata": {}
},
"occupancy": {
"$metadata": {}
},
"temperature": {
"$metadata": {}
},
"humidity": {
"$metadata": {}
},
"CO2": {
"$metadata": {}
},
"$metadata": {
"$model": "dtmi:digitaltwins:rec_3_3:core:Zone;1"
}
},
{
"$dtId": "SmallMeetingRoom",
"$etag": "W/\"ac3ed267-0320-46dc-9247-ed93ef81bfcd\"",
"area": {
"$metadata": {}
},
"capacity": {
"$metadata": {}
},
"occupancy": {
"$metadata": {}
},
"temperature": {
"$metadata": {}
},
"humidity": {
"$metadata": {}
},
"CO2": {
"$metadata": {}
},
"$metadata": {
"$model": "dtmi:digitaltwins:rec_3_3:core:Zone;1"
}
},
{
"$dtId": "BigMeetingRoom",
"$etag": "W/\"fb77e308-0a30-4a46-a7a3-c7bf7306af38\"",
"area": {
"$metadata": {}
},
"capacity": {
"$metadata": {}
},
"occupancy": {
"$metadata": {}
},
"temperature": {
"$metadata": {}
},
"humidity": {
"$metadata": {}
},
"CO2": {
"$metadata": {}
},
"$metadata": {
"$model": "dtmi:digitaltwins:rec_3_3:core:Zone;1"
}
},
{
"$dtId": "Ground",
"$etag": "W/\"4a0f4290-9eab-4985-9c13-51ecb2f6e7ae\"",
"area": {
"$metadata": {}
},
"capacity": {
"$metadata": {}
},
"occupancy": {
"$metadata": {}
},
"temperature": {
"$metadata": {}
},
"humidity": {
"$metadata": {}
},
"CO2": {
"$metadata": {}
},
"$metadata": {
"$model": "dtmi:digitaltwins:rec_3_3:core:Level;1"
}
},
{
"$dtId": "Floor1",
"$etag": "W/\"3afb4ff2-22ea-4b1f-b7a7-109f2b3b95f4\"",
"area": {
"$metadata": {}
},
"capacity": {
"$metadata": {}
},
"occupancy": {
"$metadata": {}
},
"temperature": {
"$metadata": {}
},
"humidity": {
"$metadata": {}
},
"CO2": {
"$metadata": {}
},
"$metadata": {
"$model": "dtmi:digitaltwins:rec_3_3:core:Level;1"
}
},
{
"$dtId": "Floor2",
"$etag": "W/\"b630afa3-c90d-4889-95d8-a214c6bbbe78\"",
"area": {
"$metadata": {}
},
"capacity": {
"$metadata": {}
},
"occupancy": {
"$metadata": {}
},
"temperature": {
"$metadata": {}
},
"humidity": {
"$metadata": {}
},
"CO2": {
"$metadata": {}
},
"$metadata": {
"$model": "dtmi:digitaltwins:rec_3_3:core:Level;1"
}
},
{
"$dtId": "Floor3",
"$etag": "W/\"de51bc09-2961-4500-8289-a3e203763073\"",
"area": {
"$metadata": {}
},
"capacity": {
"$metadata": {}
},
"occupancy": {
"$metadata": {}
},
"temperature": {
"$metadata": {}
},
"humidity": {
"$metadata": {}
},
"CO2": {
"$metadata": {}
},
"$metadata": {
"$model": "dtmi:digitaltwins:rec_3_3:core:Level;1"
}
},
{
"$dtId": "Floor5",
"$etag": "W/\"d22277ed-7a41-4f24-8b40-e8dbdd9aeaa9\"",
"area": {
"$metadata": {}
},
"capacity": {
"$metadata": {}
},
"occupancy": {
"$metadata": {}
},
"temperature": {
"$metadata": {}
},
"humidity": {
"$metadata": {}
},
"CO2": {
"$metadata": {}
},
"$metadata": {
"$model": "dtmi:digitaltwins:rec_3_3:core:Level;1"
}
},
{
"$dtId": "Floor6",
"$etag": "W/\"323bce27-ad21-4e17-9754-02c5c59065a0\"",
"area": {
"$metadata": {}
},
"capacity": {
"$metadata": {}
},
"occupancy": {
"$metadata": {}
},
"temperature": {
"$metadata": {}
},
"humidity": {
"$metadata": {}
},
"CO2": {
"$metadata": {}
},
"$metadata": {
"$model": "dtmi:digitaltwins:rec_3_3:core:Level;1"
}
},
{
"$dtId": "967a6e7b-9590-474f-bd4d-be5fa1e1e2c5",
"$etag": "W/\"71c04c7f-9394-4e41-8e1e-f0f886b36fb6\"",
"area": {
"$metadata": {}
},
"capacity": {
"$metadata": {}
},
"occupancy": {
"$metadata": {}
},
"temperature": {
"$metadata": {}
},
"humidity": {
"$metadata": {}
},
"CO2": {
"$metadata": {}
},
"$metadata": {
"$model": "dtmi:digitaltwins:rec_3_3:core:Level;1"
}
}}
我收到以下错误:
{
"errors": {
"twinCreate": [
"The twinCreate field is required."
],
"digitalTwinsGraph.digitalTwins": [
"Invalid property identifier character: {. Path 'digitalTwinsGraph.digitalTwins', line 306, position 12."
]
},
"type": "https://tools.ietf.org/html/rfc7231#section-6.5.1",
"title": "One or more validation errors occurred.",
"status": 400,
"detail": null,
"instance": null,
"extensions": {
"traceId": "|bfeb7647-4044d66d0401388a."
}
}
我似乎找不到任何文档解释这是否可能,甚至 twinCreate
字段是什么。
遗憾的是,您无法在一次 API 调用中完成此操作。您可以同时添加多个模型,但不能一次添加多个双胞胎。
这会很好 feature request。