| | |
| | | import com.hdl.linkpm.sdk.ota.bean.CloudDeviceFirmwaresBean; |
| | | import com.hdl.linkpm.sdk.ota.bean.CloudGatewayDriversBean; |
| | | import com.hdl.linkpm.sdk.ota.bean.DeviceFirmwareBean; |
| | | import com.hdl.linkpm.sdk.ota.bean.DownloadUrlBean; |
| | | import com.hdl.linkpm.sdk.ota.bean.GatewayDriverBean; |
| | | import com.hdl.photovoltaic.HDLApp; |
| | | import com.hdl.photovoltaic.bean.ModBusBean; |
| | |
| | | this.uniGetNewDeviceFirmwares(data, callback); |
| | | } |
| | | break; |
| | | //设备本地固件列表 |
| | | case HDLUniMP.UNI_EVENT_REPLY_OTA_FIRMWARES_LOCAL: { |
| | | this.uniGetLocalFirmwares(data, callback); |
| | | } |
| | | break; |
| | | //设备固件下载 |
| | | case HDLUniMP.UNI_EVENT_REPLY_OTA_FIRMWARES_DOWNLOAD: { |
| | | this.uniDeviceFirmwareDownload(data, callback); |
| | | } |
| | | break; |
| | | //设备固件升级 |
| | | case HDLUniMP.UNI_EVENT_REPLY_OTA_FIRMWARES_UPGRADE: { |
| | | this.uniUpgradeDeviceFirmware(data, callback); |
| | |
| | | //设备新驱动列表 |
| | | case HDLUniMP.UNI_EVENT_REPLY_OTA_DRIVER_NEW: { |
| | | this.uniGetNewGatewayDrivers(data, callback); |
| | | } |
| | | break; |
| | | //设备本地驱动列表 |
| | | case HDLUniMP.UNI_EVENT_REPLY_OTA_DRIVER_LOCAL: { |
| | | this.uniGetLocalDrivers(data, callback); |
| | | } |
| | | break; |
| | | //设备驱动下载 |
| | | case HDLUniMP.UNI_EVENT_REPLY_OTA_DRIVER_DOWNLOAD: { |
| | | this.uniGatewayDriverDownload(data, callback); |
| | | } |
| | | break; |
| | | //设备驱动升级 |
| | |
| | | } |
| | | |
| | | /** |
| | | * 向云端发起【设备固件】升级OTA指令 |
| | | * 获取【设备本地固件】列表 |
| | | */ |
| | | private void uniUpgradeDeviceFirmware(Object data, DCUniMPJSCallback callback) { |
| | | private void uniGetLocalFirmwares(Object data, DCUniMPJSCallback callback) { |
| | | String hardwareModel = getKeyValue("hardwareModel", getKeyValue("data", data));//硬件型号 |
| | | String osImageId = getKeyValue("osImageId", getKeyValue("data", data));//系统镜像id |
| | | String firmwareVersionId = getKeyValue("firmwareVersionId", getKeyValue("data", data));//系统镜像id |
| | | } |
| | | |
| | | /** |
| | | * 向云端发起【设备固件】下载指令 |
| | | */ |
| | | private void uniDeviceFirmwareDownload(Object data, DCUniMPJSCallback callback) { |
| | | String deviceOidId = getKeyValue("deviceOidId", getKeyValue("data", data));//设备id |
| | | String firmwareVersionId = getKeyValue("firmwareVersionId", getKeyValue("data", data));//固件版本id |
| | | HdlOtaLogic.getInstance().upgradeDeviceFirmware(deviceOidId, firmwareVersionId, new CloudCallBeak<Boolean>() { |
| | | HdlOtaLogic.getInstance().getDeviceFirmwareDownloadUrl(firmwareVersionId, new CloudCallBeak<DownloadUrlBean>() { |
| | | @Override |
| | | public void onSuccess(Boolean obj) { |
| | | public void onSuccess(DownloadUrlBean obj) { |
| | | uniCallbackData(obj, callback); |
| | | } |
| | | |
| | |
| | | uniCallbackData(null, e.getCode(), e.getMsg(), callback); |
| | | } |
| | | }); |
| | | } |
| | | |
| | | /** |
| | | * 向云端发起【设备固件】升级OTA指令 |
| | | */ |
| | | private void uniUpgradeDeviceFirmware(Object data, DCUniMPJSCallback callback) { |
| | | |
| | | String deviceMac = getKeyValue("mac", getKeyValue("data", data));//网关设备mac(查找socket) |
| | | String deviceOidId = getKeyValue("deviceOidId", getKeyValue("data", data));//设备id |
| | | String firmwareVersionId = getKeyValue("firmwareVersionId", getKeyValue("data", data));//固件版本id |
| | | |
| | | boolean isLocalConnect = HdlDeviceLogic.getInstance().isLocalConnect(deviceMac); |
| | | if (isLocalConnect) { |
| | | //本地 |
| | | //1,建立本地服务; |
| | | // 2,告诉网关手机ip和端口; |
| | | |
| | | } else { |
| | | //云端 |
| | | HdlOtaLogic.getInstance().upgradeDeviceFirmware(deviceOidId, firmwareVersionId, new CloudCallBeak<Boolean>() { |
| | | @Override |
| | | public void onSuccess(Boolean obj) { |
| | | uniCallbackData(obj, callback); |
| | | } |
| | | |
| | | @Override |
| | | public void onFailure(HDLException e) { |
| | | uniCallbackData(null, e.getCode(), e.getMsg(), callback); |
| | | } |
| | | }); |
| | | } |
| | | } |
| | | |
| | | /** |
| | |
| | | } |
| | | |
| | | /** |
| | | * 向云端发起【设备驱动】升级OTA指令 |
| | | * 获取【设备本地驱动】列表 |
| | | */ |
| | | private void uniUpgradeGatewayDriver(Object data, DCUniMPJSCallback callback) { |
| | | private void uniGetLocalDrivers(Object data, DCUniMPJSCallback callback) { |
| | | String driveCode = getKeyValue("driveCode", getKeyValue("data", data));//驱动编号或驱动名称 |
| | | String osImageId = getKeyValue("osImageId", getKeyValue("data", data));//驱动类型id |
| | | String driverVersionId = getKeyValue("driverVersionId", getKeyValue("data", data));//驱动类型id |
| | | } |
| | | |
| | | /** |
| | | * 向云端发起【设备驱动】下载指令 |
| | | */ |
| | | private void uniGatewayDriverDownload(Object data, DCUniMPJSCallback callback) { |
| | | |
| | | |
| | | String deviceOid = getKeyValue("oid", getKeyValue("data", data));//网关设备oid |
| | | String driverVersionId = getKeyValue("driverVersionId", getKeyValue("data", data));//驱动版本id |
| | | HdlOtaLogic.getInstance().upgradeGatewayDriver(deviceOid, driverVersionId, new CloudCallBeak<Boolean>() { |
| | |
| | | } |
| | | |
| | | /** |
| | | * 向云端发起【设备驱动】升级OTA指令 |
| | | */ |
| | | private void uniUpgradeGatewayDriver(Object data, DCUniMPJSCallback callback) { |
| | | |
| | | String deviceMac = getKeyValue("mac", getKeyValue("data", data));//网关设备mac(查找socket) |
| | | String deviceOid = getKeyValue("oid", getKeyValue("data", data));//网关设备oid |
| | | String driverVersionId = getKeyValue("driverVersionId", getKeyValue("data", data));//驱动版本id |
| | | boolean isLocalConnect = HdlDeviceLogic.getInstance().isLocalConnect(deviceMac); |
| | | if (isLocalConnect) { |
| | | //本地 |
| | | //1,建立本地服务; |
| | | // 2,告诉网关手机ip和端口; |
| | | |
| | | } else { |
| | | HdlOtaLogic.getInstance().upgradeGatewayDriver(deviceOid, driverVersionId, new CloudCallBeak<Boolean>() { |
| | | @Override |
| | | public void onSuccess(Boolean obj) { |
| | | uniCallbackData(obj, callback); |
| | | } |
| | | |
| | | @Override |
| | | public void onFailure(HDLException e) { |
| | | uniCallbackData(null, e.getCode(), e.getMsg(), callback); |
| | | } |
| | | }); |
| | | } |
| | | } |
| | | |
| | | /** |
| | | * 逆变器清空住宅id |
| | | * |
| | | * @param data uni数据 |