阿里云API芝士堂[物模型管理][模型]

简介: 将近一年没有关注阿里云物联网的api,最近看了下官网的文档,api列表中赫然多出了物模型的管理和使用两大类.这也难怪,物模型被誉为物联网世界的原子.通过物模型可以有效的使用属性,服务和事件就可以表示出纷繁复杂和多姿多彩的物联网世界中的各种类型的设备;目前物模型并没有统一的规范,所以阿里,小米,京东和中移动等大厂,都是各自制定一套自己的规范;阿里云这面主要是在自家的ICA联盟定义了一套物模型的规范.本文也从实践角度分享一下物模型相关api的使用.

将近一年没有关注阿里云物联网的api,最近看了下官网的文档,api列表中赫然多出了物模型的管理和使用两大类.这也难怪,物模型被誉为物联网世界的原子.通过物模型可以有效的使用属性,服务和事件就可以表示出纷繁复杂和多姿多彩的物联网世界中的各种类型的设备;目前物模型并没有统一的规范,所以阿里,小米,京东和中移动等大厂,都是各自制定一套自己的规范;阿里云这面主要是在自家的ICA联盟定义了一套物模型的规范.本文也从实践角度分享一下物模型相关api的使用.

物模型管理这类api一共有18个,所有物模型的api接口都是基于产品的,所以需要一个以创建的产品id:productkey. 按照功能特性又可以分为模型,模板,语言和脚本四个小类.下面就看一下第一小类模型的6个api.
它们分别是:创建 查询 更新 发布 拷贝 删除
首先是创建一个物模型,使用CreateThingModel这个api接口;这个接口需要使用到两个参数:产品的id号以及创建物模型的三元素[属性.服务.事件],为了易于理解,我们以单独创建一个物模型的属性为例,创建一束光的属性,标识符和名称都为LightVal,取值范围为1-10,访问权限为可读写,那么可以使用如下格式:
XYsayFrO.IoT.Srv.CreateThingModel.a141rgUXgFl.{"properties":[{"identifier":"LightVal","dataSpecs":{"max":"10","min":"1","dataType":"INT"},"std":false,"custom":true,"dataType":"INT","rwFlag":"READ_WRITE","productKey":"a141rgUXgFl","required":false,"customFlag":true,"name":"LightVal"}]}.
运行脚本解释器,可以看到创建成功的提示:

因为创建模型的接口,返回的信息只有成功和失败,过于精简,所以需要我们使用查询物模型接口来确认一下.这个查询的接口为QueryThingModel,后面只需要带一个产品id号的参数就可以啦;具体格式和示例如下:
XYsayFrO.IoT.Srv.QueryThingModel.a141rgUXgFl.
返回的结果截图界面如下:

可以看到绿色圈的信息和我们要求创建的信息一致;

物模型创建好后,难免根据实际情况需要修改更新,这时候就需要用到第三个接口UpdateThingModel物模型更新api了,此接口和第一个创建物模型接口类似,也是需要产品id号和物模型json格式的信息.比如我们需要现在将之前的创建号的光束改为最大值为100,名字改为Light,那么就可以使用下面的格式:
XYsayFrO.IoT.Srv.UpdateThingModel.a141rgUXgFl.{"properties":[{"identifier":"LightVal","dataSpecs":{"max":"100","min":"1","step":"1","dataType":"INT"},"dataType":"INT","rwFlag":"READ_WRITE","productKey":"a141rgUXgFl","required":false,"name":"Light"}]}.
如果更新成功,就会返回如下界面:

这个时候,我们就可以再使用之前一样的查询命令去看更新后的信息.
XYsayFrO.IoT.Srv.QueryThingModel.a141rgUXgFl.
可以看到返回的结果已经变为最大值为100了,说明之前的更新确实成功了;

当我们将物模型创建好,又修改好了以后,就可以正式发布了,这时需要使用第四个接口,PublishThingModel这个api来发布,这里需要两个参数,一个为产品id,一个为需要发布的版本号.
XYsayFrO.IoT.Srv.PublishThingModel.a141rgUXgFl.V0x0x9.
发布成功后,会有如下信息:

当我们的产品很多,创建的物模型相似度又非常高的时候,可以使用第五个拷贝接口,具体名称为CopyThingModel,根据这个接口的实际功能,需要三个参数分别为:拷贝源和目的的产品id,以及源产品的发布版本号.
比如,我们现在把产品id为a141rgUXgFl的产品中物模型,拷贝到产品id为a17hjshDgiK的产品中,物模型的版本号为V0x0x9,那么就可以使用下面的格式:
XYsayFrO.IoT.Srv.CopyThingModel.a141rgUXgFl.a17hjshDgiK.V0x0x9.

最后一个接口为删除产品的物模型,这个api只需要一个参数:需要删除产品所对应的产品id.
XYsayFrO.IoT.Srv.DeleteThingModel.a141rgUXgFl.
运行后,会返回如下信息:

这个时候再去使用下面的命令查询,会返回所有相关的空信息.
XYsayFrO.IoT.Srv.QueryThingModel.a141rgUXgFl.

目录
相关文章
|
6天前
|
存储 人工智能 API
(Elasticsearch)使用阿里云 infererence API 及 semantic text 进行向量搜索
本文展示了如何使用阿里云 infererence API 及 semantic text 进行向量搜索。
|
13天前
|
运维 Cloud Native 应用服务中间件
阿里云微服务引擎 MSE 及 云原生 API 网关 2024 年 11 月产品动态
阿里云微服务引擎 MSE 面向业界主流开源微服务项目, 提供注册配置中心和分布式协调(原生支持 Nacos/ZooKeeper/Eureka )、云原生网关(原生支持Higress/Nginx/Envoy,遵循Ingress标准)、微服务治理(原生支持 Spring Cloud/Dubbo/Sentinel,遵循 OpenSergo 服务治理规范)能力。API 网关 (API Gateway),提供 APl 托管服务,覆盖设计、开发、测试、发布、售卖、运维监测、安全管控、下线等 API 生命周期阶段。帮助您快速构建以 API 为核心的系统架构.满足新技术引入、系统集成、业务中台等诸多场景需要
|
2月前
|
存储 人工智能 自然语言处理
Elasticsearch Inference API增加对阿里云AI的支持
本文将介绍如何在 Elasticsearch 中设置和使用阿里云的文本生成、重排序、稀疏向量和稠密向量服务,提升搜索相关性。
90 14
Elasticsearch Inference API增加对阿里云AI的支持
|
29天前
|
人工智能 Java API
ChatClient:探索与AI模型通信的Fluent API
【11月更文挑战第22天】随着人工智能(AI)技术的飞速发展,越来越多的应用场景开始融入AI技术以提升用户体验和系统效率。在Java开发中,与AI模型通信成为了一个重要而常见的需求。为了满足这一需求,Spring AI引入了ChatClient,一个提供流畅API(Fluent API)的客户端,用于与各种AI模型进行通信。本文将深入探讨ChatClient的底层原理、业务场景、概念、功能点,并通过Java代码示例展示如何使用Fluent API与AI模型进行通信。
47 8
|
1月前
|
运维 Cloud Native 应用服务中间件
阿里云微服务引擎 MSE 及 云原生 API 网关 2024 年 10 月产品动态
阿里云微服务引擎 MSE 面向业界主流开源微服务项目, 提供注册配置中心和分布式协调(原生支持 Nacos/ZooKeeper/Eureka )、云原生网关(原生支持Higress/Nginx/Envoy,遵循Ingress标准)、微服务治理(原生支持 Spring Cloud/Dubbo/Sentinel,遵循 OpenSergo 服务治理规范)能力。API 网关 (API Gateway),提供 APl 托管服务,覆盖设计、开发、测试、发布、售卖、运维监测、安全管控、下线等 API 生命周期阶段。帮助您快速构建以 API 为核心的系统架构.满足新技术引入、系统集成、业务中台等诸多场景需要
|
1月前
|
弹性计算 负载均衡 监控
阿里云slb的slb-api介绍
【10月更文挑战第17天】
100 1
|
2月前
|
API
阿里云短信平台API错误码提示错误天级流控显示小时级错误码
阿里云短信平台API错误码提示错误天级流控显示小时级错误码
|
8天前
|
人工智能 自然语言处理 API
Multimodal Live API:谷歌推出新的 AI 接口,支持多模态交互和低延迟实时互动
谷歌推出的Multimodal Live API是一个支持多模态交互、低延迟实时互动的AI接口,能够处理文本、音频和视频输入,提供自然流畅的对话体验,适用于多种应用场景。
52 3
Multimodal Live API:谷歌推出新的 AI 接口,支持多模态交互和低延迟实时互动
|
4天前
|
前端开发 API 数据库
Next 编写接口api
Next 编写接口api
|
10天前
|
XML JSON 缓存
阿里巴巴商品详情数据接口(alibaba.item_get) 丨阿里巴巴 API 实时接口指南
阿里巴巴商品详情数据接口(alibaba.item_get)允许商家通过API获取商品的详细信息,包括标题、描述、价格、销量、评价等。主要参数为商品ID(num_iid),支持多种返回数据格式,如json、xml等,便于开发者根据需求选择。使用前需注册并获得App Key与App Secret,注意遵守使用规范。
下一篇
DataWorks