检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
划不同地区的设备名称。 例如:北京地区设备,设备名称都携带Beijing;香港地区设备,设备名称都携带Hongkong。 设备ID 设备ID默认为产品ID+“_”+设备标识码,用户也可自己定义。 发放策略 根据需求选择对应的发放策略类型,注册设备成功后,设备将按照对应的策略进行发放。
基于MQTT协议的上行请求引导和下行接受引导信息的业务定义如下: 业务场景 通信Topic 报文Payload 设备请求引导消息 $oc/devices/{device_id}/sys/bootstrap/up / 服务接收引导信息 $oc/devices/{device_id}/sys/bootstrap/down
Certificate File和Client Key File填写使用已上传并验证了的CA证书签发的设备证书和设备证书私钥路径。如证书为PEM格式,请勾选“PEM Formatted”。 具体配置请参见下图: “User Credentials”的“User Name”字段填写设备ID。具体配置参见下图:
固定报头(Fixed header)和可变报头(Variable header)格式的填写直接MQTT标准规范。有效载荷(Payload)部分在PUB消息中可以由应用定义,即设备和设备发放平台之间自己定义。 下面主要介绍CONNECT、SUB和PUB消息格式的填写。 CONNECT
买物联网卡和套餐。 2. 设备完成设备发放平台接入地址和设备鉴权信息的烧录。设备发放平台接入地址请在控制台中获取。 LiteOS设备(LwM2M):需要烧录设备发放平台接入地址、设备标识码、引导服务端PSK。 原生MQTT协议设备,需要烧录设备发放平台接入地址、设备ID、设备密钥。
设备向发放服务请求对应设备接入实例的引导信息。 Topic 表1 上报Topic说明 Topic $oc/devices/{device_id}/sys/bootstrap/up 消息发送方 设备 消息接收方 设备发放平台 示例 设备向发放服务发送的payload为空。 父主题:
-sha256 生成验证证书用到的“rootCA.crt”和“rootCA.key”这两个文件,为“制作CA证书”中所生成的两个文件。 “-days”后的参数值指定了该证书的有效天数,此处示例为500天,您可根据实际业务场景和需要进行调整。 上传验证证书进行验证。 图4 上传验证证书
相关信息。其中General 可以使用工具默认信息。 其中Broker Address和Broker Port可以参考获取终端节点,Client ID 可以参考MQTT CONNECT连接鉴权参数说明,访问这里填写设备ID(DeviceId)等设备信息,生成连接信息(ClientId、Username、Password)。
Connection Profile 相关信息和 General 信息。其中General 信息可以用工具默认的参数配置。 填写 User Credentials 信息。 对于设备而言,设备secret的值为使用“HMACSHA256”算法以“设备ID”为密钥,对“注册组密钥”进行加密后的值。
用IDEA/Eclipse打开SDK代码工程,修改DEMO示例BootstrapSample中的参数,其中deviceId和secret替换为步骤3中生成的设备ID和密钥即可,bootstrapUri为获取设备发放终端节点对应的终端节点。 运行DEMO程序,看到如下日志,代表设备发放
设备接收引导信息 接口功能 设备接收发放服务下发的引导信息。 Topic 表1 下发Topic说明 Topic $oc/devices/{device_id}/sys/bootstrap/down 消息发送方 设备发放平台 消息接收方 设备 参数说明 表2 下发参数说明 参数 必选/可选 类型
授权租户和被授权租户不能相同 请确认授权租户和被授权租户填写是否正确 400 IoTDP.105004 authorizingDomainId and authorizingUserName is null 授权租户的账号名和账号ID均为空 请填写正确的账号名或账号ID 400 IoTDP
File为设备的私钥。 完成以上步骤后,单击“Apply”和“OK”进行保存,并在配置文件框中选择刚才创建的文件名,单击“Connect”,当右上角圆形图标为绿色时,说明连接设备发放服务成功,可进行订阅(Subscribe)和消息推送(Publish)操作。 引导消息订阅 按照设备
包上传。如使用到第三方库,则需将工程Jar包和第三方Jar包打包成一个Zip包。 本文使用到了多个第三方库,因此,如下图所示,将工程Jar包和第三方Jar包打包成一个Zip包。 进入函数工作流服务控制台,创建函数并上传包含工程Jar包和第三方Jar包的Zip包。 为避免调试过程中
将上报信息中携带Beijing的设备发放至华北-北京四的物联网平台。 关键字来源:数据上报 topic“$oc/devices/${device_id}/sys/bootstrap/up”上报信息:{ "baseStrategyKeyword": "WaterMeter-Beijing0003"}
-sha256 生成验证证书用到的“rootCA.crt”和“rootCA.key”这两个文件,为“制作CA证书”中所生成的两个文件。 “-days”后的参数值指定了该证书的有效天数,此处示例为500天,您可根据实际业务场景和需要进行调整。 上传验证证书进行验证。 图4 上传验证证书
附录 状态码 错误码 获取项目ID
被授权方进入“授权”界面,单击在“被授权列表”下的“发起授权请求”。 图1 发起授权请求 被授权方填写授权方的账号名称或者账号ID(即IAM的Domain Name或Domain ID),单击“获取短信验证码”。 图2 发起授权请求详情 系统将向授权方绑定的手机号发送短信验证码,被授权方从授权方
-sha256 生成验证证书用到的“rootCA.crt”和“rootCA.key”这两个文件,为“制作CA证书”中所生成的两个文件。 “-days”后的参数值指定了该证书的有效天数,此处示例为500天,您可根据实际业务场景和需要进行调整。 上传验证证书进行验证。 图4 上传验证证书
制作CA证书 本文以Windows环境为例,介绍通过Openssl工具制作CA证书和验证证书的方法。 以下“生成密钥对(rootCA.key)”和“生成CA证书(rootCA.crt)”为操作过程中需要使用到的两个文件。 制作CA证书 在浏览器中访问这里,下载并进行安装OpenSSL工具,安装完成后配置环境变量。