发布时间: 2018-03-05 10:58:32
鉴权(Auth)

Application订阅平台数据

注册直连设备的通知

Profile简介
开发者使用华为IoT平台集成设备时需要准备此设备的能力描述文件,既设备的Profile文件。 
    设备的Profile文件是用来描述一款设备“是什么”、“能做什么”以及“如何控制该设备”的文件。该文件会被上传到华为IoT平台。 
     Profile命名规范l 对设备类型、服务类型、服务标识采用首字母大写的命名法, 
        	如:MultiSensor、Switch; 
    参数使用首字母小写,其余单词的首字母大写的驼峰式命名法, 
         	如:paraName、dataType; 
    命令使用所有字母大写,单词之间用下划线连接的格式, 
         	如:DISCOVERY,CHANGE_COLOR; 
    设备能力描述json文件, 
         	固定命名devicetype-capability.json;
    服务能力描述json文件, 
固定命名servicetype-capability.json;
Profile命名规范注意点
厂商标识、型号唯一标示一个设备类型,故这两者不能与其他类型设备同时重复。仅支持英文。
    设备类型和厂商标识之间不要使用下划线,平台是根据下划线从左到右依次区分设备类型、厂商标识和设备型号的。 Profile设计规范l 要注重名称的通用性,简洁性;对于服务能力描述,还要考虑其功能性。 
如:对于多传感器设备,就可以命名为Multi(多)Sensor(传感器);对于某设备具有显示电量的服务,就可以命名为Battery。
Profile文件打包结构Profile写作完成后,需要按如下表格形式打包。
下面以附录四中WaterMeter_Huawei_NBIoTDevice.zip为例介绍。

关于上图有几点说明:
① Profile文件的目录层级结构必须如图所示,不能增删;
比如第二层级必须只有“profile”和“service”两个文件夹,每个服务下面必须包含“profile”等。
② 图中橙色的命名不能改动;
③ 整个Profile以zip形式压缩;
④ Profile文件的命名必须按照deviceType_manufacturerId_model的格式命名,其中的deviceType、manufacturerId、model必须与devicetype-capability.json中的对应字段的定义一致,例如,本例中的devicetype-capability.json的主要字段如下:
{ 
    "devices": [ 
        { 
            "manufacturerId": "Huawei", 
            "manufacturerName": "Huawei", 
            "model": "NBIoTDevice", 
            "protocolType": "CoAP", 
            "deviceType": "WaterMeter", 
            "serviceTypeCapabilities": ****
        } 
    ] 
}
⑤ 图中的Brightness、Electricity、Temperature都是devicetype-capability.json中定义的服务。
⑥ Profile文件中的文档格式都是json,在编辑完成后可以在互联网上查找一些格式校验网站,检查json的合法性。