Get Thing Model¶
根据模型标识符(modelId
)获取模型相关的信息。
如果你需要在调用 Update Thing Model API 后调用当前 API,建议间隔 2 秒左右,以免获取到未更新数据。
请求格式¶
GET https://{apigw-address}/model-service/v2.1/thing-models?action=get
请求参数(URI)¶
名称 |
位置(Path/Query) |
必需/可选 |
数据类型 |
描述 |
---|---|---|---|---|
orgId |
Query |
必需 |
String |
模型所属的OU ID。如何获取 orgId 信息>> |
scope |
Query |
可选 |
Integer |
查询范围。 0:只从 orgId 指定的组织搜索; 1:从 orgId 指定的组织和公有模型所在的组织搜索。默认为 1。 |
modelId |
Query |
必需 |
String |
模型 ID。如何获取 modelId 信息>> |
响应参数¶
名称 |
数据类型 |
描述 |
---|---|---|
data |
ThingModel 结构体 |
物模型,参见 ThingModel 结构体。 |
ThingModel 结构体 ¶
名称 |
数据类型 |
描述 |
---|---|---|
modelId |
String |
模型 ID。 |
modelIdPath |
String |
模型继承路径。 |
orgId |
String |
创建该模型的 OU ID。例如,OU B 的某一模型是从 OU A 共享而来,在 OU B 中查询该模型的信息,返回的 OU ID 将是 OU A。 |
name |
StringI18n |
模型名称。 |
desc |
String |
模型描述。 |
category |
String |
模型分类。 |
tags |
Map(Key 为 String,Value 为 String) |
用户自定义标签。 |
attributes |
Map(Key 为 String,Value 为 |
静态属性定义的 map 类型值, |
measurepoints |
Map(Key 为 String,Value 为 |
测点定义的 map 类型值, |
services |
Map(Key 为 String,Value 为 |
服务定义的 map 类型值, |
events |
Map(Key 为 String,Value 为 |
事件定义的 map 类型值, |
ThingAttribute 结构体 ¶
名称 |
数据类型 |
描述 |
---|---|---|
identifier |
String |
属性ID。 |
dataType |
String |
数据类型。比如:ARRAY、BOOL、DATE、ENUM、INT、FLOAT、DOUBLE、STRUCT、STRING、TIMESTAMP、FILE。 |
dataDefinition |
String |
本结构体内 |
isRequired |
Boolean |
是否是必须的属性。如果为 true,则要求资产在实例化的时候必须设置该属性的值,否则资产在创建的时候会返回校验失败的错误。 |
defaultValue |
根据属性的定义决定 |
属性的默认值。如果没有设置默认值,则为 null。 注:EnOS Edge 不支持该参数。 |
name |
StringI18n |
支持国际化的属性名称。 |
desc |
String |
属性描述。 |
i18nDesc |
StringI18n |
支持国际化的描述。 |
tags |
Map (Key 为 String,Value 为 String) |
用户自定义标签。 |
isStdElement |
Boolean |
是否是标准元素。 注:EnOS Edge 不支持该参数。 |
stdElementId |
String |
当元素是标准元素时,标准元素的URN,其命名格式为 urn:enos:modelelement:std: 注:EnOS Edge 不支持该参数。 |
unit |
Unit 结构体 |
单位。参见 Unit 结构体。 |
ThingMeasurepoint 结构体 ¶
名称 |
数据类型 |
描述 |
---|---|---|
identifier |
String |
测点 ID |
dataType |
String |
数据类型。比如:ARRAY、DATE、ENUM、INT、FLOAT、DOUBLE、STRUCT、STRING、TIMESTAMP、FILE。 |
dataDefinition |
String |
本结构体内 |
name |
StringI18n |
支持国际化的测点名称。 |
desc |
String |
测点描述。 |
i18nDesc |
StringI18n |
支持国际化的描述。 |
tags |
Map (Key 为 String,Value 为 String) |
用户自定义标签。 |
isStdElement |
Boolean |
是否是标准元素。 注:EnOS Edge 不支持该参数。 |
stdElementId |
String |
当元素是标准元素时,标准元素的 URN,其命名格式为 urn:enos:modelelement:std: 注:EnOS Edge 不支持该参数。 |
hasQuality |
Boolean |
是否有质量位。 |
signalType |
String |
信号类型。有如下类型:Generic、AI、PI、DI。 |
unit |
Unit 结构体 |
单位。参见 Unit 结构体。 |
ThingService 结构体 ¶
名称 |
数据类型 |
描述 |
---|---|---|
identifier |
String |
服务 ID。 |
name |
StringI18n |
支持国际化的服务名称。 |
desc |
String |
服务描述。 |
i18nDesc |
StringI18n |
支持国际化的描述。 |
tags |
Map (Key 为 String,Value 为 String) |
用户自定义标签。 |
isStdElement |
Boolean |
是否是标准元素。 注:EnOS Edge 不支持该参数。 |
stdElementId |
String |
当元素是标准元素时,标准元素的 URN,其命名格式为 urn:enos:modelelement:std: 注:EnOS Edge 不支持该参数。 |
inputData |
ThingDatapoint 结构体 |
Service 的入参列表。 参数定参见 ThingDatapoint 结构体。 |
outputData |
ThingDatapoint 结构体 |
Service 返回参数列表。 参数定参见 ThingDatapoint 结构体。 |
callType |
String |
注意:callType 已废弃,未来会删除,请不要使用。调用类型。 |
ThingEvent 结构体 ¶
名称 |
数据类型 |
描述 |
---|---|---|
identifier |
String |
事件 ID。 |
name |
StringI18n |
支持国际化的事件名称。 |
desc |
String |
事件描述。 |
i18nDesc |
StringI18n |
支持国际化的描述。 |
tags |
Map (Key 为 String,Value 为 String) |
用户自定义标签。 |
isStdElement |
Boolean |
是否是标准元素。 注:EnOS Edge 不支持该参数。 |
stdElementId |
String |
当元素是标准元素时,标准元素的URN,其命名格式为 urn:enos:modelelement:std: 注:EnOS Edge 不支持该参数。 |
outputData |
ThingDatapoint 结构体 |
Event返回参数列表。 参数定参见 ThingDatapoint 结构体。 |
eventType |
String |
事件类型。有 |
ThingDatapoint 结构体 ¶
名称 |
数据类型 |
描述 |
---|---|---|
identifier |
String |
点 ID。 |
dataType |
String |
数据类型。比如:ARRAY、DATE、ENUM、INT、FLOAT、DOUBLE、STRUCT、STRING、TIMESTAMP、FILE。 |
dataDefinition |
String |
本结构体内 |
name |
StringI18n |
支持国际化的测点名称。 |
desc |
String |
测点描述。 |
i18nDesc |
StringI18n |
支持国际化的描述。 |
tags |
Map (Key 为 String,Value 为 String) |
用户自定义标签。 |
isStdElement |
Boolean |
是否是标准元素。 注:EnOS Edge 不支持该参数。 |
stdElementId |
String |
当元素是标准元素时,标准元素的 URN,其命名格式为 urn:enos:modelelement:std: 注:EnOS Edge 不支持该参数。 |
unit |
Unit 结构体 |
单位。参见 Unit 结构体。 |
isRequired |
Boolean |
仅支持模型服务的 注:EnOS Edge 不支持该参数。 |
defaultValue |
根据点的数据类型决定 |
点的默认值。如果没有设置默认值,则为 null。仅支持模型服务的 注:EnOS Edge 不支持该参数。 |
Unit 结构体 ¶
名称 |
数据类型 |
描述 |
---|---|---|
unitId |
String |
单位的标识符。 |
multiplier |
String |
单位的乘数。参见 Multiplier。 |
Multiplier ¶
单位的乘数有如下取值:
YOTTA ,//Y 10^24
ZETTA ,//Z 10^21
EXA ,//E 10^18
PETA ,//P 10^15
TERA ,//T 10^12
GIGA ,//G 10^9
MEGA ,//M 10^6
KILO ,//k 10^3
HECTO ,//h 10^2
DECA ,//da 10^1
ONE ,// 10^0
DECI ,//d 10^-1
CENTI ,//c 10^-2
MILLI ,//m 10^-3
MICRO ,//μ 10^-6
NANO ,//n 10^-9
PICO ,//p 10^-12
FEMTO ,//f 10^-15
ATTO ,//a 10^-18
ZEPTO ,//z 10^-21
YOCTO ,//y 10^-24
错误码¶
参见 公共返回码(接入服务)。
示例¶
请求示例¶
url: https://{apigw-address}/model-service/v2.1/thing-models?action=get&orgId=yourOrgId&modelId=yourModelId
method: GET
返回示例¶
{
"code":0,
"msg":"OK",
"requestId":"41e3da4c-9e40-47e5-b202-58f946b294c5",
"data":{
"modelId":"jw-1112",
"modelIdPath":"/jw-1112",
"orgId":"yourOrgId",
"name":{
"defaultValue":"jw-1112",
"i18nValue":{
"en_US":"",
"zh_CN":""
}
},
"desc":"jw-1112",
"category":"system",
"tags":{
"group":"1"
},
"attributes":{
"capacity":{
"identifier":"capacity",
"name":{
"defaultValue":"capacity",
"i18nValue":{
"en_US":"capacity",
"zh_CN":"容量"
}
},
"desc":"Capacity",
"i18nDesc":{
"defaultValue":"Capacity",
"i18nValue":{
"en_US":"Capacity",
"zh_CN":"容量"
}
},
"tags":{
"cap":"1"
},
"stdElementId":"urn:user:modelelement:std:atom-property-int:1.0",
"isStdElement":true,
"dataType":"INT",
"unit":{
"unitId":"G",
"multiplier":"ONE"
},
"dataDefinition":null,
"isRequired":true,
"defaultValue":111
}
},
"measurepoints":{
"ActiveSC":{
"identifier":"ActiveSC",
"name":{
"defaultValue":"活动状态字",
"i18nValue":{
"en_US":"ActiveSC_Name"
}
},
"desc":"ActiveSC desc",
"i18nDesc":{
"defaultValue":"ActiveSC desc",
"i18nValue":{
"en_US":"ActiveSC desc",
"zh_CN":"活动状态描述"
}
},
"tags":{
},
"stdElementId":null,
"isStdElement":false,
"dataType":"INT",
"unit":null,
"dataDefinition":null,
"hasQuality":false,
"signalType":"DI"
},
"windspeed_90":{
"identifier":"windspeed_90",
"name":{
"defaultValue":"windspeed_90",
"i18nValue":{
"en_US":"windspeed_90"
}
},
"desc":"90m wind speed",
"i18nDesc":{
"defaultValue":"90m wind speed",
"i18nValue":{
"en_US":"90m wind speed",
"zh_CN":"90m 风速"
}
},
"tags":{
},
"stdElementId":null,
"isStdElement":false,
"dataType":"DOUBLE",
"unit":{
"unitId":"m/s",
"multiplier":"ONE"
},
"dataDefinition":null,
"hasQuality":false,
"signalType":"Generic"
},
"windspeed_80_identity":{
"identifier":"windspeed_80_identity",
"name":{
"defaultValue":"windspeed_80",
"i18nValue":{
"en_US":"windspeed_80"
}
},
"desc":"80m wind speed",
"i18nDesc":{
"defaultValue":"80m wind speed",
"i18nValue":{
"en_US":"80m wind speed",
"zh_CN":"80m 风速"
}
},
"tags":{
},
"stdElementId":null,
"isStdElement":false,
"dataType":"DOUBLE",
"unit":{
"unitId":"m/s",
"multiplier":"ONE"
},
"dataDefinition":null,
"hasQuality":false,
"signalType":"Generic"
},
"windspeed_110":{
"identifier":"windspeed_110",
"name":{
"defaultValue":"windspeed_110",
"i18nValue":{
"en_US":"windspeed_110"
}
},
"desc":"110m wind speed",
"i18nDesc":{
"defaultValue":"110m wind speed",
"i18nValue":{
"en_US":"110m wind speed",
"zh_CN":"110m 风速"
}
},
"tags":{
},
"stdElementId":null,
"isStdElement":false,
"dataType":"DOUBLE",
"unit":{
"unitId":"m/s",
"multiplier":"ONE"
},
"dataDefinition":null,
"hasQuality":false,
"signalType":"AI"
},
"system_start":{
"identifier":"system_start",
"name":{
"defaultValue":"启动指令",
"i18nValue":{
"en_US":"",
"zh_CN":""
}
},
"desc":"Start system",
"i18nDesc":{
"defaultValue":"Start system",
"i18nValue":{
"en_US":"Start system",
"zh_CN":"启动"
}
},
"tags":{
"control":"true"
},
"stdElementId":null,
"isStdElement":false,
"dataType":"ENUM",
"unit":null,
"dataDefinition":{
"enumDesc": {
"0": {
"defaultValue": "关闭",
"i18nValue": {}
},
"1": {
"defaultValue": "打开",
"i18nValue": {}
},
"2": {
"defaultValue": "不定态",
"i18nValue": {}
},
"3": {
"defaultValue": "会不定态",
"i18nValue": {}
}
},
"enumType": "INT"
},
"hasQuality":false,
"signalType":"Generic"
},
"windspeed_140":{
"identifier":"windspeed_140",
"name":{
"defaultValue":"windspeed_140",
"i18nValue":{
"en_US":"windspeed_140"
}
},
"desc":"140m wind speed",
"i18nDesc":{
"defaultValue":"140m wind speed",
"i18nValue":{
"en_US":"140m wind speed",
"zh_CN":"140m 风速"
}
},
"tags":{
},
"stdElementId":null,
"isStdElement":false,
"dataType":"DOUBLE",
"unit":{
"unitId":"m/s",
"multiplier":"ONE"
},
"dataDefinition":null,
"hasQuality":false,
"signalType":"AI"
},
"cedianforsolar":{
"identifier":"cedianforsolar",
"name":{
"defaultValue":"cediantedsst",
"i18nValue":{
"en_US":"cediantedsst"
}
},
"desc":"Solar measurement point",
"i18nDesc":{
"defaultValue":"Solar measurement point",
"i18nValue":{
"en_US":"Solar measurement point",
"zh_CN":"Solar 测点"
}
},
"tags":{
},
"stdElementId":null,
"isStdElement":false,
"dataType":"DOUBLE",
"unit":null,
"dataDefinition":null,
"hasQuality":false,
"signalType":"Generic"
}
},
"services":{
"speedup":{
"identifier":"speedup",
"name":{
"defaultValue":"speedup",
"i18nValue":{
"en_US":"speedup"
}
},
"desc":"Speedup",
"i18nDesc":{
"defaultValue":"Speedup",
"i18nValue":{
"en_US":"Speedup",
"zh_CN":"加速"
}
},
"tags":null,
"stdElementId":null,
"isStdElement":false,
"outputData":[
{
"identifier":"delta",
"name":{
"defaultValue":"delta",
"i18nValue":{
"en_US":"delta"
}
},
"desc":"Delta",
"i18nDesc":{
"defaultValue":"Delta",
"i18nValue":{
"en_US":"Delta",
"zh_CN":"Delta 描述"
}
},
"tags":{
},
"stdElementId":null,
"isStdElement":false,
"dataType":"INT",
"unit":null,
"dataDefinition":null
}
],
"inputData":[
{
"identifier":"delta",
"name":{
"defaultValue":"delta",
"i18nValue":{
"en_US":"delta"
}
},
"desc":"Delta",
"i18nDesc":{
"defaultValue":"Delta",
"i18nValue":{
"en_US":"Delta",
"zh_CN":"Delta 描述"
}
},
"tags":{
},
"stdElementId":null,
"isStdElement":false,
"dataType":"INT",
"unit":{
"unitId":"rpm",
"multiplier":"ONE"
},
"dataDefinition":null,
"isRequired":true,
"defaultValue":3
}
],
"callType":"ASYNC"
}
},
"events":{
"alert":{
"identifier":"alert",
"name":{
"defaultValue":"alert",
"i18nValue":{
"en_US":"alert"
}
},
"desc":"Alert",
"i18nDesc":{
"defaultValue":"Alert",
"i18nValue":{
"en_US":"Alert",
"zh_CN":"告警"
}
},
"tags":null,
"stdElementId":null,
"isStdElement":false,
"outputData":[
{
"identifier":"event1",
"name":{
"defaultValue":"event1",
"i18nValue":{
"en_US":"event1"
}
},
"desc":"Event 1",
"i18nDesc":{
"defaultValue":"Event 1",
"i18nValue":{
"en_US":"Event 1",
"zh_CN":"事件"
}
},
"tags":{
},
"stdElementId":null,
"isStdElement":false,
"dataType":"INT",
"unit":null,
"dataDefinition":null
}
],
"eventType":"ERROR"
}
}
}
}
SDK 示例¶
你可以在 Github 上获取模型服务的 SDK 示例: