向对象模型添加新传感器失败

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."}}
  1. 我们可以添加自定义传感器数据类型吗?
  2. 如果不是,那么内置数据类型是什么?或者如果是那么这里出了什么问题?

创建传感器对象时需要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,
]