检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
池的情况下,需要提供定向IP地址或域名才能购买。因此如果您的物联网卡需要访问华为云IoT平台时,请您检查物联网卡的定向信息是否包含华为云IoT平台的域名。 图7 物联网卡 查询华为云IoT平台接入域名,详细步骤可以参考资源获取。 GSL控制台定向域名/IP修改方式进入订单管理页面,详细步骤请参考订单管理资料。
Address 填写从设备接入服务控制台获取的平台对接信息,此接入地址为域名信息。不能通过域名接入的设备,通过在cmd命令框中执行“ping 域名”获取IP地址,用IP地址接入平台。由于IP地址不固定,您需要将IP地址做成可配置项。 Broker Port 默认为1883。 Cliend
导出和导入产品模型 产品模型作为一种资源,可以从物联网平台导出,也可以导入到物联网平台。 当产品开发完成并测试验证后,需要将在线开发的产品模型移植时,则可以将产品模型导出到本地。 当您已经有完备的产品模型(线下开发或从其他项目/平台导出),或者使用excel编辑开发产品模型时,可以将产品模型直接导入到“物联网平台”。
在控制台配置自定义鉴权、Topic策略和数据流转方案,请参见1.平台端配置开发。 设备端调整接入到平台的域名,请参见2.设备端域名切换。 对应用端进行业务开发,实现接收设备数据和下发控制指令,请参见3.应用端SDK适配。 1.平台端配置开发 配置自定义鉴权。 访问函数服务(Func
内网访问:内网访问将为当前负载配置一个负载域名或内网域名/虚拟IP,使得当前负载能够为内网中其他负载提供服务,分为Service和ELB两种方式。 公网访问:通过弹性负载均衡,从外部访问负载。 本例中,选择配置为“公网访问”,这样可以通过负载均衡的IP和端口访问创建的负载。 图1 负载访问
单击左侧导航栏的“总览”,单击“当前实例 -> 接入信息”查看设备接入信息,记录域名和端口。 图1 总览-获取接入信息 针对不支持用域名接入的设备,通过在cmd命令框中执行“ping 域名”获取IP地址,用IP地址接入平台。由于IP地址不固定,您需要将IP地址做成可配置项。 创建产品 创建MQTT协议产品。
创建注册组 MQTT证书接入的设备,可以在设备发放创建一个注册组,绑定对应的CA证书和自定义策略,可以实现批量设备的自注册,实现设备一键上电即可上云的动作,可在注册组详情中查看该注册组下所有的设备。 进入“设备-注册组”界面,单击右上角“新增注册组”。 图10 新增注册组 按照
全新的设备接入服务,包含哪些功能? 设备接入服务和设备管理服务合一后,如何计费? 开发中心去哪里了? 如何获取对接物联网平台的地址? 如何获取新域名和老域名接入的地址/证书? 新老域名接入的鉴权方式有什么区别? 命令/属性下发总是超时? 应用侧如何获取appid和secret? Java SDK
填写“IP地址”、“VerifyCode”和“PSK”,单击“注册设备”,将模拟器与物联网平台进行绑定。 注:如果未开启DTLS加密传输,则无需填写密钥。 如下信息根据实际情况填写: IP地址:物联网平台的接入域名(也可以使用IP,通过ping命令“ping 域名”可以获得IP地址)。
原生场景:自定义模板鉴权可以让用户扩展自己的设备鉴权方式,而不需要与平台默认鉴权绑定,极大的提高了设备可扩展性。 约束与限制 使用自定义鉴权功能,要求设备必须使用TLS同时支持SNI(Server Name Indication),SNI中需要携带平台分配的域名。 默认每个用户最多支持5个自定义鉴权模板,只能启用一个激活状态的模板。
SDK。 设备接入前,需创建产品(可通过控制台创建或者调用应用侧API接口创建产品)。 产品创建完毕后,需注册设备(可通过控制台注册单个设备或者使用应用侧API接口注册设备)。 设备注册完毕后,按照图中流程实现消息/属性上报、接收命令/属性/消息、OTA升级、自定义TOPIC、泛协议接入(相关Demo)等功能。
本示例使用的Python语言的AMQP SDK为python-qpid-proton(本示例使用版本为0.37.0),可以通过以下命令安装最新版本SDK。 pip install python-qpid-proton 也可以参考(Installing Qpid Proton)手动安装。 代码示例 import
下载并修改华为SDK示例代码进行设备引导(这里以java sdk代码为示例)。 用IDEA/Eclipse打开SDK代码工程,修改DEMO示例BootstrapSample中的参数,其中deviceId和secret替换为步骤3中生成的设备ID和密钥即可,bootstrapUri为获取设备发放终端节点对应的终端节点。
IotClient(client_cfg) server_ip:物联网平台的设备对接地址,可参考平台对接信息获取(获取的是域名信息,可通过在cmd命令框中执行“ping 域名”,获取IP地址); device_id和secret:在成功注册设备后获取; is_ssl:设置为True
secret = "******"; serverIp为物联网平台的设备对接地址,可参考平台对接信息获取(获取的是域名信息,可通过在cmd命令框中执行“ping 域名”,获取IP地址)。 deviceId和secret为设备ID和密钥,在成功注册设备后获取。 修改完1中的参数后就
图1 添加自定义策略 新增注册组 图2 新增注册组 图3 添加云证书自定义策略注册组 创建并下载设备证书 图4 创建云证书注册组设备证书 图5 创建云证书注册组设备证书详情 设备证书创建成功后,单击“下载”设备证书和私钥,并烧录到设备。 图6 下载云证书注册组设备证书 连接鉴权 MQTT
设备密钥,可自定义。若不填写密钥,物联网平台会自动生成密钥。 设备注册成功后保存设备标识码、设备ID、密钥。 设备初始化 创建设备时,需要写入在注册设备时获取的设备ID、密码,以及1中获取的设备对接信息,注意格式为ssl://域名信息:端口号 或 ssl://IP地址:端口号 1 2 3 4 5 6
创建设备策略 功能介绍 应用服务器可调用此接口在物联网平台创建一个策略,该策略需要绑定到设备和产品下才能生效。 一个实例最多能创建50个设备策略。 仅标准版实例、企业版实例支持该接口调用,基础版不支持。 调用方法 请参见如何调用API。 URI POST /v5/iot/{pro
如果需要使用自定义域名, 请打开开关“使用自定义域名”,选择OBS桶配置的自定义域名,并选择使用访问方式HTTPS/HTTP,单击“确定”完成配置。 图4 文件上传-存储配置自定义域名 使用自定义域名后,平台下发给设备上传或下载的临时URL域名为自定义域名。设备可以通过该URL上传或下载OBS文件。
真机调测时请在微信开发者工具-详情-本地设置-不校验合法域名,将其取消勾选,再在微信公众平台-小程序管理员界面-开发管理-服务器域名中添加socket合法域名('wss://'+MQTT接入地址)。 图4 连接到平台 单击连接到平台按钮,在域名、设备ID和密钥正确的情况下,可以看到日志设备连接成功,可在平台查看设备状态,如下图: