产品管理
1 创建产品
使用物联网平台的第一步:在控制台创建产品。产品是设备的集合,通常是一组具有相同功能定义的设备集合。例如:产品指同一个型号的产品,设备就是该型号下的某个设备。
1.1 操作步骤
a. 登录物联网平台。
b. 左侧导航栏选择功能 > 产品管理,单击右侧的按钮创建产品。
c. 按照页面提示填写信息,然后单击确定。
页面参数设置如下:
产品名称:为产品命名。产品名称在账号内具有唯一性。例如,可以填写为产品型号。支持中文、英文字母、数字和下划线,长度限制 4~30,一个中文汉字算 2 位。
节点类型:产品下设备的类型。
- 设备:指不能挂载子设备的设备。这种设备可以直连物联网平台,也可以作为网关的子设备连接物联网平台
- 网关:指可以挂载子设备的直连设备。网关具有子设备管理模块,可以维持子设备的拓扑关系,并且将拓扑关系同步到云端。
- 网关与子设备的关系,请参见网关与子设备。
产品描述:可输入文字,用来描述产品信息。字数限制为 100。
产品创建成功后,页面自动跳转回该产品列表的产品信息页面。
2 产品列表
左侧导航栏选择功能 > 产品管理,或在产品信息页面点击返回产品列表会跳转到产品列表页面。
产品列表页面具有如下功能:
- 显示当前开发者用户所拥有的所有产品信息,并且可以通过产品名称或 ProductKey 进行筛选。
- 导入
- 创建产品
- 具有管理、导出、编辑、删除功能。
相关页面参数如下:
- 管理:跳转到产品信息页面
- 导出:导出改产品所有相关的配置,目的是为了方便开发者在不同环境迁移产品信息(如开发环境迁移到测试环境),导出的内容包括:
- 产品名称、节点类型、产品描述。
- 功能定义配置。
- Topic 配置。
- 规则引擎配置。
- 导入:同导出,将产品导入到本开发环境。会根据产品名称做唯一区别,如果存在相同的产品名称则会覆盖。
- 编辑:编辑产品基础信息,包括产品名称和产品描述。
- 删除:如果该产品下没有任何设备,则删除按钮可以使用。功能是删除该条产品和其相关的所有信息。
3 产品信息
产品创建成功后,或者点击产品列表的管理按钮会跳转到产品信息页面。
在产品信息页面,可以显示如下信息:
- 产品通用信息包括:产品名称、ProductKey、ProductSecret、设备数。
- 产品信息:产品名称、节点类型、动态注册开关、创建时间、产品描述。
相关页面参数如下:
- ProductKey:物联网平台使用 ProductKey 标识产品,即产品在物联平台的唯一标识。
- ProductSecret:由物联网平台颁发的产品密钥,通常与 ProductKey 成对出现,可用于动态注册的验证。
- 设备数:当前产品下拥有的设备数量。
- 动态注册开关:该产品是否开启动态注册,默认开启。如果关闭,则该产品只能通过静态注册方式添加设备。
- 创建时间:该产品在物联网平台内首次生成的时间。
4 信息通信
在产品信息页面,点击信息通信会切换到信息通信页面。
信息通信页面功能如下:
- 导入/导出。
- 显示默认 Topic。
- 添加、编辑、删除自定义 Topic 类。
4.1 导入、导出
导出自定义的 Topic 类,导出 JSON 数据可在不同环境下实现产品迁移。
4.2 默认 Topic
- 创建产品时系统默认创建,规则详见: 系统定义 Topic
4.3 自定义 Topic
规则详见: 自定义 Topic
添加Topic类:
5 功能定义
5.1 概述
功能定义指将物理空间中的实体数字化,并在云端构建该实体的数据模型。在物联网平台中,定义物模型即定义产品功能。完成功能定义后,系统将自动生成该产品的设备能力模型。设备能力模型描述产品是什么,能做什么,可以对外提供哪些服务。
设备能力模型。是一个 JSON 格式的文件。它是物理空间中的实体,如班牌、一体机、录播等在云端的数字化表示,从属性、服务和事件三个维度,分别描述了该实体是什么,能做什么,可以对外提供哪些信息。定义了这三个维度,即完成了产品功能的定义。
设备能力模型将产品功能类型分为三类:属性、服务、和事件。定义了这三类功能,即完成了设备能力模型的定义。
- 属性(Property):一般用于描述设备运行时的状态,如环境监测设备所读取的当前环境温度等。属性支持 GET 和 SET 请求方式。应用系统可发起对属性的读取和设置请求。
- 服务(Service):设备可被外部调用的能力或方法,可设置输入参数和输出参数。相比于属性,服务可通过一条指令实现更复杂的业务逻辑,如执行某项特定的任务。
- 事件(Event):设备运行时的事件。事件一般包含需要被外部感知和处理的通知信息,可包含多个输出参数。如,某项任务完成的信息,或者设备发生故障或告警时的温度等,事件可以被订阅和推送。
5.2 功能定义
在产品信息页面,点击功能定义会切换到功能定义页面。
功能定义页面功能如下:
- 添加功能
- 根据功能名称或标识符搜索功能
- 查看、编辑、删除功能
- 导入/导出功能
- 查看功能历史记录
5.2.1 添加功能
新增设备能力模型,即定义产品功能(包括属性、事件和服务)。
5.2.1.1 添加标准功能
物联网平台预定义的标准功能。
5.2.1.2 添加自定义功能
当物联网平台预定义的标准功能不满足要求时,可以在添加标准功能页面的下方中间位置点击自定义功能切换到添加自定义功能的页面。
5.2.1.3 属性参数描述
功能名称:属性的名称,如屏幕颜色。同一产品下功能名称不能重复。支持中文、大小写字母、数字、短划线和下划线,且必须以中文、英文或数字开头,不超过 30 个字符。如果您创建产品时选择了功能模板,输入功能名称时,将从标准功能库中筛选匹配的标准属性,供您选择。
标识符:属性唯一标识符,在产品中具有唯一性。即 设备能力模型 JSON 格式中的 identifier 的值,作为设备上报该属性数据的 Key,云端根据该标识符校验是否接收数据。可包含英文、数字、下划线,长度不超过 50 个字符,如 color。
数据类型
- int:32 位整型。需定义取值范围、步长和单位符号。
- float:单精度浮点型。需定义取值范围、步长和单位符号。
- double:双精度浮点型。需定义取值范围、步长和单位符号。
- enum:枚举型。定义枚举项的参数值和参数描述,如 1-加热模式、2-制冷模式。
- bool:布尔型。采用 0 或 1 来定义布尔值,如 0-关、1-开。
- text:字符串。需定义字符串的数据长度,最长支持 2048 字节。
- date:时间戳。格式为 string 类型的 UTC 时间戳,13位,单位:毫秒。
- struct:JSON 对象。定义一个 JSON 结构体,新增 JSON 参数项,如定义灯的颜色是由 Red、Green、Blue 三个参数组成的结构体。不支持结构体嵌套。
- array:数组。需声明数组内元素的数据类型,可选择 int、float、double、text 或 struct。需确保同一个数组元素类型相同,数组长度最长不超过 128 个元素。
取值范围:最大/最小值范围。
是否必选:即此参数/子参数是否必须填写,参数校验利用此字段进行校验。
功能描述:输入文字,对该功能进行说明或备注。长度限制为 100 字。
5.2.1.4 服务参数描述
- 功能名称:服务名称。
- 标识符:服务唯一标识符,在产品下具有唯一性。
- 调用方式
- 下行异步:服务为下行异步调用时,云端执行调用后直接返回结果,不会等待设备的回复消息
- 下行同步:服务为下行同步调用时,云端会等待设备回复;若设备没有回复,则调用超时。
- 上行同步:服务为上行同步调用时,设备会等待云端回复;若云端没有回复,则调用超时。
- 输入参数:设置该服务的入参,可选。
- 输出参数:同步时可设置该服务的出参,可选。
- 功能描述:输入文字,对该服务功能进行说明或备注。长度限制为 100 字。
5.2.1.5 事件参数描述
- 功能名称:事件的名称。
- 标识符:事件唯一标识符,在产品下具有唯一性。
- 事件类型
- 信息:指设备上报的一般性通知,如完成某项任务等。
- 告警:设备运行过程中主动上报的突发或异常情况,告警类信息,优先级高。您可以针对不同的事件类型进行业务逻辑处理和统计分析。
- 故障:设备运行过程中主动上报的突发或异常情况,故障类信息,优先级高。您可以针对不同的事件类型进行业务逻辑处理和统计分析。
- 输出参数:该事件的出参。
- 功能描述:输入文字,对该事件功能进行说明或备注。长度限制为 100 字。
5.2.2 编辑功能
选定需要编辑的功能,弹出编辑弹窗,可修改项说明与上述一致,点击【确定】即会更新功能。
5.2.3 删除功能
删除功能后,与此相关的数据将被清空(设备快照、调用统计等),通过此功能的上下行消息将无法通过校验。
5.2.4 导入、导出
- 导出:将当前产品的功能定义 JSON 字符串导出。
部分导出提示
输入搜索关键词,将导出按关键词匹配到的功能定义。
- 导入:将已有产品的功能定义导入到此产品中,根据提示,将新增/删除/更新该产品的功能定义,旧的功能定义将记录到历史记录中,用户可自行选择恢复。
5.2.5 功能历史记录
对功能的每次变更操作,都将记录到历史记录,形成一份快照,用户可选择恢复历史版本。
5.3 功能调用统计
可查看某一功能当前的调用次数,根据上下行消息统计得出。
5.4 功能定义对应的接口
功能定义描述了设备的能力模型,在云端或设备端调用功能定义对应的能力时,接口的具体参数参考: