
# 创建LINK产品
#### 概述
产品即设备模型，是同一类设备的服务属性集合。每个设备都有一个归属的产品，设备会继承产品的所有服务属性。
产品信息包含产品基本信息、物模型等信息，用于描述产品是什么，能做什么，可以对外提供哪些服务等。
- 基本信息 描述一款设备的基本信息，包括厂商名称、厂商ID、产品类型、产品型号、协议类型、设备类型等，其中产品型号和厂商ID共同标识一款产品。
  例如，水表的产品型号为"NBIoTDevice"，厂商名称为"HZYB"，厂商ID为"TestUtf8ManuId"，设备类型为"WaterMeter"。
  
- 物模型 定义设备所具备的业务能力。将设备业务能力拆分成若干个物模型服务后，再定义每个物模型服务具备的属性、命令以及命令的参数。
  以水表为例，水表具有多种能力，如上报水流、告警、电量、连接等各种数据，并且能够接受服务器下发的各种命令。在描述水表的能力时，可以将水表的能力划分五个物模型服务，每个物模型服务都需要定义各自的上报属性或命令，如下表所示。
  表1服务说明 
  | 物模型服务名                 | 描述                                                |
  |:---|:---|
  | 基础（WaterMeterBasic）    | 用于定义水表上报的水流量、水温、水压等参数，如果需要命令控制或修改这些参数，还需要定义命令的参数。 |
  | 告警（WaterMeterAlarm）    | 用于定义水表需要上报的各种告警场景的数据，必要的话需要定义命令。                  |
  | 电池（Battery）            | 定义水表的电压、电流强度等数据。                                  |
  | 传输规则（DeliverySchedule） | 定义水表的一些传输规则，必要的话需要定义命令。                           |
  | 连接（Connectivity）       | 定义水表连接参数。                                         |
     
  ![](https://support.huaweicloud.com/usermanual-roma/public_sys-resources/note_3.0-zh-cn.png)
  具体定义多少个物模型服务可以灵活处理，如上面的例子可以将告警物模型服务拆分成水压告警物模型服务和流量告警物模型服务，也可以将告警物模型服务合入到水表基础物模型服务中。
  
 
#### 前提条件
- 每个产品都要归属到某个集成应用下，在创建产品前您需要有可用的集成应用，否则请提前[创建集成应用](https://support.huaweicloud.com/usermanual-roma/create-application.html)。
- 如果您需要使用产品模板创建产品，请提前[创建产品模板](https://support.huaweicloud.com/usermanual-roma/create-product-template.html)。
 
#### 创建产品
1. 登录[ROMA Connect控制台](https://console.huaweicloud.com/roma3)，在左侧导航栏选择"资源管理"，在实例页面单击实例，进入实例控制台。
2. 在左侧的导航栏选择"设备集成 LINK \> 产品管理"，单击页面右上角的"创建产品"。
3. 在创建产品弹窗中配置产品相关信息，完成后单击"确认"。
   表2产品信息配置 
   | 参数   | 配置说明                                                                                                                                                                                                                                                                                                                                                                 |
   |:---|:---|
   | 产品类型 | 选择产品的类型。 - 普通产品：指直连设备或网关子设备类型的产品。  - 网关产品：指网关设备类型的产品，网关设备可以关联和管理子设备。                                                                                         |
   | 协议类型 | 选择产品所使用的协议类型。 - MQTT：是一种基于客户端-服务器的消息发布/订阅传输协议。  - Modbus：是一种串行通信协议。  - OPC UA：是一种基于以太网的通信协议。   |
   | 产品名称 | 填写产品的名称，根据规划自定义。建议您按照一定的命名规则填写产品名称，方便您快速识别和查找。 支持中文、英文大小写、数字、下划线和中划线，长度1-64个字符。                                                                                                                                                                                                                                                      |
   | 产品模板 | 选择产品模板后，创建的产品具有该产品模板的所有服务和属性。 仅支持选择"启用"状态的产品模板。                                                                                                                                                                                                                                                                                       |
   | 集成应用 | 选择产品所属的集成应用。                                                                                                                                                                                                                                                                                                                                                         |
   | 厂商名称 | 填写实际使用设备的厂商名字。 支持长度2-64个字符。                                                                                                                                                                                                                                                                                                          |
   | 厂商ID | 填写实际使用设备的厂商ID，自定义。 支持英文大小写、数字、下划线和中划线，长度2-50个字符。                                                                                                                                                                                                                                                                                   |
   | 产品型号 | 填写实际使用设备的产品型号，自定义。 产品型号和厂商ID共同标识一款产品，全局唯一，不可重复。 支持英文大小写、数字、下划线、中划线和空格（首尾空格会被忽略），长度2-50个字符。                                                                                                                                                                                                              |
   | 设备类型 | 选择接入设备的类型。可选择默认的Default Type，也可在实例信息页面中数据字典页签下的DEVICE_TYPE项中增加子项来增加设备类型选项，具体请参考[创建ROMA Connect实例数据字典](https://support.huaweicloud.com/usermanual-roma/roma_03_0044.html)。                                                                                                                                                                                            |
   | 模型版本 | 填写设备的模型版本，自定义。 支持英文大小写、数字、下划线和中划线，长度2-50个字符。                                                                                                                                                                                                                                                                                       |
   | 描述   | 填写产品的描述信息。                                                                                                                                                                                                                                                                                                                                                           |
      
   
4. 在产品列表查看到新创建的产品，表示产品创建成功。
 
#### 为产品添加物模型服务（可选）
1. 在实例控制台的"设备集成 LINK \> 产品管理"页面，单击产品的名称，进入产品详情页面。
2. 为产品添加物模型服务。
   1. 在"物模型"页签下，单击"创建物模型服务"。
   
   2. 在"创建物模型服务"弹窗中配置物模型服务相关信息，完成后单击"确认"。
      表3服务能力信息配置 
      | 参数      | 配置说明                                                                                                               |
      |:---|:---|
      | 物模型服务名称 | 填写物模型服务的名称，根据规划自定义。建议您按照一定的命名规则填写物模型服务名称，方便您快速识别和查找。 支持英文大小写、数字、下划线和中划线，长度2-50个字符。 |
      | 是否启用    | 是否启用该物模型服务，默认启用。                                                                                                   |
      | 描述      | 填写物模型服务的描述信息。                                                                                                      |
         
      
    
3. 为物模型服务添加属性。
   1. 在"物模型"页签下选择要添加属性的物模型服务。
   
   2. 在右侧物模型服务详情页的"属性"页签下，单击"创建属性"。
   
   3. 在新增属性弹窗中配置属性相关信息，完成后单击"确认"。
      表4属性信息配置 
      | 参数                                                                                                     | 配置说明                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
      |:---|:---|
      | 属性名称                                                                                                   | 填写属性的名称，根据规划自定义。建议您按照一定的命名规则填写属性名称，方便您快速识别和查找。 支持英文大小写、数字、下划线和中划线，不超过64个字符。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
      | 数据类型                                                                                                   | 选择属性数据的数据类型。 - Int：整型。选择"Int"时，还需填写最小值、最大值、步长和单位。  - Number：数值。选择"Number"时，还需填写最小值、最大值、步长和单位。  - String：字符串。选择"String"时，还需填写数据长度上限和枚举值。  - Bool：布尔型。选择"Bool"时，还需填写0和1对应的值。  - DateTime：日期。选择"DateTime"时，还需填写数据长度上限。  - JsonObject：json对象。选择"JsonObject"时，还需填写数据长度上限。  - Array：数组。   以Int整型为例： 为温度计产品定义温度属性时，将数据类型设置为int，最小值为0，最大值为100，步长为2，单位为℃。表示温度每变化两度，设备上报温度值，例如0℃、2℃、4℃、6℃、8℃等。 |
      | 是否必填                                                                                                   | 设备是否必须上报该属性，默认必填。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
      | 描述                                                                                                     | 填写属性的描述信息。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
      | 最小值 说明： 具体配置项根据所选数据类型展示，此处以Int类型为例。    | 物模型服务属性的最小值。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
      | 最大值 说明： 具体配置项根据所选数据类型展示，此处以Int类型为例。 | 物模型服务属性的最大值。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
      | 步长 说明： 具体配置项根据所选数据类型展示，此处以Int类型为例。   | 属性的步长。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
      | 单位 说明： 具体配置项根据所选数据类型展示，此处以Int类型为例。    | 属性的表达含义使用的单位，描述性内容，长度不超过50个字符。例如，温度的属性单位可以使用℃来表示。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
         
      
    
4. 为物模型服务添加命令。
   1. 在"物模型"页签下选择要添加命令的物模型服务。
   
   2. 在右侧物模型服务详情页的"命令"页签下，单击"创建命令"。
   
   3. 在创建命令弹窗中配置命令相关信息，完成后单击"确认"。
      表5命令信息配置 
      | 参数   | 配置说明                                                                                                         |
      |:---|:---|
      | 命令名称 | 填写命令的名称，根据规划自定义。建议您按照一定的命名规则填写命令名称，方便您快速识别和查找。 支持英文大小写、数字、下划线和中划线，长度2-50个字符。 |
      | 描述   | 填写命令的描述信息。                                                                                                   |
         
      
   
   4. 在命令列表中找到刚创建的命令，单击命令名称前的"![](https://support.huaweicloud.com/usermanual-roma/zh-cn_image_0272358252.png "点击放大")"展开命令字段列表。
      单击右侧的"下发命令字段"或"响应命令字段"，可分别查看该命令的下发命令字段和响应命令字段。
      
   
   5. 单击"创建下发命令字段"或"创建响应命令字段"。
   
   6. 在新增下发/响应命令弹窗中配置命令字段相关信息，完成后单击"确认"。
      表6命令字段信息配置 
      | 参数                                                                                                      | 配置说明                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
      |:---|:---|
      | 字段名称                                                                                                    | 填写字段的名称，根据规划自定义。建议您按照一定的命名规则填写字段名称，方便您快速识别和查找。 支持英文大小写、数字、下划线和中划线，长度2-50个字符。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
      | 数据类型                                                                                                    | 选择字段数据的数据类型。 - Int：整型。选择"Int"时，还需填写最小值、最大值、步长和单位。  - Number：数值。选择"Number"时，还需填写最小值、最大值、步长和单位。  - String：字符串。选择"String"时，还需填写数据长度上限和枚举值。  - Bool：布尔型。选择"Bool"时，还需填写0和1对应的值。  - DateTime：日期。选择"DateTime"时，还需填写数据长度上限。  - JsonObject：json对象。选择"JsonObject"时，还需填写数据长度上限。  - Array：数组。   |
      | 是否必填                                                                                                    | 下发的命令中是否必须携带该字段，默认必填。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
      | 描述                                                                                                      | 填写对该字段的描述信息。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
      | 最小值 说明： 具体配置项根据所选数据类型展示，此处以Int类型为例。 | 下发命令字段的最小值。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
      | 最大值 说明： 具体配置项根据所选数据类型展示，此处以Int类型为例。   | 下发命令字段的最大值。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
      | 步长 说明： 具体配置项根据所选数据类型展示，此处以Int类型为例。   | 下发命令字段的步长。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
      | 单位 说明： 具体配置项根据所选数据类型展示，此处以Int类型为例。    | 下发命令字段表达含义使用的单位，描述性内容，长度不超过50个字符。例如，电压的字段单位可以使用伏特来表示。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
         
      
    
 
#### 为产品添加自定义Topic（可选）
如果设备的基础Topic无法满足您的使用需要，您可以为设备自定义Topic。在产品中添加自定义Topic，会被该产品下的所有设备继承。
1. 在实例控制台的"设备集成 LINK \> 产品管理"页面，单击产品的名称，进入产品详情页面。
2. 在"Topic类"页签下，单击"定义Topic类"。
3. 在创建Topic类弹窗中配置自定义Topic相关信息，完成后单击"保存"。
   表7自定义Topic信息配置 
   | 参数      | 配置说明                                                                                                                                                                                                                                                                              |
   |:---|:---|
   | 权限      | 选择设备对该Topic的操作权限。 - 发布：设备可发布消息到该Topic。  - 订阅：设备可订阅该Topic，从Topic获取消息。   |
   | Topic类名 | 填写自定义Topic名称中的定制字段部分。定制字段、设备ID和定制字段一起组成自定义Topic：{定制字段}/{设备ID}/{定制字段}。 支持字母、数字、下划线（_）、中划线（-），值以字母或数字开头和结尾，长度2-50个字符。                                                                                                                             |
   | 版本号     | 填写Topic的版本号，自定义，例如V1.0。 支持字母、数字、中划线（-）和点号（·），值以字母或数字开头和结尾，长度2-50个字符。                                                                                                                                                                            |
   | 描述      | 填写自定义Topic的描述信息。                                                                                                                                                                                                                                                                  |
      
   
 
#### 相关文档
如果您希望通过API创建LINK产品，请参考[创建产品](https://support.huaweicloud.com/api-roma/CreateProduct.html)。
