方案概述
基于ModuleSDK开发应用实现数据处理或自定义驱动时,分为开发和使用两个部分。
开发操作 |
开发说明 |
---|---|
App应用的开发 |
利用AppClient和DriverClient进行自定义的业务处理 |
App应用的使用 |
将应用打包上传至云,部署到节点。连接子设备查看应用工作。 |
4.3.2.2 接口函数
接口 |
说明 |
---|---|
createFromEnv |
根据环境变量创建客户端,相关配置参数从环境变量获取 |
setBusMessageCallback |
设置总线消息回调,用于对设备上报的数据进行处理 |
sendBusMessage |
向总线发送消息,用于将处理后的设备数据发送到总线 |
callDeviceCommand |
调用设备命令 |
getDevicesStatus |
查询设备状态 |
getDevicesInfos |
查询子设备列表 |
getDeviceProperties |
获取设备属性 |
- 创建客户端
public static AppClient createFromEnv()throws GeneraException
函数功能:
根据环境变量创建客户端,相关配置参数从环境变量获取
- 设备总线消息回调
public void setBusMessageCallback(java.lang.String inputName,BusMessageCallback callback)throws java.lang.IllegalArgumentException
函数功能:
设置总线消息回调,用于对设备上报的数据进行处理
表2 参数名称
类型
参数描述
inputName
String
模块输入点
callback
BusMessageCallback
回调类实例
- 设备数据发送至总线
public void sendBusMessage(java.lang.String outputName,BusMessage message)throws java.lang.IllegalArgumentException,JsonException
函数功能:
向总线发送消息,用于将处理后的设备数据发送到总线
表3 参数名称
类型
参数描述
outputName
String
模块输出点
message
BusMessage
回调类实例
- 调用设备命令
public CommandRsp callDeviceCommand(Command command,int timeout)throws GeneraException
函数功能:
调用设备命令
表4 参数名称
类型
参数描述
command
Command
设备命令
timeout
int
超时时间,单位毫秒
- 查询设备状态
public java.util.List<DeviceStatus> getDevicesStatus(java.lang.String[] deviceIds,int timeout)throws GeneraException
函数功能:
查询设备状态
表5 参数名称
类型
参数描述
deviceIds
String[]
设备Id数组
timeout
int
超时时间,单位毫秒
- 查询子设备列表
public java.util.List<EdgeDeviceInfo> getDevicesInfos()throws GeneraException
函数功能:
查询子设备列表
- 获取设备属性
public ServiceData getDeviceProperties(java.lang.String deviceId,java.lang.String serviceId) throws GeneraException
函数功能:
获取设备属性
表6 参数名称
类型
参数描述
deviceId
String
子设备Id
serviceId
String
服务Id