@Override
public void discoverAppliance(String param) {
//实例化一个设备对象
Appliance appliance = new Appliance();
//设置设备的唯一Id值
appliance.setApplianceIdByInt(1);
//设置设备名称
appliance.setDeviceName(1+"灯");
//设置设备类型
appliance.setApplianceTypes(YzDevType.LIGHT);
//设置支持的操作
appliance.setActions(YzDevAction.turnOn,YzDevAction.turnOff);
//添加到集合中
virtualDevice.add(appliance);
//获取设备完成后调用notifyHost 通知Action为 GET_DEVICE_SUCCESS,返回设备信息
notifyHost(SdkAction.GET_DEVICE_SUCCESS, JSON.toJSONString(virtualDevice));
}
public class Appliance {
//设备ID
/**设备唯一ID*/
private String applianceId;
//设备具有的操作类型
/**设备具有的操作类型*/
private String[] actions;
//设备的类型
/**设备的类型*/
private String[] applianceTypes;
//设备名
/**设备名*/
private String deviceName;
//厂商名
/**厂商名*/
private String manufacturerName;
//如果具有自己的图标的话用该字段(可选,无值默认使用对应类型的本地图标)
//图片URL链接
/**如果具有自己的图标的话用该字段(可选,无值默认使用对应类型的本地图标)
图片URL链接*/
private String icon;
//设备型号
/**设备型号*/
private String model;
//设备型号名称
/**设备型号名称*/
private String modelName;
//设备区域名称例如 (客厅,厨房),如果此字段为空则可能赋予默认的值
/**设备区域名称例如 (客厅,厨房),如果此字段为空则可能赋予默认的值*/
private String zone = "客厅";
//设备楼层名称例如 (1楼,2楼),如果此字段为空则可能赋予默认的值
/**设备楼层名称例如 (1楼,2楼),如果此字段为空则可能赋予默认的值*/
private String floor = "1楼";
//设备属性K - V
/**设备属性K - V*/
private JSONObject attributes;
//补充字段
/**补充字段*/
private JSONObject additionalApplianceDetails;
}
notifyHost(SdkAction.GET_DEVICE_SUCCESS, JSON.toJSONString(virtualDevice));