向对象模型添加新传感器失败
Adding new Sensor to Object Model is failing
我正在尝试修改提供的快速示例 here。
我试图添加一些自定义传感器数据类型,但它失败了。然后我尝试了文档中提到的一些数据类型,但也失败了。
我遇到错误
Creating Sensor: {
"DataType": "Noise",
"DeviceId": "some-device-id",
"HardwareId": "SAMPLE_SENSOR_NOISE"
}
Request: POST
https://******.*******.azuresmartspaces.net/management/api/v1.0/sensors
Response Status: 404, NotFound , {"error":
{"code":"404.600.000.001","message":"There is no SensorDataType of the
given name."}}
- 我们可以添加自定义传感器数据类型吗?
- 如果不是,那么内置数据类型是什么?或者如果是那么这里出了什么问题?
创建传感器对象时需要post DataType。如果您想稍后更改,请使用“None”。 Swagger DOC 显示您可以展开并查看必填字段的“模型”。
如果数据类型不在 api/v1/system/types 中,您将需要启用它或创建新的数据类型。使用所需信息为类型创建一个新的数据类型 POST。最小值是整理类型的 TypeName 和 SpaceID。我的典型模式是创建一个根 space 并将任何自定义孪生对象(如类型)附加到此 space。
我相信这些也是区分大小写的名称。
https://{servicename}.{region}.azuresmartspaces.net/management/swagger/ui/index#/Types
编辑:
检查您的本体:
https://{servicename}.{region}.azuresmartspaces.net/management/api/v1.0/ontologies
Select 这些按 ID 和 POST 将它们设置为 true 以获取所有可用的内置类型:
[
{
"id": 1,
"name": "Required",
"loaded": true
},
{
"id": 2,
"name": "Default",
"loaded": true
},
{
"id": 3,
"name": "BACnet",
"loaded": true
},
{
"id": 4,
"name": "Advanced",
"loaded": true
}
]
然后你可以查询所有给定的类型:
https://{servicename}.{region}.azuresmartspaces.net/management/api/v1.0/types?includes=Description,FullPath,Ontologies,Space
您应该会收到类似这样的信息:
[
{
"id": 1,
"category": "DeviceSubtype",
"name": "None",
"disabled": false,
"logicalOrder": 0,
"fullName": "None",
"spacePaths": [
"/system"
],
"ontologies": [
{
"id": 1,
"name": "Required",
"loaded": true
}
]
},
{
"id": 2,
"category": "DeviceType",
"name": "None",
"disabled": false,
"logicalOrder": 0,
"fullName": "None",
"spacePaths": [
"/system"
],
"ontologies": [
{
"id": 1,
"name": "Required",
"loaded": true
}
]
},
{
"id": 3,
"category": "DeviceBlobSubtype",
"name": "None",
"disabled": false,
"logicalOrder": 0,
"fullName": "None",
"spacePaths": [
"/system"
],
"ontologies": [
{
"id": 1,
"name": "Required",
"loaded": true
}
]
},
...Objects,
]
我正在尝试修改提供的快速示例 here。
我试图添加一些自定义传感器数据类型,但它失败了。然后我尝试了文档中提到的一些数据类型,但也失败了。
我遇到错误
Creating Sensor: {
"DataType": "Noise",
"DeviceId": "some-device-id",
"HardwareId": "SAMPLE_SENSOR_NOISE"
}
Request: POST
https://******.*******.azuresmartspaces.net/management/api/v1.0/sensors
Response Status: 404, NotFound , {"error":
{"code":"404.600.000.001","message":"There is no SensorDataType of the
given name."}}
- 我们可以添加自定义传感器数据类型吗?
- 如果不是,那么内置数据类型是什么?或者如果是那么这里出了什么问题?
创建传感器对象时需要post DataType。如果您想稍后更改,请使用“None”。 Swagger DOC 显示您可以展开并查看必填字段的“模型”。
如果数据类型不在 api/v1/system/types 中,您将需要启用它或创建新的数据类型。使用所需信息为类型创建一个新的数据类型 POST。最小值是整理类型的 TypeName 和 SpaceID。我的典型模式是创建一个根 space 并将任何自定义孪生对象(如类型)附加到此 space。
我相信这些也是区分大小写的名称。
https://{servicename}.{region}.azuresmartspaces.net/management/swagger/ui/index#/Types
编辑:
检查您的本体:
https://{servicename}.{region}.azuresmartspaces.net/management/api/v1.0/ontologies
Select 这些按 ID 和 POST 将它们设置为 true 以获取所有可用的内置类型:
[
{
"id": 1,
"name": "Required",
"loaded": true
},
{
"id": 2,
"name": "Default",
"loaded": true
},
{
"id": 3,
"name": "BACnet",
"loaded": true
},
{
"id": 4,
"name": "Advanced",
"loaded": true
}
]
然后你可以查询所有给定的类型:
https://{servicename}.{region}.azuresmartspaces.net/management/api/v1.0/types?includes=Description,FullPath,Ontologies,Space
您应该会收到类似这样的信息:
[
{
"id": 1,
"category": "DeviceSubtype",
"name": "None",
"disabled": false,
"logicalOrder": 0,
"fullName": "None",
"spacePaths": [
"/system"
],
"ontologies": [
{
"id": 1,
"name": "Required",
"loaded": true
}
]
},
{
"id": 2,
"category": "DeviceType",
"name": "None",
"disabled": false,
"logicalOrder": 0,
"fullName": "None",
"spacePaths": [
"/system"
],
"ontologies": [
{
"id": 1,
"name": "Required",
"loaded": true
}
]
},
{
"id": 3,
"category": "DeviceBlobSubtype",
"name": "None",
"disabled": false,
"logicalOrder": 0,
"fullName": "None",
"spacePaths": [
"/system"
],
"ontologies": [
{
"id": 1,
"name": "Required",
"loaded": true
}
]
},
...Objects,
]