请选择 进入手机版 | 继续访问电脑版
查看: 3003|回复: 0

[技术交流] 【和你一起聊聊NB-IoT】电信IoT平台-profile生成

[复制链接]

50

主题

409

帖子

1309

积分

利尔达员工

Rank: 9Rank: 9Rank: 9

积分
1309
发表于 2019-5-5 09:06:34 | 显示全部楼层 |阅读模式
profile是个由两个文件夹组成的zip
1 profile文件夹
新建一个文件夹命名为profile并在该文件夹内新建文件devicetype-capability.json,内容如下:
{
    "devices": [
        {
            "manufacturerId": "TestPlug",
            "manufacturerName": "TestPlug",
            "model":  "T001",
            "protocolType": "CoAP",
            "deviceType": "TEST",
            "omCapability":
            {
            "upgradeCapability":{
            "supportUpgrade":false  
            },
            "fwUpgradeCapability":{
            "supportUpgrade":true,
            "upgradeProtocolType":"LWM2M",
            "downloadProtocolType":"CoAP"
            }
            },
            "serviceTypeCapabilities": [
                {
                    "serviceId": "Connectivity",
                    "serviceType": "Connectivity",
                    "option": "Mandatory"
                },
               {
                    "serviceId": "SystemCmdRawData",
                    "serviceType": "SystemCmdRawData",
                    "option": "Master"
                }

        }
}
其中manufacturerId,manufacturerName,model,deviceType属性可以自定义,只要与插件对应即可,对应关系,见下篇《透传编解码插件开发》。
2 service文件夹
新建一个文件夹命名为service,在该文件夹下再新建两个文件夹(每个文件夹对应插件内编写好的服务字段,这里以透传插件为例),一个叫Connectivity,另一个叫SystemCmdRawData。
2.1 Connectivity
在该文件夹内新建文件夹profile并在profile内新建文件servicetype-capability.json内容如下:
{
    "services": [
        {
            "serviceType": "Connectivity",
            "description": "Connectivity",
            "commands": null,
            "properties": [
                {
                    "propertyName": "signalStrength",
                    "dataType": "int",
                    "required": true,
                    "min": -110,
                    "max": -48,
                    "step": 1,
                    "maxLength": 0,
                    "method": "RE",
                    "unit": "dbm",
                    "enumList": null
                },
                {
                    "propertyName": "linkQuality",
                    "dataType": "int",
                    "required": false,
                    "min": -110,
                    "max": -48,
                    "step": 1,
                    "maxLength": 0,
                    "method": "RE",
                    "unit": "dbm",
                    "enumList": null
                },
                {
                    "propertyName": "cellId",
                    "dataType": "int",
                    "required": false,
                    "min": 0,
                    "max": 268435455,
                    "step": 1,
                    "maxLength": 0,
                    "method": "RE",
                    "unit": null,
                    "enumList": null
                }
        }
}
2.2 SystemCmdRawData
在该文件夹内同样新建文件夹profile并在profile内新建文件servicetype-capability.json内容如下:
{
    "services": [
        {
            "serviceType": "SystemCmdRawData",
            "description": "SystemCmdRawData",
            "commands":[
                {
                    "commandName": "COMMAND",
                    "paras": [
                        {
                            "paraName": "value",
                            "dataType": "string",
                            "required": true,
                            "min": 0,
                            "max": 200,
                            "step": 1,
                            "maxLength": 1000,
                            "unit": null,
                            "enumList": null
                        }
                    ],
                    "responses": [
                        {
                            "responseName": "COMMAND_RSP",
                            "paras": [
                                {
                                    "paraName": "result",
                                    "dataType": "int",
                                    "required": true,
                                    "min": -1000000,
                                    "max": 1000000,
                                    "step": 1,
                                    "maxLength": 10,
                                    "unit": null,
                                    "enumList": null
                                }
                            ]
                        }
                    ]
                }
            ],
            "properties": [
                {
                    "propertyName": "SystemCmdRawData",
                    "dataType": "string",
                    "required": true,
                    "min": 0,
                    "max": 200,
                    "step": 1,
                    "maxLength": 1000,
                    "method": "RE",
                    "unit": null,
                    "enumList": null
                }

        }
}
3 压缩

最后,将service和profile文件夹添加到压缩包,以deviceType_manufacturerId_model.zip命名如TEST_TestPlug_T001即可。

4 上传

5、profile示例







本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表