From d451118d4be05f180cfe1f99bc5904f74db8cc3f Mon Sep 17 00:00:00 2001 From: hxb <hxb@hdlchina.com.cn> Date: 星期四, 22 二月 2024 15:40:58 +0800 Subject: [PATCH] 引用线上库 --- HDLLinkLocalSdk/src/main/java/com/hdl/sdk/link/HDLLinkLocalSdk.java | 839 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 835 insertions(+), 4 deletions(-) diff --git a/HDLLinkLocalSdk/src/main/java/com/hdl/sdk/link/HDLLinkLocalSdk.java b/HDLLinkLocalSdk/src/main/java/com/hdl/sdk/link/HDLLinkLocalSdk.java index b308e0b..c2bddca 100644 --- a/HDLLinkLocalSdk/src/main/java/com/hdl/sdk/link/HDLLinkLocalSdk.java +++ b/HDLLinkLocalSdk/src/main/java/com/hdl/sdk/link/HDLLinkLocalSdk.java @@ -2,6 +2,7 @@ import android.content.Context; import android.text.TextUtils; +import android.widget.Toast; import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; @@ -10,9 +11,11 @@ import com.google.gson.JsonObject; import com.google.gson.reflect.TypeToken; import com.hdl.sdk.link.bean.GatewayLocationBean; +import com.hdl.sdk.link.bean.LinkGroupControlCreateBean; import com.hdl.sdk.link.bean.LinkIrDeviceBean; import com.hdl.sdk.link.bean.LinkOtaBean; import com.hdl.sdk.link.bean.LinkSidNameBean; +import com.hdl.sdk.link.bean.MMWAreaBean; import com.hdl.sdk.link.common.config.TopicConstant; import com.hdl.sdk.link.common.exception.HDLLinkCode; import com.hdl.sdk.link.common.exception.HDLLinkException; @@ -91,7 +94,7 @@ return instance; } - private Context context; + private static Context context; public void init(Context context) { @@ -118,6 +121,26 @@ return true; else return false; + } + + public static void showToast(String msg){ +// runOnUiThread(new Runnable() { +// @Override +// public void run() { +// try { +// if (toast == null) { +// toast = Toast.makeText(HDLGlobal.getInstance().getContext(), message, Toast.LENGTH_SHORT); +// } else { +// toast.setText(message); +// } +// toast.show(); +// } catch (Exception ignored) { +// +// } +// } +// +// }); + Toast.makeText(context, msg, Toast.LENGTH_SHORT).show(); } /** @@ -233,6 +256,7 @@ @Override public void onFailure(HDLLinkCode hdlLinkCode) { + //HDLExceptionSubmitUtils.submit(topic, request, HDLLinkCopyException.getErrorWithCode(hdlLinkCode.getCode(), hdlLinkCode.getMsg())); if (callBack != null) { callBack.onError(HDLLinkException.getErrorWithCode(hdlLinkCode)); } @@ -277,6 +301,7 @@ @Override public void onFailure(HDLLinkCode hdlLinkCode) { + //HDLExceptionSubmitUtils.submit(topic, request, HDLLinkCopyException.getErrorWithCode(hdlLinkCode.getCode(), hdlLinkCode.getMsg())); if (callBack != null) { callBack.onError(HDLLinkException.getErrorWithCode(hdlLinkCode)); } @@ -321,6 +346,7 @@ @Override public void onFailure(HDLLinkCode hdlLinkCode) { + //HDLExceptionSubmitUtils.submit(topic, request, HDLLinkCopyException.getErrorWithCode(hdlLinkCode.getCode(), hdlLinkCode.getMsg())); if (callBack != null) { callBack.onError(HDLLinkException.getErrorWithCode(hdlLinkCode)); } @@ -365,6 +391,7 @@ @Override public void onFailure(HDLLinkCode hdlLinkCode) { + //HDLExceptionSubmitUtils.submit(topic, request, HDLLinkCopyException.getErrorWithCode(hdlLinkCode.getCode(), hdlLinkCode.getMsg())); if (callBack != null) { callBack.onError(HDLLinkException.getErrorWithCode(hdlLinkCode)); } @@ -407,6 +434,7 @@ @Override public void onFailure(HDLLinkCode hdlLinkCode) { + //HDLExceptionSubmitUtils.submit(topic, request, HDLLinkCopyException.getErrorWithCode(hdlLinkCode.getCode(), hdlLinkCode.getMsg())); if (callBack != null) { callBack.onError(HDLLinkException.getErrorWithCode(hdlLinkCode)); } @@ -417,6 +445,39 @@ callBack.onError(HDLLinkException.getErrorWithCode(HDLLinkCode.HDL_GATEWAY_NOT_EXIST)); } } + } + + public void controlDevice(Object object, String gatewayId, String ipAddress, String mac, boolean encrypt, HDLLinkTCallBack<String> callBack) { + if (null == callBack) { + return; + } + + String time = String.valueOf(System.currentTimeMillis()); + JSONObject jsonObject = new JSONObject(); + jsonObject.put("id", IdUtils.getUUId()); + jsonObject.put("time_stamp", time); + List<Object> stringList = new ArrayList<>(); + stringList.add(object); + jsonObject.put("objects", stringList); + String topic = String.format(TopicConstant.PROPERTY_DOWN, gatewayId); + LinkRequest request = new LinkRequest(topic, jsonObject.toString(), encrypt); + new HDLConnectHelper(ipAddress, request, new HDLConnectHelper.HdlSocketListener() { + @Override + public void onSucceed(Object msg) { + if (msg instanceof LinkResponse) { + LogUtils.i("controlDevice onSuccess"); + callBack.onSuccess(""); + } + } + + @Override + public void onFailure(HDLLinkCode hdlLinkCode) { + //HDLExceptionSubmitUtils.submit(topic, request, HDLLinkCopyException.getErrorWithCode(hdlLinkCode.getCode(), hdlLinkCode.getMsg())); + if (callBack != null) { + callBack.onError(HDLLinkException.getErrorWithCode(hdlLinkCode)); + } + } + }, true, mac).send(); } /** @@ -448,6 +509,7 @@ @Override public void onFailure(HDLLinkCode hdlLinkCode) { + //HDLExceptionSubmitUtils.submit(topic, request, HDLLinkCopyException.getErrorWithCode(hdlLinkCode.getCode(), hdlLinkCode.getMsg())); if (callBack != null) { callBack.onError(HDLLinkException.getErrorWithCode(hdlLinkCode)); } @@ -489,6 +551,7 @@ @Override public void onFailure(HDLLinkCode hdlLinkCode) { + //HDLExceptionSubmitUtils.submit(topic, request, HDLLinkCopyException.getErrorWithCode(hdlLinkCode.getCode(), hdlLinkCode.getMsg())); if (callBack != null) { callBack.onError(HDLLinkException.getErrorWithCode(hdlLinkCode)); } @@ -528,6 +591,7 @@ @Override public void onFailure(HDLLinkCode hdlLinkCode) { + //HDLExceptionSubmitUtils.submit(topic, request, HDLLinkCopyException.getErrorWithCode(hdlLinkCode.getCode(), hdlLinkCode.getMsg())); if (callBack != null) { callBack.onError(HDLLinkException.getErrorWithCode(hdlLinkCode)); } @@ -538,6 +602,36 @@ callBack.onError(HDLLinkException.getErrorWithCode(HDLLinkCode.HDL_GATEWAY_NOT_EXIST)); } } + } + + public void sidNameChange(List<LinkSidNameBean> bean, String gatewayId, String ipaddress, boolean isLocalEncrypt, HDLLinkTCallBack<String> callBack) { + if (null == callBack) { + return; + } + String time = String.valueOf(System.currentTimeMillis()); + final BaseLocalResponse<List<LinkSidNameBean>> data = new BaseLocalResponse<>(); + data.setId(IdUtils.getUUId()); + data.setTime_stamp(time); + data.setObjects(bean); + String topic = String.format(TopicConstant.EDIT_FUNCTION, gatewayId); + LinkRequest request = new LinkRequest(topic, GsonConvert.getGson().toJson(data), isLocalEncrypt); + new HDLConnectHelper(ipaddress, request, new HDLConnectHelper.HdlSocketListener() { + @Override + public void onSucceed(Object msg) { + if (msg instanceof LinkResponse) { + LogUtils.i("sidNameChange onSuccess"); + callBack.onSuccess(""); + } + } + + @Override + public void onFailure(HDLLinkCode hdlLinkCode) { + //HDLExceptionSubmitUtils.submit(topic, request, HDLLinkCopyException.getErrorWithCode(hdlLinkCode.getCode(), hdlLinkCode.getMsg())); + if (callBack != null) { + callBack.onError(HDLLinkException.getErrorWithCode(hdlLinkCode)); + } + } + }, true).send(); } /** @@ -567,6 +661,7 @@ @Override public void onFailure(HDLLinkCode hdlLinkCode) { + //HDLExceptionSubmitUtils.submit(topic, request, HDLLinkCopyException.getErrorWithCode(hdlLinkCode.getCode(), hdlLinkCode.getMsg())); if (callBack != null) { callBack.onError(HDLLinkException.getErrorWithCode(hdlLinkCode)); } @@ -577,6 +672,39 @@ callBack.onError(HDLLinkException.getErrorWithCode(HDLLinkCode.HDL_GATEWAY_NOT_EXIST)); } } + } + + /** + * sid缁戝畾鎴块棿 + */ + public void sidBindUid(List<LinkSidUidBean> bean, String gatewayId, String ipaddress, boolean isLocalEncrypt, HDLLinkTCallBack<String> callBack) { + if (null == callBack) { + return; + } + String time = String.valueOf(System.currentTimeMillis()); + final BaseLocalResponse<List<LinkSidUidBean>> data = new BaseLocalResponse<>(); + data.setId(IdUtils.getUUId()); + data.setTime_stamp(time); + data.setObjects(bean); + String topic = String.format(TopicConstant.SID_BIND_ROOM, gatewayId); + LinkRequest request = new LinkRequest(topic, GsonConvert.getGson().toJson(data), isLocalEncrypt); + new HDLConnectHelper(ipaddress, request, new HDLConnectHelper.HdlSocketListener() { + @Override + public void onSucceed(Object msg) { + if (msg instanceof LinkResponse) { + LogUtils.i("sidBindUid onSuccess"); + callBack.onSuccess("Success"); + } + } + + @Override + public void onFailure(HDLLinkCode hdlLinkCode) { + //HDLExceptionSubmitUtils.submit(topic, request, HDLLinkCopyException.getErrorWithCode(hdlLinkCode.getCode(), hdlLinkCode.getMsg())); + if (callBack != null) { + callBack.onError(HDLLinkException.getErrorWithCode(hdlLinkCode)); + } + } + }, true).send(); } /** @@ -606,6 +734,7 @@ @Override public void onFailure(HDLLinkCode hdlLinkCode) { + //HDLExceptionSubmitUtils.submit(topic, request, HDLLinkCopyException.getErrorWithCode(hdlLinkCode.getCode(), hdlLinkCode.getMsg())); if (callBack != null) { callBack.onError(HDLLinkException.getErrorWithCode(hdlLinkCode)); } @@ -645,6 +774,7 @@ @Override public void onFailure(HDLLinkCode hdlLinkCode) { + //HDLExceptionSubmitUtils.submit(topic, request, HDLLinkCopyException.getErrorWithCode(hdlLinkCode.getCode(), hdlLinkCode.getMsg())); if (callBack != null) { callBack.onError(HDLLinkException.getErrorWithCode(hdlLinkCode)); @@ -685,6 +815,7 @@ @Override public void onFailure(HDLLinkCode hdlLinkCode) { + //HDLExceptionSubmitUtils.submit(topic, request, HDLLinkCopyException.getErrorWithCode(hdlLinkCode.getCode(), hdlLinkCode.getMsg())); if (callBack != null) { callBack.onError(HDLLinkException.getErrorWithCode(hdlLinkCode)); @@ -725,6 +856,7 @@ @Override public void onFailure(HDLLinkCode hdlLinkCode) { + //HDLExceptionSubmitUtils.submit(topic, request, HDLLinkCopyException.getErrorWithCode(hdlLinkCode.getCode(), hdlLinkCode.getMsg())); if (callBack != null) { callBack.onError(HDLLinkException.getErrorWithCode(hdlLinkCode)); @@ -773,6 +905,7 @@ @Override public void onFailure(HDLLinkCode hdlLinkCode) { + //HDLExceptionSubmitUtils.submit(topic, request, HDLLinkCopyException.getErrorWithCode(hdlLinkCode.getCode(), hdlLinkCode.getMsg())); if (callBack != null) { callBack.onError(HDLLinkException.getErrorWithCode(hdlLinkCode)); @@ -813,6 +946,7 @@ @Override public void onFailure(HDLLinkCode hdlLinkCode) { + //HDLExceptionSubmitUtils.submit(topic, request, HDLLinkCopyException.getErrorWithCode(hdlLinkCode.getCode(), hdlLinkCode.getMsg())); if (callBack != null) { callBack.onError(HDLLinkException.getErrorWithCode(hdlLinkCode)); @@ -862,6 +996,7 @@ @Override public void onFailure(HDLLinkCode hdlLinkCode) { + //HDLExceptionSubmitUtils.submit(topic, request, HDLLinkCopyException.getErrorWithCode(hdlLinkCode.getCode(), hdlLinkCode.getMsg())); if (callBack != null) { callBack.onError(HDLLinkException.getErrorWithCode(hdlLinkCode)); @@ -913,6 +1048,7 @@ @Override public void onFailure(HDLLinkCode hdlLinkCode) { + //HDLExceptionSubmitUtils.submit(topic, request, HDLLinkCopyException.getErrorWithCode(hdlLinkCode.getCode(), hdlLinkCode.getMsg())); if (callBack != null) { callBack.onError(HDLLinkException.getErrorWithCode(hdlLinkCode)); } @@ -953,6 +1089,7 @@ @Override public void onFailure(HDLLinkCode hdlLinkCode) { + //HDLExceptionSubmitUtils.submit(topic, request, HDLLinkCopyException.getErrorWithCode(hdlLinkCode.getCode(), hdlLinkCode.getMsg())); if (callBack != null) { callBack.onError(HDLLinkException.getErrorWithCode(hdlLinkCode)); @@ -993,6 +1130,7 @@ @Override public void onFailure(HDLLinkCode hdlLinkCode) { + //HDLExceptionSubmitUtils.submit(topic, request, HDLLinkCopyException.getErrorWithCode(hdlLinkCode.getCode(), hdlLinkCode.getMsg())); if (callBack != null) { callBack.onError(HDLLinkException.getErrorWithCode(hdlLinkCode)); @@ -1033,6 +1171,7 @@ @Override public void onFailure(HDLLinkCode hdlLinkCode) { + //HDLExceptionSubmitUtils.submit(topic, request, HDLLinkCopyException.getErrorWithCode(hdlLinkCode.getCode(), hdlLinkCode.getMsg())); if (callBack != null) { callBack.onError(HDLLinkException.getErrorWithCode(hdlLinkCode)); @@ -1076,6 +1215,7 @@ @Override public void onFailure(HDLLinkCode hdlLinkCode) { + //HDLExceptionSubmitUtils.submit(topic, request, HDLLinkCopyException.getErrorWithCode(hdlLinkCode.getCode(), hdlLinkCode.getMsg())); if (callBack != null) { callBack.onError(HDLLinkException.getErrorWithCode(hdlLinkCode)); @@ -1120,6 +1260,7 @@ @Override public void onFailure(HDLLinkCode hdlLinkCode) { + //HDLExceptionSubmitUtils.submit(topic, request, HDLLinkCopyException.getErrorWithCode(hdlLinkCode.getCode(), hdlLinkCode.getMsg())); if (callBack != null) { callBack.onError(HDLLinkException.getErrorWithCode(hdlLinkCode)); @@ -1164,6 +1305,7 @@ @Override public void onFailure(HDLLinkCode hdlLinkCode) { + //HDLExceptionSubmitUtils.submit(topic, request, HDLLinkCopyException.getErrorWithCode(hdlLinkCode.getCode(), hdlLinkCode.getMsg())); if (callBack != null) { callBack.onError(HDLLinkException.getErrorWithCode(hdlLinkCode)); @@ -1208,6 +1350,7 @@ @Override public void onFailure(HDLLinkCode hdlLinkCode) { + //HDLExceptionSubmitUtils.submit(topic, request, HDLLinkCopyException.getErrorWithCode(hdlLinkCode.getCode(), hdlLinkCode.getMsg())); if (callBack != null) { callBack.onError(HDLLinkException.getErrorWithCode(hdlLinkCode)); @@ -1262,6 +1405,7 @@ @Override public void onFailure(HDLLinkCode hdlLinkCode) { + //HDLExceptionSubmitUtils.submit(topic, request, HDLLinkCopyException.getErrorWithCode(hdlLinkCode.getCode(), hdlLinkCode.getMsg())); if (callBack != null) { callBack.onError(HDLLinkException.getErrorWithCode(hdlLinkCode)); @@ -1315,6 +1459,7 @@ @Override public void onFailure(HDLLinkCode hdlLinkCode) { + //HDLExceptionSubmitUtils.submit(topic, request, HDLLinkCopyException.getErrorWithCode(hdlLinkCode.getCode(), hdlLinkCode.getMsg())); if (callBack != null) { callBack.onError(HDLLinkException.getErrorWithCode(hdlLinkCode)); @@ -1368,6 +1513,7 @@ @Override public void onFailure(HDLLinkCode hdlLinkCode) { + //HDLExceptionSubmitUtils.submit(topic, request, HDLLinkCopyException.getErrorWithCode(hdlLinkCode.getCode(), hdlLinkCode.getMsg())); if (callBack != null) { callBack.onError(HDLLinkException.getErrorWithCode(hdlLinkCode)); @@ -1409,6 +1555,7 @@ @Override public void onFailure(HDLLinkCode hdlLinkCode) { + //HDLExceptionSubmitUtils.submit(topic, request, HDLLinkCopyException.getErrorWithCode(hdlLinkCode.getCode(), hdlLinkCode.getMsg())); if (callBack != null) { callBack.onError(HDLLinkException.getErrorWithCode(hdlLinkCode)); @@ -1450,6 +1597,7 @@ @Override public void onFailure(HDLLinkCode hdlLinkCode) { + //HDLExceptionSubmitUtils.submit(topic, request, HDLLinkCopyException.getErrorWithCode(hdlLinkCode.getCode(), hdlLinkCode.getMsg())); if (callBack != null) { callBack.onError(HDLLinkException.getErrorWithCode(hdlLinkCode)); @@ -1491,6 +1639,7 @@ @Override public void onFailure(HDLLinkCode hdlLinkCode) { + //HDLExceptionSubmitUtils.submit(topic, request, HDLLinkCopyException.getErrorWithCode(hdlLinkCode.getCode(), hdlLinkCode.getMsg())); if (callBack != null) { callBack.onError(HDLLinkException.getErrorWithCode(hdlLinkCode)); @@ -1543,6 +1692,7 @@ @Override public void onFailure(HDLLinkCode hdlLinkCode) { + //HDLExceptionSubmitUtils.submit(topic, request, HDLLinkCopyException.getErrorWithCode(hdlLinkCode.getCode(), hdlLinkCode.getMsg())); if (callBack != null) { callBack.onError(HDLLinkException.getErrorWithCode(hdlLinkCode)); @@ -1595,6 +1745,7 @@ @Override public void onFailure(HDLLinkCode hdlLinkCode) { + //HDLExceptionSubmitUtils.submit(topic, request, HDLLinkCopyException.getErrorWithCode(hdlLinkCode.getCode(), hdlLinkCode.getMsg())); if (callBack != null) { callBack.onError(HDLLinkException.getErrorWithCode(hdlLinkCode)); @@ -1636,6 +1787,7 @@ @Override public void onFailure(HDLLinkCode hdlLinkCode) { + //HDLExceptionSubmitUtils.submit(topic, request, HDLLinkCopyException.getErrorWithCode(hdlLinkCode.getCode(), hdlLinkCode.getMsg())); if (callBack != null) { callBack.onError(HDLLinkException.getErrorWithCode(hdlLinkCode)); @@ -1697,6 +1849,7 @@ @Override public void onFailure(HDLLinkCode hdlLinkCode) { + //HDLExceptionSubmitUtils.submit(topic, request, HDLLinkCopyException.getErrorWithCode(hdlLinkCode.getCode(), hdlLinkCode.getMsg())); if (callBack != null) { callBack.onError(HDLLinkException.getErrorWithCode(hdlLinkCode)); @@ -1741,6 +1894,7 @@ @Override public void onFailure(HDLLinkCode hdlLinkCode) { + //HDLExceptionSubmitUtils.submit(topic, request, HDLLinkCopyException.getErrorWithCode(hdlLinkCode.getCode(), hdlLinkCode.getMsg())); if (callBack != null) { callBack.onError(HDLLinkException.getErrorWithCode(hdlLinkCode)); @@ -1754,6 +1908,230 @@ } } + + /** + * 鏈嶅姟璋冪敤 + * + * @param topic 涓婚 + * @param callBack 鍥炶皟 + */ + public void serviceDown(String topic, JSONArray jsonArray, String ipAddress, boolean encrypt, HDLLinkCallBack callBack) { + if (null == callBack) { + return; + } + + String time = String.valueOf(System.currentTimeMillis()); + final BaseLocalResponse<JSONArray> data = new BaseLocalResponse<>(); + data.setId(IdUtils.getUUId()); + data.setTime_stamp(time); + data.setObjects(jsonArray); + + LinkRequest request = new LinkRequest(topic, GsonConvert.getGson().toJson(data), encrypt); + new HDLConnectHelper(ipAddress, request, new HDLConnectHelper.HdlSocketListener() { + @Override + public void onSucceed(Object msg) { + if (msg instanceof LinkResponse) { + LogUtils.i("propertyRead onSuccess"); + callBack.onSuccess(msg.toString()); + } + } + + @Override + public void onFailure(HDLLinkCode hdlLinkCode) { + //HDLExceptionSubmitUtils.submit(topic, request, HDLLinkCopyException.getErrorWithCode(hdlLinkCode.getCode(), hdlLinkCode.getMsg())); + + if (callBack != null) { + callBack.onError(HDLLinkException.getErrorWithCode(hdlLinkCode)); + } + } + }, true).send(); + } + + /** + * 鏈嶅姟璋冪敤 + * + * @param topic 涓婚 + * @param callBack 鍥炶皟 + */ + public void serviceDown(String topic, JSONArray jsonArray, HDLLinkCallBack callBack) { + if (null == callBack) { + return; + } + String gatewayId = HDLLinkConfig.getInstance().getGatewayId(); + + if (!TextUtils.isEmpty(gatewayId)) { + String time = String.valueOf(System.currentTimeMillis()); + final BaseLocalResponse<JSONArray> data = new BaseLocalResponse<>(); + data.setId(IdUtils.getUUId()); + data.setTime_stamp(time); + data.setObjects(jsonArray); + + LinkRequest request = new LinkRequest(topic, GsonConvert.getGson().toJson(data), HDLLinkConfig.getInstance().isLocalEncrypt()); + new HDLConnectHelper(HDLLinkConfig.getInstance().getIpAddress(), request, new HDLConnectHelper.HdlSocketListener() { + @Override + public void onSucceed(Object msg) { + if (msg instanceof LinkResponse) { + LogUtils.i("propertyRead onSuccess"); + callBack.onSuccess(msg.toString()); + } + } + + @Override + public void onFailure(HDLLinkCode hdlLinkCode) { + //HDLExceptionSubmitUtils.submit(topic, request, HDLLinkCopyException.getErrorWithCode(hdlLinkCode.getCode(), hdlLinkCode.getMsg())); + + if (callBack != null) { + callBack.onError(HDLLinkException.getErrorWithCode(hdlLinkCode)); + } + } + }, true).send(); + } else { + if (callBack != null) { + callBack.onError(HDLLinkException.getErrorWithCode(HDLLinkCode.HDL_GATEWAY_NOT_EXIST)); + } + } + } + + + /** + * 鏈嶅姟鐘舵�佽幏鍙� + * + * @param topic 涓婚 + * @param callBack 鍥炶皟 + */ + public void serviceRead(String topic, JSONArray jsonArray, String ipAddress, boolean encrypt, HDLLinkCallBack callBack) { + if (null == callBack) { + return; + } + String time = String.valueOf(System.currentTimeMillis()); + final BaseLocalResponse<JSONArray> data = new BaseLocalResponse<>(); + data.setId(IdUtils.getUUId()); + data.setTime_stamp(time); + data.setObjects(jsonArray); + + LinkRequest request = new LinkRequest(topic, GsonConvert.getGson().toJson(data), encrypt); + new HDLConnectHelper(ipAddress, request, new HDLConnectHelper.HdlSocketListener() { + @Override + public void onSucceed(Object msg) { + if (msg instanceof LinkResponse) { + LogUtils.i("propertyRead onSuccess"); + callBack.onSuccess(msg.toString()); + } + } + + @Override + public void onFailure(HDLLinkCode hdlLinkCode) { + //HDLExceptionSubmitUtils.submit(topic, request, HDLLinkCopyException.getErrorWithCode(hdlLinkCode.getCode(), hdlLinkCode.getMsg())); + + if (callBack != null) { + callBack.onError(HDLLinkException.getErrorWithCode(hdlLinkCode)); + } + } + }, true).send(); + } + + /** + * 鏈嶅姟鐘舵�佽幏鍙� + * + * @param topic 涓婚 + * @param callBack 鍥炶皟 + */ + public void serviceRead(String topic, JSONArray jsonArray, HDLLinkCallBack callBack) { + if (null == callBack) { + return; + } + String gatewayId = HDLLinkConfig.getInstance().getGatewayId(); + + if (!TextUtils.isEmpty(gatewayId)) { + String time = String.valueOf(System.currentTimeMillis()); + final BaseLocalResponse<JSONArray> data = new BaseLocalResponse<>(); + data.setId(IdUtils.getUUId()); + data.setTime_stamp(time); + data.setObjects(jsonArray); + + LinkRequest request = new LinkRequest(topic, GsonConvert.getGson().toJson(data), HDLLinkConfig.getInstance().isLocalEncrypt()); + new HDLConnectHelper(HDLLinkConfig.getInstance().getIpAddress(), request, new HDLConnectHelper.HdlSocketListener() { + @Override + public void onSucceed(Object msg) { + if (msg instanceof LinkResponse) { + LogUtils.i("propertyRead onSuccess"); + callBack.onSuccess(msg.toString()); + } + } + + @Override + public void onFailure(HDLLinkCode hdlLinkCode) { + //HDLExceptionSubmitUtils.submit(topic, request, HDLLinkCopyException.getErrorWithCode(hdlLinkCode.getCode(), hdlLinkCode.getMsg())); + + if (callBack != null) { + callBack.onError(HDLLinkException.getErrorWithCode(hdlLinkCode)); + } + } + }, true).send(); + } else { + if (callBack != null) { + callBack.onError(HDLLinkException.getErrorWithCode(HDLLinkCode.HDL_GATEWAY_NOT_EXIST)); + } + } + } + + /** + * 鑾峰彇姣背娉㈠尯鍩� + * + * @param sid 璇锋眰鍙傛暟 鎸囧畾璇诲彇鐨勮澶噑id + * @param callBack 鍥炶皟 + */ + public void getMillimeterArea(String sid, HDLLinkTCallBack<List<MMWAreaBean>> callBack) { + if (null == callBack) { + return; + } + String gatewayId = HDLLinkConfig.getInstance().getGatewayId(); + + if (!TextUtils.isEmpty(gatewayId)) { + String time = String.valueOf(System.currentTimeMillis()); + final BaseLocalResponse<List<PropertyReadRequest>> data = new BaseLocalResponse<>(); + data.setId(IdUtils.getUUId()); + data.setTime_stamp(time); + + List<PropertyReadRequest> list = new ArrayList<>(); + list.add(new PropertyReadRequest(sid)); + data.setObjects(list); + + String topic = String.format(TopicConstant.MMW_AREA_GET, gatewayId); + + LinkRequest request = new LinkRequest(topic, GsonConvert.getGson().toJson(data), HDLLinkConfig.getInstance().isLocalEncrypt()); + new HDLConnectHelper(HDLLinkConfig.getInstance().getIpAddress(), request, new HDLConnectHelper.HdlSocketListener() { + @Override + public void onSucceed(Object msg) { + if (msg instanceof LinkResponse) { + LogUtils.i("propertyRead onSuccess"); + Type type = new TypeToken<BaseLocalResponse<List<MMWAreaBean>>>() { + }.getType(); + List<MMWAreaBean> list = LinkResponseUtils.convertLinkResponse(msg, type); + if (list == null) { + callBack.onError(HDLLinkException.getErrorWithCode(HDLLinkCode.HDL_DATA_PARSING_ERROR)); + } else { + callBack.onSuccess(list); + } + } + } + + @Override + public void onFailure(HDLLinkCode hdlLinkCode) { + //HDLExceptionSubmitUtils.submit(topic, request, HDLLinkCopyException.getErrorWithCode(hdlLinkCode.getCode(), hdlLinkCode.getMsg())); + + if (callBack != null) { + callBack.onError(HDLLinkException.getErrorWithCode(hdlLinkCode)); + } + } + }, true).send(); + } else { + if (callBack != null) { + callBack.onError(HDLLinkException.getErrorWithCode(HDLLinkCode.HDL_GATEWAY_NOT_EXIST)); + } + } + } + /** * 璇诲彇鐘舵�� @@ -1787,12 +2165,20 @@ public void onSucceed(Object msg) { if (msg instanceof LinkResponse) { LogUtils.i("propertyRead onSuccess"); - callBack.onSuccess(msg.toString()); + Type type = new TypeToken<BaseLocalResponse<String>>() { + }.getType(); + String list = LinkResponseUtils.convertLinkResponse(msg, type); + if (list == null) { + callBack.onError(HDLLinkException.getErrorWithCode(HDLLinkCode.HDL_DATA_PARSING_ERROR)); + } else { + callBack.onSuccess(list); + } } } @Override public void onFailure(HDLLinkCode hdlLinkCode) { + //HDLExceptionSubmitUtils.submit(topic, request, HDLLinkCopyException.getErrorWithCode(hdlLinkCode.getCode(), hdlLinkCode.getMsg())); if (callBack != null) { callBack.onError(HDLLinkException.getErrorWithCode(hdlLinkCode)); @@ -1804,6 +2190,58 @@ callBack.onError(HDLLinkException.getErrorWithCode(HDLLinkCode.HDL_GATEWAY_NOT_EXIST)); } } + } + + /** + * 璇诲彇鐘舵�� + * + * @param sids 璇锋眰鍙傛暟 鎸囧畾璇诲彇鐨勮澶噑id鍒楄〃 + * @param callBack 鍥炶皟 + */ + public void propertyRead(List<String> sids, String gatewayId, String ipAddress, String mac, boolean encrypt, HDLLinkCallBack callBack) { + if (null == callBack) { + return; + } + + String time = String.valueOf(System.currentTimeMillis()); + final BaseLocalResponse<List<PropertyReadRequest>> data = new BaseLocalResponse<>(); + data.setId(IdUtils.getUUId()); + data.setTime_stamp(time); + + List<PropertyReadRequest> list = new ArrayList<>(); + for (String s : sids) { + list.add(new PropertyReadRequest(s)); + } + data.setObjects(list); + + String topic = String.format(TopicConstant.PROPERTY_READ, gatewayId); + + LinkRequest request = new LinkRequest(topic, GsonConvert.getGson().toJson(data), encrypt); + new HDLConnectHelper(ipAddress, request, new HDLConnectHelper.HdlSocketListener() { + @Override + public void onSucceed(Object msg) { + if (msg instanceof LinkResponse) { + LogUtils.i("propertyRead onSuccess"); + Type type = new TypeToken<BaseLocalResponse<String>>() { + }.getType(); + String list = LinkResponseUtils.convertLinkResponse(msg, type); + if (list == null) { + callBack.onError(HDLLinkException.getErrorWithCode(HDLLinkCode.HDL_DATA_PARSING_ERROR)); + } else { + callBack.onSuccess(list); + } + } + } + + @Override + public void onFailure(HDLLinkCode hdlLinkCode) { + //HDLExceptionSubmitUtils.submit(topic, request, HDLLinkCopyException.getErrorWithCode(hdlLinkCode.getCode(), hdlLinkCode.getMsg())); + + if (callBack != null) { + callBack.onError(HDLLinkException.getErrorWithCode(hdlLinkCode)); + } + } + }, true, mac).send(); } /** @@ -1845,6 +2283,105 @@ @Override public void onFailure(HDLLinkCode hdlLinkCode) { + //HDLExceptionSubmitUtils.submit(topic, request, HDLLinkCopyException.getErrorWithCode(hdlLinkCode.getCode(), hdlLinkCode.getMsg())); + + if (callBack != null) { + callBack.onError(HDLLinkException.getErrorWithCode(hdlLinkCode)); + } + } + }, true).send(); + } else { + if (callBack != null) { + callBack.onError(HDLLinkException.getErrorWithCode(HDLLinkCode.HDL_GATEWAY_NOT_EXIST)); + } + } + } + + public void getSceneListaa(HDLLinkTCallBack<List<LinkSceneBean>> callBack) { + if (null == callBack) { + return; + } + + if (!TextUtils.isEmpty("18FE8588AC73E526")) { + String time = String.valueOf(System.currentTimeMillis()); + JsonObject jsonObject = new JsonObject(); + jsonObject.addProperty("id", IdUtils.getUUId()); + jsonObject.addProperty("time_stamp", time); + + String topic = String.format(TopicConstant.SCENE_LIST_GET, "18FE8588AC73E526"); + + LinkRequest request = new LinkRequest(topic, jsonObject.toString(), HDLLinkConfig.getInstance().isLocalEncrypt()); + new HDLConnectHelper("192.168.1.100", request, new HDLConnectHelper.HdlSocketListener() { + @Override + public void onSucceed(Object msg) { + if (msg instanceof LinkResponse) { + LogUtils.i("getSceneList onSuccess"); + if (callBack != null) { + Type type = new TypeToken<BaseLocalResponse<List<LinkSceneBean>>>() { + }.getType(); + List<LinkSceneBean> list = LinkResponseUtils.convertLinkResponse(msg, type); + if (list == null) { + callBack.onError(HDLLinkException.getErrorWithCode(HDLLinkCode.HDL_DATA_PARSING_ERROR)); + } else { + callBack.onSuccess(list); + } + + } + } + } + + @Override + public void onFailure(HDLLinkCode hdlLinkCode) { + //HDLExceptionSubmitUtils.submit(topic, request, HDLLinkCopyException.getErrorWithCode(hdlLinkCode.getCode(), hdlLinkCode.getMsg())); + + if (callBack != null) { + callBack.onError(HDLLinkException.getErrorWithCode(hdlLinkCode)); + } + } + }, true).send(); + } else { + if (callBack != null) { + callBack.onError(HDLLinkException.getErrorWithCode(HDLLinkCode.HDL_GATEWAY_NOT_EXIST)); + } + } + } + + public void getSceneListAiks(GatewayBean bean, HDLLinkTCallBack<List<LinkSceneBean>> callBack) { + if (null == callBack) { + return; + } + + if (!TextUtils.isEmpty(bean.getDevice_mac())) { + String time = String.valueOf(System.currentTimeMillis()); + JsonObject jsonObject = new JsonObject(); + jsonObject.addProperty("id", IdUtils.getUUId()); + jsonObject.addProperty("time_stamp", time); + + String topic = String.format(TopicConstant.SCENE_LIST_GET, bean.getDevice_mac()); + + LinkRequest request = new LinkRequest(topic, jsonObject.toString(), false); + new HDLConnectHelper(bean.getIp_address(), request, new HDLConnectHelper.HdlSocketListener() { + @Override + public void onSucceed(Object msg) { + if (msg instanceof LinkResponse) { + LogUtils.i("getSceneList onSuccess"); + if (callBack != null) { + Type type = new TypeToken<BaseLocalResponse<List<LinkSceneBean>>>() { + }.getType(); + List<LinkSceneBean> list = LinkResponseUtils.convertLinkResponse(msg, type); + if (list == null) { + callBack.onError(HDLLinkException.getErrorWithCode(HDLLinkCode.HDL_DATA_PARSING_ERROR)); + } else { + callBack.onSuccess(list); + } + + } + } + } + + @Override + public void onFailure(HDLLinkCode hdlLinkCode) { + //HDLExceptionSubmitUtils.submit(topic, request, HDLLinkCopyException.getErrorWithCode(hdlLinkCode.getCode(), hdlLinkCode.getMsg())); if (callBack != null) { callBack.onError(HDLLinkException.getErrorWithCode(hdlLinkCode)); @@ -1896,6 +2433,7 @@ @Override public void onFailure(HDLLinkCode hdlLinkCode) { + //HDLExceptionSubmitUtils.submit(topic, request, HDLLinkCopyException.getErrorWithCode(hdlLinkCode.getCode(), hdlLinkCode.getMsg())); if (callBack != null) { callBack.onError(HDLLinkException.getErrorWithCode(hdlLinkCode)); @@ -1944,6 +2482,7 @@ @Override public void onFailure(HDLLinkCode hdlLinkCode) { + //HDLExceptionSubmitUtils.submit(topic, request, HDLLinkCopyException.getErrorWithCode(hdlLinkCode.getCode(), hdlLinkCode.getMsg())); if (callBack != null) { callBack.onError(HDLLinkException.getErrorWithCode(hdlLinkCode)); @@ -1956,6 +2495,244 @@ } } } + + /** + * 鍦烘櫙鎺у埗 + * + * @param sids 鍦烘櫙sid鍒楄〃 + * @param callBack 鍥炶皟 + */ + public void controlAiksScene(GatewayBean bean, List<String> sids, HDLLinkCallBack callBack) { + if (null == callBack) { + return; + } + String device_mac = bean.getDevice_mac(); + if (!TextUtils.isEmpty(device_mac)) { + String time = String.valueOf(System.currentTimeMillis()); + final BaseLocalResponse<List<PropertyReadRequest>> data = new BaseLocalResponse<>(); + data.setId(IdUtils.getUUId()); + data.setTime_stamp(time); + + List<PropertyReadRequest> list = new ArrayList<>(); + for (String s : sids) { + list.add(new PropertyReadRequest(s)); + } + data.setObjects(list); + String topic = String.format(TopicConstant.SCENE_CONTROL, device_mac); + LinkRequest request = new LinkRequest(topic, GsonConvert.getGson().toJson(data), false); + new HDLConnectHelper(bean.getIp_address(), request, new HDLConnectHelper.HdlSocketListener() { + @Override + public void onSucceed(Object msg) { + if (msg instanceof LinkResponse) { + LogUtils.i("controlScene onSuccess"); + callBack.onSuccess(msg.toString()); + } + } + + @Override + public void onFailure(HDLLinkCode hdlLinkCode) { + //HDLExceptionSubmitUtils.submit(topic, request, HDLLinkCopyException.getErrorWithCode(hdlLinkCode.getCode(), hdlLinkCode.getMsg())); + + if (callBack != null) { + callBack.onError(HDLLinkException.getErrorWithCode(hdlLinkCode)); + } + } + }, true).send(); + } else { + if (callBack != null) { + callBack.onError(HDLLinkException.getErrorWithCode(HDLLinkCode.HDL_GATEWAY_NOT_EXIST)); + } + } + } + + /** + * 缇ゆ帶澧炲垹 + */ + public void groupControlEdit(List<LinkGroupControlCreateBean> list, HDLLinkCallBack callBack) { + if (null == callBack) { + return; + } + String gatewayId = HDLLinkConfig.getInstance().getGatewayId(); + + if (!TextUtils.isEmpty(gatewayId)) { + String time = String.valueOf(System.currentTimeMillis()); + final BaseLocalResponse<List<LinkGroupControlCreateBean>> data = new BaseLocalResponse<>(); + data.setId(IdUtils.getUUId()); + data.setTime_stamp(time); + data.setObjects(list); + String topic = String.format(TopicConstant.GROUPCONTROL_EDIT, gatewayId); + + LinkRequest request = new LinkRequest(topic, GsonConvert.getGson().toJson(data), HDLLinkConfig.getInstance().isLocalEncrypt()); + new HDLConnectHelper(HDLLinkConfig.getInstance().getIpAddress(), request, new HDLConnectHelper.HdlSocketListener() { + @Override + public void onSucceed(Object msg) { + if (msg instanceof LinkResponse) { + LogUtils.i("getSceneDetail onSuccess"); + if (callBack != null) { + callBack.onSuccess(msg.toString()); + } + } + } + + @Override + public void onFailure(HDLLinkCode hdlLinkCode) { + //HDLExceptionSubmitUtils.submit(topic, request, HDLLinkCopyException.getErrorWithCode(hdlLinkCode.getCode(), hdlLinkCode.getMsg())); + if (callBack != null) { + callBack.onError(HDLLinkException.getErrorWithCode(hdlLinkCode)); + } + } + }, true).send(); + } else { + if (callBack != null) { + callBack.onError(HDLLinkException.getErrorWithCode(HDLLinkCode.HDL_GATEWAY_NOT_EXIST)); + } + } + } + + /** + * 缇ゆ帶鎺у埗 + */ + public void groupControlControl(JSONObject object, HDLLinkCallBack callBack) { + if (null == callBack) { + return; + } + String gatewayId = HDLLinkConfig.getInstance().getGatewayId(); + + if (!TextUtils.isEmpty(gatewayId)) { + String time = String.valueOf(System.currentTimeMillis()); + final BaseLocalResponse<List<JSONObject>> data = new BaseLocalResponse<>(); + data.setId(IdUtils.getUUId()); + data.setTime_stamp(time); + List<JSONObject> objectList = new ArrayList<>(); + objectList.add(object); + data.setObjects(objectList); + String topic = String.format(TopicConstant.GROUPCONTROL_CONTROL, gatewayId); + + LinkRequest request = new LinkRequest(topic, GsonConvert.getGson().toJson(data), HDLLinkConfig.getInstance().isLocalEncrypt()); + new HDLConnectHelper(HDLLinkConfig.getInstance().getIpAddress(), request, new HDLConnectHelper.HdlSocketListener() { + @Override + public void onSucceed(Object msg) { + if (msg instanceof LinkResponse) { + LogUtils.i("getSceneDetail onSuccess"); + if (callBack != null) { + callBack.onSuccess(msg.toString()); + } + } + } + + @Override + public void onFailure(HDLLinkCode hdlLinkCode) { + //HDLExceptionSubmitUtils.submit(topic, request, HDLLinkCopyException.getErrorWithCode(hdlLinkCode.getCode(), hdlLinkCode.getMsg())); + if (callBack != null) { + callBack.onError(HDLLinkException.getErrorWithCode(hdlLinkCode)); + } + } + }, true).send(); + } else { + if (callBack != null) { + callBack.onError(HDLLinkException.getErrorWithCode(HDLLinkCode.HDL_GATEWAY_NOT_EXIST)); + } + } + } + + /** + * 缇ゆ帶鍒犻櫎 + */ + public void groupControlDelete(JSONObject object, HDLLinkCallBack callBack) { + if (null == callBack) { + return; + } + String gatewayId = HDLLinkConfig.getInstance().getGatewayId(); + + if (!TextUtils.isEmpty(gatewayId)) { + String time = String.valueOf(System.currentTimeMillis()); + final BaseLocalResponse<List<JSONObject>> data = new BaseLocalResponse<>(); + data.setId(IdUtils.getUUId()); + data.setTime_stamp(time); + List<JSONObject> objectList = new ArrayList<>(); + objectList.add(object); + data.setObjects(objectList); + String topic = String.format(TopicConstant.GROUPCONTROL_DELETE, gatewayId); + + LinkRequest request = new LinkRequest(topic, GsonConvert.getGson().toJson(data), HDLLinkConfig.getInstance().isLocalEncrypt()); + new HDLConnectHelper(HDLLinkConfig.getInstance().getIpAddress(), request, new HDLConnectHelper.HdlSocketListener() { + @Override + public void onSucceed(Object msg) { + if (msg instanceof LinkResponse) { + LogUtils.i("getSceneDetail onSuccess"); + if (callBack != null) { + callBack.onSuccess(msg.toString()); + } + } + } + + @Override + public void onFailure(HDLLinkCode hdlLinkCode) { + //HDLExceptionSubmitUtils.submit(topic, request, HDLLinkCopyException.getErrorWithCode(hdlLinkCode.getCode(), hdlLinkCode.getMsg())); + if (callBack != null) { + callBack.onError(HDLLinkException.getErrorWithCode(hdlLinkCode)); + HDLLinkLocalSdk.showToast(hdlLinkCode.getMsg()); + } + } + }, true).send(); + } else { + if (callBack != null) { + callBack.onError(HDLLinkException.getErrorWithCode(HDLLinkCode.HDL_GATEWAY_NOT_EXIST)); + } + } + } + + /** + * 缇ゆ帶鍒楄〃鑾峰彇 + */ + public void getGroupControlList(List<JSONObject> list, HDLLinkTCallBack<List<LinkGroupControlCreateBean>> callBack) { + if (null == callBack) { + return; + } + String gatewayId = HDLLinkConfig.getInstance().getGatewayId(); + + if (!TextUtils.isEmpty(gatewayId)) { + String time = String.valueOf(System.currentTimeMillis()); + final BaseLocalResponse<List<JSONObject>> data = new BaseLocalResponse<>(); + data.setId(IdUtils.getUUId()); + data.setTime_stamp(time); + data.setObjects(list); + String topic = String.format(TopicConstant.GROUPCONTROL_LIST_GET, gatewayId); + + LinkRequest request = new LinkRequest(topic, GsonConvert.getGson().toJson(data), HDLLinkConfig.getInstance().isLocalEncrypt()); + new HDLConnectHelper(HDLLinkConfig.getInstance().getIpAddress(), request, new HDLConnectHelper.HdlSocketListener() { + @Override + public void onSucceed(Object msg) { + if (msg instanceof LinkResponse) { + LogUtils.i("getSceneDetail onSuccess"); + if (callBack != null) { + Type type = new TypeToken<BaseLocalResponse<List<LinkGroupControlCreateBean>>>() { + }.getType(); + List<LinkGroupControlCreateBean> list = LinkResponseUtils.convertLinkResponse(msg, type); + if (list == null) { + callBack.onError(HDLLinkException.getErrorWithCode(HDLLinkCode.HDL_DATA_PARSING_ERROR)); + } else { + callBack.onSuccess(list); + } + } + } + } + + @Override + public void onFailure(HDLLinkCode hdlLinkCode) { + //HDLExceptionSubmitUtils.submit(topic, request, HDLLinkCopyException.getErrorWithCode(hdlLinkCode.getCode(), hdlLinkCode.getMsg())); + if (callBack != null) { + callBack.onError(HDLLinkException.getErrorWithCode(hdlLinkCode)); + } + } + }, true).send(); + } else { + if (callBack != null) { + callBack.onError(HDLLinkException.getErrorWithCode(HDLLinkCode.HDL_GATEWAY_NOT_EXIST)); + } + } + } + /** * 閫氱敤UDP鍙戦�佹寚浠� @@ -2038,10 +2815,13 @@ * * @param callBack 鍥炶皟鎵�鏈夎鍙栧埌鐨勭綉鍏冲垪琛� */ + public void refreshGateway(GatewayCallBack callBack) { + HDLLinkLocalGateway.getInstance().refreshGateway(callBack); + } + public void refreshGateway(GatewayCallBack callBack,List<String> spks) { HDLLinkLocalGateway.getInstance().refreshGateway(callBack,spks); } - /** * 鑾峰彇褰撳墠浣忓畢缂撳瓨鐨勬墍鏈夌綉鍏筹紝涓�鑸槸璋冭瘯杞欢浣跨敤锛屼笁鏂逛笉鐢ㄨ皟璇曟鏂规硶 * 濡傛灉涔嬪墠杩樻病鏈夎鍙栬繃缃戝叧锛屽厛璋冪敤鏂规硶refreshGatewayByHome璇诲彇涓�娆� @@ -2090,6 +2870,7 @@ @Override public void onFailure(HDLLinkCode hdlLinkCode) { + //HDLExceptionSubmitUtils.submit(topic, request, HDLLinkCopyException.getErrorWithCode(hdlLinkCode.getCode(), hdlLinkCode.getMsg())); if (callBack != null) { callBack.onError(HDLLinkException.getErrorWithCode(hdlLinkCode)); } @@ -2133,6 +2914,7 @@ @Override public void onFailure(HDLLinkCode hdlLinkCode) { + //HDLExceptionSubmitUtils.submit(topic, request, HDLLinkCopyException.getErrorWithCode(hdlLinkCode.getCode(), hdlLinkCode.getMsg())); if (callBack != null) { callBack.onError(HDLLinkException.getErrorWithCode(hdlLinkCode)); @@ -2145,6 +2927,51 @@ } } } + + /** + * 鍏ㄩ噺鏇存柊鎴块棿鍒楄〃 + * + * @param callBack + */ + public void getGatewaylist(HDLLinkCallBack callBack) { + if (null == callBack) { + return; + } + String gatewayId = HDLLinkConfig.getInstance().getGatewayId(); + if (!TextUtils.isEmpty(gatewayId)) { + String time = String.valueOf(System.currentTimeMillis()); + final BaseLocalResponse<JSONObject> senData = new BaseLocalResponse<>(); + senData.setId(IdUtils.getUUId()); + senData.setTime_stamp(time); + JSONObject jsonObject = new JSONObject(); + jsonObject.put("device_mac", "0C811A93EA13F1F5"); + senData.setObjects(jsonObject); + String topic = String.format(TopicConstant.GATEWAY_INFO, gatewayId); + LinkRequest request = new LinkRequest(topic, GsonConvert.getGson().toJson(senData), HDLLinkConfig.getInstance().isLocalEncrypt()); + new HDLConnectHelper(HDLLinkConfig.getInstance().getIpAddress(), request, new HDLConnectHelper.HdlSocketListener() { + @Override + public void onSucceed(Object msg) { + if (msg instanceof LinkResponse) { + callBack.onSuccess(msg.toString()); + } + } + + @Override + public void onFailure(HDLLinkCode hdlLinkCode) { + //HDLExceptionSubmitUtils.submit(topic, request, HDLLinkCopyException.getErrorWithCode(hdlLinkCode.getCode(), hdlLinkCode.getMsg())); + + if (callBack != null) { + callBack.onError(HDLLinkException.getErrorWithCode(hdlLinkCode)); + } + } + }, true).send(); + } else { + if (callBack != null) { + callBack.onError(HDLLinkException.getErrorWithCode(HDLLinkCode.HDL_GATEWAY_NOT_EXIST)); + } + } + } + /** * 鑾峰彇鎴块棿缁戝畾鍏崇郴 @@ -2185,6 +3012,7 @@ @Override public void onFailure(HDLLinkCode hdlLinkCode) { + //HDLExceptionSubmitUtils.submit(topic, request, HDLLinkCopyException.getErrorWithCode(hdlLinkCode.getCode(), hdlLinkCode.getMsg())); if (callBack != null) { callBack.onError(HDLLinkException.getErrorWithCode(hdlLinkCode)); @@ -2230,6 +3058,7 @@ @Override public void onFailure(HDLLinkCode hdlLinkCode) { + //HDLExceptionSubmitUtils.submit(topic, request, HDLLinkCopyException.getErrorWithCode(hdlLinkCode.getCode(), hdlLinkCode.getMsg())); if (callBack != null) { callBack.onError(HDLLinkException.getErrorWithCode(hdlLinkCode)); } @@ -2272,6 +3101,7 @@ @Override public void onFailure(HDLLinkCode hdlLinkCode) { + //HDLExceptionSubmitUtils.submit(topic, request, HDLLinkCopyException.getErrorWithCode(hdlLinkCode.getCode(), hdlLinkCode.getMsg())); if (callBack != null) { callBack.onError(HDLLinkException.getErrorWithCode(hdlLinkCode)); } @@ -2287,7 +3117,7 @@ /** * 鍒氬垰缁戝畾缃戝叧鐨勬椂鍊欒缃綉鍏崇粡绾害 涓嶉渶瑕佸姞瀵� */ - public void gatewayLocation(String mGatewayId, String longitude, String lat, boolean isEncrypt,HDLLinkTCallBack<String> callBack) { + public void gatewayLocation(String mGatewayId, String longitude, String lat, boolean isEncrypt, HDLLinkTCallBack<String> callBack) { if (null == callBack) { return; } @@ -2314,6 +3144,7 @@ @Override public void onFailure(HDLLinkCode hdlLinkCode) { + //HDLExceptionSubmitUtils.submit(topic, request, HDLLinkCopyException.getErrorWithCode(hdlLinkCode.getCode(), hdlLinkCode.getMsg())); if (callBack != null) { callBack.onError(HDLLinkException.getErrorWithCode(hdlLinkCode)); } -- Gitblit v1.8.0