检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
AppClient方法说明 ModuleSDK中,客户端类AppClient提供多个方法供客户开发应用时使用,使用时可参考每个函数的功能定义。 表1 AppClient方法说明 接口 说明 createFromEnv 根据环境变量创建客户端,相关配置参数从环境变量获取。 setBusMessageCallback
DcClient方法说明 ModuleSDK中,客户端类DcClient提供多个方法供客户开发应用时使用,使用时可参考每个函数的功能定义。 表1 DcClient方法说明 接口 说明 createFromEnv 根据环境变量创建客户端,相关配置参数从环境变量获取。 setPointsCallback
内部架构 表1 通用接口 接口 说明 IModuleShadowCallback 模块影子回调,实现对影子通知的处理 IPointsCallback 点位处理回调,实现点位的读写操作 IConnectionStatusChangeCallback 连接状态变化回调接口,用于MQTT连接状态改变时的处理
代码解析 开发自定义驱动,进行OT数采。 public class DcDriver implements PointsCallback, ModuleShadowNotificationCallback { /** * 数采应用客户端,与边缘Hub建立MQTT连接
DriverClient方法说明 ModuleSDK中,客户端类DriverClient提供多个方法供客户开发应用时使用,使用时可参考每个函数的功能定义。 表1 DriverClient方法说明 接口 说明 createFromEnv 根据环境变量创建客户端,相关配置参数从环境变量获取。
集成ModuleSDK后,上报数据成功后,设备状态显示为未激活,如何上报子设备状态? 集成ModuleSDK后,目前边缘非直连设备,不能动态获取设备状态,只能根据自身业务是否正常,主动上报设备状态,来更新设备状态。 代码解析: 片段一:初始化构造函数,初始化设备状态数据。 public
接口方法 表1 DcClient支持的接口方法 接口 说明 CreateFromEnv 创建客户端 ,执行初始化操作 Open 打开客户端,开始消息收发 Close 关闭客户端,清理资源 ForbidSendWhenBrokerOverLoaded 设置是否在离线缓存达到阈值时禁止发送数据
边缘节点离线排查指南 问题描述 在IoTEdge边缘控制台的“边缘节点”>“节点管理页面”,查看节点状态,期望状态是在线,但实际状态为离线。 可能原因 安装边缘节点的机器存在网络限制,包括但不限于安全组未放通、系统防火墙限制、路由器拦截等。 安装边缘节点的机器底层网络不稳定,存在丢包情况。
edge_send_delete_sub_device(device_info, 2); } /* * 描述:同步子设备调用方式示例 * 参数; * version:版本(添加子设备成功后回调接口有此字段) * */ void send_sync_sub_device(long long version){
代码解析 开发自定义驱动,进行OT数采。 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40
代码解析 项目结构如下 表1 类相关说明 类名称 描述 Device 设备类,包含设备的id,产品id,slaveId及能力定义。 Main 主启动类。 ModbusCfg modbus配置。 ModbusDriver 业务主体类,该类含边侧设备添加,设备同步,数据收集及上报等演示。
OT数采配置 添加数采模板 描述数采配置项的元数据,数采配置包括数据源配置元数据、点位采集配置元数据。 系统数据源模板导入 数据源模板描述了数据源配置项的元数据,用户在配置数据源之前,需要先导入数据源模板。IoT边缘服务当前已经预置通用数据源模板,可以直接使用,系统也支持用户自定义导入模板。
接口函数 表1 edge.h中支持的接口函数 接口 说明 edge_init 初始化sdk的工作环境,加载证书、读取配置等 edge_set_callbacks 注册回调接口,登录、子设备添加、删除、设备消息、设备命令等都是异步通知的,故需要注册对应的处理函数 edge_login
Demo2 该Demo主要展示edge_driver.h里的回调函数和接口函数使用。 #include "edge_driver.h" #include <stdio.h> #include <string.h> #include <unistd.h> /** * 驱动Demo