文档

编辑自定义功能

更新时间:
一键部署

当标准功能不能满足实际业务需求时,可以根据自身业务自定义物模型功能。本文介绍如何编辑自定义功能,包括新增自定义功能、修改自定义功能和删除自定义功能。

前提条件

  1. 已登录Link Visual(标准版)的控制台

  2. 已创建项目

  3. 在创建的项目下已创建产品

使用限制

  • 如果产品状态是已发布,该产品下所有的自定义功能都不支持被删除。

  • 如果产品下已有设备上线使用中,请避免再进行编辑和变动自定义功能。

添加自定义功能

  1. 在项目空间下的产品管理页面,单击产品开发页签。

    image.png
  2. 单击目标产品卡片,进入产品开发详情页面。

    如果目标产品已发布,需先撤销产品发布,再回到该产品开发的详情页面。

  3. 单击产品功能定义页面上方的编辑草稿,进入功能定义的草稿态页面。

    image.png
  4. 在功能定义的草稿态页面中,单击添加自定义功能

    image.png
  5. 您可以为产品自定义属性(properties)、服务(services)、事件(events),三种功能类型的相应参数配置不同。

    自定义属性

    添加自定义功能对话框,选择功能类型属性。设置参数完成后,单击确定

    image.png

    参数

    描述

    功能名称

    属性的名称,例如:最大录像时长。同一产品下功能名称不能重复。

    支持中文、英文字母、日文、数字、短划线(-)、下划线(_)、正斜线(/)和英文句号(.),且必须以中文、英文、日文或数字开头,不超过30个字符。

    输入功能名称时,将从标准功能库中筛选匹配的标准功能供您选择,您可以参考标准功能进行配置。

    标识符

    属性唯一标识符,在产品中具有唯一性。即Alink JSON格式中的identifier的值,作为设备上报该属性数据的Key,云端根据该标识符校验是否接收数据。支持英文、数字和下划线(_),不超过50个字符,例如:PowerConsumption。

    说明

    不能用以下系统保留参数作为标识符:set、get、post、property、event、time、value。

    数据类型

    • int32:32位整型。需定义取值范围、步长和单位符号。

    • float:单精度浮点型。需定义取值范围、步长和单位符号。

    • double:双精度浮点型。需定义取值范围、步长和单位符号。

    • enum:枚举型。定义枚举项的参数值和参数描述,例如:1表示加热模式、2表示制冷模式。

    • bool:布尔型。采用0或1来定义布尔值,例如:0表示关、1表示开。

    • text:字符串。需定义字符串的数据长度,最长支持10240字节。

    • date:时间戳。格式为String类型的UTC时间戳,单位:毫秒。

    • struct:JSON对象。定义一个JSON结构体,新增JSON参数项,例如:定义灯的颜色是由Red、Green、Blue三个参数组成的结构体。不支持结构体嵌套。

    • array:数组。需声明数组内的元素类型、数组元素个数。元素类型可选择int32、float、double、text或struct,需确保同一个数组元素类型相同。元素个数,限制1~512个。

    取值范围

    数据类型为int32、float、double时,可设置属性值的取值范围。

    步长

    属性值变化的最小粒度。数据类型为int32、float、double时,可根据您的业务需要设置步长。

    例如:为摄像头产品定义转动角度属性时,将数据类型设置为double,步长为0.01,单位为度,取值范围0.0~360.0。即摄像头的旋转角度每变化0.01度,设备上报角度值,例如:0.01度、0.02度、0.03度、0.04度、0.05度等。

    单位

    单位可选择为无,或根据实际情况选择。

    读写类型

    • 读写:请求读写的方法支持GET(获取)和SET(设置)。

    • 只读:请求只读的方法仅支持GET(获取)。

    描述

    输入文字,对该功能进行说明或备注。长度限制为100个字符。

    自定义服务

    添加自定义功能对话框,选择功能类型服务。设置参数完成后,单击确定

    image.png

    参数

    描述

    功能名称

    服务名称。支持中文、英文字母、日文、数字、短划线(-)、下划线(_)、正斜线(/)和英文句号(.),且必须以中文、英文、日文或数字开头,不超过30个字符。

    输入功能名称时,将从标准功能库中筛选匹配的标准功能供您选择,您可以参考标准功能进行配置。

    标识符

    服务唯一标识符,在产品下具有唯一性。即Alink JSON格式中该服务的identifier的值。支持英文、数字和下划线(_),不超过50个字符。

    说明

    不能用以下系统保留参数作为标识符:set、get、post、property、event、time、value。

    调用方式

    • 异步:服务为异步调用时,云端执行调用后直接返回结果,不会等待设备的回复消息。

    • 同步:服务为同步调用时,云端会等待设备回复;若设备没有回复,则调用超时。

    输入参数

    设置该服务的入参,可选。

    单击增加参数,在弹窗对话框中添加服务入参。

      说明

      不能用以下系统保留参数作为输入参数的标识符:set、get、post、property、event、time、value。

      您可以使用某个属性作为入参,也可以自定义参数。

      一个服务最多支持定义20个入参。

    输出参数

    设置该服务的出参,可选。

    单击增加参数,在弹窗对话框中添加服务出参。

      说明

      不能用以下系统保留参数作为输出参数的标识符:set、get、post、property、event、time、value。

      您可以使用某个属性作为出参,也可以自定义参数。

      一个服务最多支持定义20个出参。

    描述

    输入文字,对该服务功能进行说明或备注。长度限制为100个字符。

    自定义事件

    添加自定义功能对话框,选择功能类型事件。设置参数完成后,单击确定

    image.png

    参数

    描述

    功能名称

    事件的名称。支持中文、英文字母、日文、数字、短划线(-)、下划线(_)、正斜线(/)和英文句号(.),且必须以中文、英文、日文或数字开头,不超过30个字符。

    输入功能名称时,将从标准功能库中筛选匹配的标准功能供您选择,您可以参考标准功能进行配置。

    标识符

    事件唯一标识符,在产品下具有唯一性。即Alink JSON格式中该事件的identifier的值,作为设备上报该事件数据的Key,例如:ErrorCode。 支持英文、数字和下划线(_),不超过50个字符。

    说明

    不能用以下系统保留参数作为标识符:set、get、post、property、event、time、value。

    事件类型

    您可以针对不同的事件类型进行业务逻辑处理和统计分析。

    • 信息:指设备上报的一般性通知,例如:完成某项任务。

    • 告警:设备运行过程中主动上报的突发或异常情况,告警类信息,优先级高。

    • 故障:设备运行过程中主动上报的突发或异常情况,故障类信息,优先级高。

    输出参数

    该事件的出参。单击增加参数,在弹窗对话框中添加一个服务出参。您可以使用某个属性作为出参,也可以自定义参数。

      说明

      不能用以下系统保留参数作为输出参数的标识符:set、get、post、property、event、time、value。

      一个事件最多支持定义50个出参。

    描述

    输入文字,对该事件功能进行说明或备注。长度限制为100个字符。

  6. 发布物模型功能。

    1. 单击发布上线

      image.png
    2. (可选)单击添加发布备注,输入版本号版本描述

      如果不配置版本信息,系统会默认版本号。

      image.png
    3. 单击比对结果,在比对结果对话框中查看修改点。确认无误后,选中“确认已查看当前版本与线上版本的比对结果”前的复选框。

    4. 单击确定,完成发布上线

      image.png

修改自定义功能

当自定义功能中的设置不符合预期需求时,可以对已添加的自定义功能内容进行修改。

  1. 单击自定义功能中对应操作列的编辑

    image.png
  2. 修改参数,然后单击确定

    说明

    功能编辑中部分参数不支持修改(灰色显示部分,如功能类型),您需根据具体的功能类型进行修改。

  3. 单击发布上线,参考上文添加自定义功能步骤6,完成物模型功能发布。

删除自定义功能

当不再需要自定义功能时,可以删除该自定义功能。

  1. 单击自定义功能中对应操作列的删除

    image.png
  2. 在弹出的对话框中,单击确定

  3. 单击发布上线,参考上文添加自定义功能步骤6,完成物模型功能发布。