From 70658288824174b5ecd8a022ecfc053a19aa292d Mon Sep 17 00:00:00 2001 From: JLChen <551775569@qq.com> Date: 星期二, 10 八月 2021 16:36:14 +0800 Subject: [PATCH] 2021-08-10 1.更新 --- hdl_core/src/main/java/com/hdl/sdk/hdl_core/HDLAppliances/HDLAirCondition/Parser/AirCtrlParser.java | 2 app/src/main/java/com/hdl/sdk/hdl_sdk/activity/CtrlAirActivity.java | 148 +++--------------------- app/src/main/res/layout/activity_ctrl_air.xml | 17 ++ app/src/main/java/com/hdl/sdk/hdl_sdk/activity/AppliancesActivity.java | 14 +- hdl_core/src/main/java/com/hdl/sdk/hdl_core/HDLDeviceManger/Core/HDLDeviceManager.java | 128 +++++++++++++++++++- 5 files changed, 163 insertions(+), 146 deletions(-) diff --git a/app/src/main/java/com/hdl/sdk/hdl_sdk/activity/AppliancesActivity.java b/app/src/main/java/com/hdl/sdk/hdl_sdk/activity/AppliancesActivity.java index 4e7f997..22a1149 100644 --- a/app/src/main/java/com/hdl/sdk/hdl_sdk/activity/AppliancesActivity.java +++ b/app/src/main/java/com/hdl/sdk/hdl_sdk/activity/AppliancesActivity.java @@ -80,12 +80,14 @@ } else if (appliancesInfos.get(position).getBigType() == Configuration.AIR_BIG_TYPE) { - //绌鸿皟妯″潡 - if(appliancesInfos.get(position).getDeviceType() == HDLApConfig.TYPE_AC_HVAC){ - intent.setClass(AppliancesActivity.this, CtrlAirHVACActivity.class); - }else { - intent.setClass(AppliancesActivity.this, CtrlAirActivity.class); - } +// //绌鸿皟妯″潡 +// if(appliancesInfos.get(position).getDeviceType() == HDLApConfig.TYPE_AC_HVAC){ +// intent.setClass(AppliancesActivity.this, CtrlAirHVACActivity.class); +// +// }else { +// intent.setClass(AppliancesActivity.this, CtrlAirActivity.class); +// } + intent.setClass(AppliancesActivity.this, CtrlAirActivity.class); } else { diff --git a/app/src/main/java/com/hdl/sdk/hdl_sdk/activity/CtrlAirActivity.java b/app/src/main/java/com/hdl/sdk/hdl_sdk/activity/CtrlAirActivity.java index 847948a..2cf3ba5 100644 --- a/app/src/main/java/com/hdl/sdk/hdl_sdk/activity/CtrlAirActivity.java +++ b/app/src/main/java/com/hdl/sdk/hdl_sdk/activity/CtrlAirActivity.java @@ -37,7 +37,7 @@ private Button airBtnSwitch, airBtnMode, airBtnTemp, airBtnSpeed; private TextView airText; - private TextView tv_switch, tv_mode, tv_speed, tv_tempet; + private TextView tv_switch, tv_mode, tv_speed, tv_tempet, tv_indoorTempet; private EditText airTempEd; private AppliancesInfo appliancesInfo; @@ -46,6 +46,7 @@ private int airModeState; private int airTempState; private int airSpeedState; + private int indoorTemp; // /** // * true涓鸿缃憚姘忓害 false涓鸿缃崕姘忓害 // * 鍙傛暟鑼冨洿 16~30鎽勬皬搴�(鈩�) @@ -105,7 +106,9 @@ private void displayStateView(){ switch (appliancesInfo.getDeviceType()) { -// case HDLApConfig.TYPE_AC_HVAC: + case HDLApConfig.TYPE_AC_HVAC: + HDLCommand.getHVACDeviceStateFromNetwork(appliancesInfo); + break; case HDLApConfig.TYPE_AC_PANEL: loadDeviceData(); break; @@ -128,6 +131,8 @@ tv_mode = findViewById(R.id.tv_mode); tv_speed = findViewById(R.id.tv_speed); tv_tempet = findViewById(R.id.tv_tempet); + + tv_indoorTempet = findViewById(R.id.tv_indoorTempet); } private void initOnClick() { @@ -420,7 +425,7 @@ ) { //杩欎釜杩斿洖鐨勪俊鎭槸褰撳墠鐘舵�佺殑 switch (event.getAppliancesInfo().getDeviceType()) { -// case HDLApConfig.TYPE_AC_HVAC: + case HDLApConfig.TYPE_AC_HVAC: case HDLApConfig.TYPE_AC_PANEL: if (appliancesInfo.getChannelNum() == event.getAppliancesInfo().getChannelNum()) { if (!event.isSuccess()) { @@ -429,132 +434,8 @@ } byte[] curState = event.getAppliancesInfo().getArrCurState(); - readAirState(curState); -// switch (curState[0] & 0xFF) { -// case AirCtrlParser.airSwich: -// switch (curState[1] & 0xFF) { -// case AirCtrlParser.airOff: -// airSwitchState = 0; -// airText.setText("绌鸿皟鍏�"); -// showToast("绌鸿皟鍏�"); -// HDLLog.I("绌鸿皟鍏�"); -// break; -// case AirCtrlParser.airOn: -// airSwitchState = 1; -// airText.setText("绌鸿皟寮�"); -// showToast("绌鸿皟寮�"); -// HDLLog.I("绌鸿皟寮�"); -// break; -// default: -// break; -// } -// -// break; -// -// case AirCtrlParser.airSpeed: -// switch (curState[1] & 0xFF) { -// case AirCtrlParser.airSpeedAuto: -// airSpeedState = 0; -// airText.setText("绌鸿皟椋庨�燂紝椋庨�熸ā寮忎负锛歛irSpeedAuto鑷姩椋庨��"); -// showToast("绌鸿皟椋庨�燂紝椋庨�熸ā寮忎负锛歛irSpeedAuto鑷姩椋庨��"); -// HDLLog.I("绌鸿皟椋庨�燂紝椋庨�熸ā寮忎负锛歛irSpeedAuto鑷姩椋庨��"); -// break; -// case AirCtrlParser.airSpeedHigh: -// airSpeedState = 1; -// airText.setText("绌鸿皟椋庨�燂紝椋庨�熸ā寮忎负锛歛irSpeedHigh椋庨�熼珮"); -// showToast("绌鸿皟椋庨�燂紝椋庨�熸ā寮忎负锛歛irSpeedHigh椋庨�熼珮"); -// HDLLog.I("绌鸿皟椋庨�燂紝椋庨�熸ā寮忎负锛歛irSpeedHigh椋庨�熼珮"); -// break; -// case AirCtrlParser.airSpeedMid: -// airSpeedState = 2; -// airText.setText("绌鸿皟椋庨�燂紝椋庨�熸ā寮忎负锛歛irSpeedMid椋庨�熶腑"); -// showToast("绌鸿皟椋庨�燂紝椋庨�熸ā寮忎负锛歛irSpeedMid椋庨�熶腑"); -// HDLLog.I("绌鸿皟椋庨�燂紝椋庨�熸ā寮忎负锛歛irSpeedMid椋庨�熶腑"); -// break; -// case AirCtrlParser.airSpeedLow: -// airSpeedState = 3; -// airText.setText("绌鸿皟椋庨�燂紝椋庨�熸ā寮忎负锛歛irSpeedLow椋庨�熶綆"); -// showToast("绌鸿皟椋庨�燂紝椋庨�熸ā寮忎负锛歛irSpeedLow椋庨�熶綆"); -// HDLLog.I("绌鸿皟椋庨�燂紝椋庨�熸ā寮忎负锛歛irSpeedLow椋庨�熶綆"); -// break; -// default: -// break; -// } -// break; -// case AirCtrlParser.airMode: -// switch (curState[1] & 0xFF) { -// case AirCtrlParser.airModeRefTem: -// airModeState = 0; -// airText.setText("绌鸿皟妯″紡锛屾ā寮忎负锛氬埗鍐�"); -// showToast("绌鸿皟妯″紡锛屾ā寮忎负锛氬埗鍐�"); -// HDLLog.I("绌鸿皟妯″紡锛屾ā寮忎负锛氬埗鍐�"); -// break; -// case AirCtrlParser.airModeHeatTem: -// airModeState = 1; -// airText.setText("绌鸿皟妯″紡锛屾ā寮忎负锛氬埗鐑�"); -// showToast("绌鸿皟妯″紡锛屾ā寮忎负锛氬埗鐑�"); -// HDLLog.I("绌鸿皟妯″紡锛屾ā寮忎负锛氬埗鐑�"); -// break; -// case AirCtrlParser.airModeVen: -// airModeState = 2; -// airText.setText("绌鸿皟妯″紡锛屾ā寮忎负锛氶�氶"); -// showToast("绌鸿皟妯″紡锛屾ā寮忎负锛氶�氶"); -// HDLLog.I("绌鸿皟妯″紡锛屾ā寮忎负锛氶�氶"); -// break; -// case AirCtrlParser.airModeAuto: -// airModeState = 3; -// airText.setText("绌鸿皟妯″紡锛屾ā寮忎负锛氳嚜鍔�"); -// showToast("绌鸿皟妯″紡锛屾ā寮忎负锛氳嚜鍔�"); -// HDLLog.I("绌鸿皟妯″紡锛屾ā寮忎负锛氳嚜鍔�"); -// break; -// case AirCtrlParser.airModeDehum: -// airModeState = 4; -// airText.setText("绌鸿皟妯″紡锛屾ā寮忎负锛氭娊婀�"); -// showToast("绌鸿皟妯″紡锛屾ā寮忎负锛氭娊婀�"); -// HDLLog.I("绌鸿皟妯″紡锛屾ā寮忎负锛氭娊婀�"); -// break; -// default: -// break; -// } -// break; -// case AirCtrlParser.refTem: -// airTempState = curState[1] & 0xFF; -// airText.setText("绌鸿皟鍒跺喎锛屾俯搴︿负锛�" + (curState[1] & 0xFF)); -// showToast("绌鸿皟鍒跺喎锛屾俯搴︿负锛�" + (curState[1] & 0xFF)); -// HDLLog.I("绌鸿皟鍒跺喎锛屾俯搴︿负锛�" + (curState[1] & 0xFF)); -// break; -// case AirCtrlParser.heatTem: -// airTempState = curState[1] & 0xFF; -// airText.setText("绌鸿皟鍒剁儹锛屽埗鐑俯搴︿负" + (curState[1] & 0xFF)); -// showToast("绌鸿皟鍒剁儹锛屽埗鐑俯搴︿负" + (curState[1] & 0xFF)); -// HDLLog.I("绌鸿皟鍒剁儹锛屽埗鐑俯搴︿负" + (curState[1] & 0xFF)); -// break; -// case AirCtrlParser.autoTem: -// airTempState = curState[1] & 0xFF; -// airText.setText("绌鸿皟鑷姩锛岃嚜鍔ㄦ俯搴︿负" + (curState[1] & 0xFF)); -// showToast("绌鸿皟鑷姩锛岃嚜鍔ㄦ俯搴︿负" + (curState[1] & 0xFF)); -// HDLLog.I("绌鸿皟鑷姩锛岃嚜鍔ㄦ俯搴︿负" + (curState[1] & 0xFF)); -// break; -// case AirCtrlParser.dehumTem: -// airTempState = curState[1] & 0xFF; -// airText.setText("绌鸿皟鎶芥箍锛屾娊婀挎俯搴︿负" + (curState[1] & 0xFF)); -// showToast("绌鸿皟鎶芥箍锛屾娊婀挎俯搴︿负" + (curState[1] & 0xFF)); -// HDLLog.I("绌鸿皟鎶芥箍锛屾娊婀挎俯搴︿负" + (curState[1] & 0xFF)); -// break; -// case AirCtrlParser.upTem: -// airTempState = curState[1] & 0xFF; -// airText.setText("绌鸿皟璋冩俯锛屼笂鍗囨俯搴︼細" + (curState[1] & 0xFF)); -// showToast("绌鸿皟璋冩俯锛屼笂鍗囨俯搴︼細" + (curState[1] & 0xFF)); -// HDLLog.I("绌鸿皟璋冩俯锛屼笂鍗囨俯搴︼細" + (curState[1] & 0xFF)); -// break; -// case AirCtrlParser.downTem: -// airTempState = curState[1] & 0xFF; -// airText.setText("绌鸿皟璋冩俯锛屼笅闄嶆俯搴︼細" + (curState[1] & 0xFF)); -// showToast("绌鸿皟璋冩俯锛屼笅闄嶆俯搴︼細" + (curState[1] & 0xFF)); -// HDLLog.I("绌鸿皟璋冩俯锛屼笅闄嶆俯搴︼細" + (curState[1] & 0xFF)); -// break; -// } + } break; default: @@ -565,6 +446,8 @@ } private void readAirState( byte[] curState ){ + HDLLog.I("readAirState 妯″紡锛�"+ (curState[0] & 0xFF) + "鐘舵�侊細" +(curState[1] & 0xFF)); + String mes = ""; switch (curState[0] & 0xFF) { case AirCtrlParser.airSwich: @@ -722,7 +605,6 @@ case AirCtrlParser.upTem: airTempState = curState[1] & 0xFF; - tv_tempet.setText("" + airTempState); mes = "绌鸿皟璋冩俯锛屼笂鍗囨俯搴︼細" + (airTempState); tv_mesSetText(mes); @@ -735,7 +617,13 @@ tv_mesSetText(mes); HDLLog.I(mes); break; - + case AirCtrlParser.airIndoorTemp: + indoorTemp = curState[1] & 0xFF; + tv_indoorTempet.setText("" + indoorTemp); + mes = "褰撳墠瀹ゅ唴娓╁害锛�" + (indoorTemp); + tv_mesSetText(mes); + HDLLog.I(mes); + break; } } diff --git a/app/src/main/res/layout/activity_ctrl_air.xml b/app/src/main/res/layout/activity_ctrl_air.xml index b362174..d1d79a6 100644 --- a/app/src/main/res/layout/activity_ctrl_air.xml +++ b/app/src/main/res/layout/activity_ctrl_air.xml @@ -97,6 +97,23 @@ android:text="" /> </LinearLayout> + <LinearLayout + android:layout_width="match_parent" + android:layout_height="40dp"> + + <TextView + android:layout_width="80dp" + android:layout_height="match_parent" + android:gravity="center" + android:text="瀹ゅ唴娓╁害锛�" /> + + <TextView + android:id="@+id/tv_indoorTempet" + android:layout_width="80dp" + android:layout_height="match_parent" + android:gravity="center" + android:text="" /> + </LinearLayout> <TextView android:id="@+id/airText" android:textSize="@dimen/ts_20" diff --git a/hdl_core/src/main/java/com/hdl/sdk/hdl_core/HDLAppliances/HDLAirCondition/Parser/AirCtrlParser.java b/hdl_core/src/main/java/com/hdl/sdk/hdl_core/HDLAppliances/HDLAirCondition/Parser/AirCtrlParser.java index c253b8d..70f0fc3 100644 --- a/hdl_core/src/main/java/com/hdl/sdk/hdl_core/HDLAppliances/HDLAirCondition/Parser/AirCtrlParser.java +++ b/hdl_core/src/main/java/com/hdl/sdk/hdl_core/HDLAppliances/HDLAirCondition/Parser/AirCtrlParser.java @@ -41,6 +41,8 @@ public static final int dehumTem = 19;//鎶芥箍娓╁害 + public static final int airIndoorTemp = 200;//瀹ゅ唴娓╁害 2021-08-10 鑷畾涔夛紝鐢ㄤ簬閫氱煡褰撳墠璁惧瀹ゅ唴娓╁害 + public static byte[] getAirPanelAddByte(int type, int arg2) { byte[] addBytes; diff --git a/hdl_core/src/main/java/com/hdl/sdk/hdl_core/HDLDeviceManger/Core/HDLDeviceManager.java b/hdl_core/src/main/java/com/hdl/sdk/hdl_core/HDLDeviceManger/Core/HDLDeviceManager.java index 74d178f..cf40bf0 100644 --- a/hdl_core/src/main/java/com/hdl/sdk/hdl_core/HDLDeviceManger/Core/HDLDeviceManager.java +++ b/hdl_core/src/main/java/com/hdl/sdk/hdl_core/HDLDeviceManger/Core/HDLDeviceManager.java @@ -3129,7 +3129,7 @@ /** * 澶勭悊HVAC 鎺у埗鍥炶皟 - * 2019-8-6 + * 2021-08-10 * * @param getDatas */ @@ -3146,16 +3146,65 @@ && infos.get(j).getDeviceType() == HDLApConfig.TYPE_AC_HVAC && infos.get(j).getChannelNum() == (getDatas.addBytes[0] & 0xFF)) { +// // +// devicesDataList.get(i).getAppliancesInfoList().get(j).setArrCurState(getDatas.addBytes); +// AppliancesInfo mHvacAirInfo = devicesDataList.get(i).getAppliancesInfoList().get(j); +// AirHVACBackInfo info = new AirHVACBackInfo(mHvacAirInfo); +// setDeviceCtrlSuccessStateWithInfo(infos.get(j), true); +// EventBus.getDefault().post(new AirHVACFeedBackEvent(info, true)); + + + //2021-08-10 锛屾敼鍥濧irFeedBackEvent閫氱煡鍥炶皟 + setDeviceCtrlSuccessStateWithInfo(infos.get(j), true); devicesDataList.get(i).getAppliancesInfoList().get(j).setArrCurState(getDatas.addBytes); AppliancesInfo mHvacAirInfo = devicesDataList.get(i).getAppliancesInfoList().get(j); - AirHVACBackInfo info = new AirHVACBackInfo(mHvacAirInfo); - setDeviceCtrlSuccessStateWithInfo(infos.get(j), true); - EventBus.getDefault().post(new AirHVACFeedBackEvent(info, true)); + + if (getDatas.addBytes.length > 12) { + //瑙f瀽鏈�鏂扮殑鐘舵�� + byte indoorTemp = getDatas.addBytes[2]; + byte refTemp = getDatas.addBytes[3];//鍒跺喎娓╁害鐐� 0-84 + byte heatTemp = getDatas.addBytes[4];//鍒剁儹娓╁害鐐� 0-84 + byte autoTemp = getDatas.addBytes[5];//鑷姩娓╁害鐐� 0-84 + byte wettedTemp = getDatas.addBytes[6];//鎶芥箍娓╁害鐐� 0-84 + byte isOn = getDatas.addBytes[8]; + byte airMode = getDatas.addBytes[9]; + byte airSpeed = getDatas.addBytes[10]; + //鐩墠鎺ユ敹鍒版暟鎹� 閮介�氱煡涓�娆℃渶鏂扮殑鐘舵�� + //1.鍥炶皟寮�鍏崇姸鎬� + sendAirFeedBackEvent(mHvacAirInfo, new byte[]{AirCtrlParser.airSwich, isOn}); + //2.鍥炶皟 瀹ゅ唴娓╁害鐘舵�� + sendAirFeedBackEvent(mHvacAirInfo, new byte[]{(byte)AirCtrlParser.airIndoorTemp, indoorTemp}); + //3.鍥炶皟 绌鸿皟妯″紡 + sendAirFeedBackEvent(mHvacAirInfo, new byte[]{(byte)AirCtrlParser.airMode, airMode}); + //4.鍥炶皟 褰撳墠妯″紡瀵瑰簲鐨勬俯搴︼紝涔熷彲浠ユ敼涓洪�氱煡鎵�鏈夋ā寮忕殑娓╁害 + byte[] curAirInfo = {0,0}; + switch (airMode) { + case 0: + curAirInfo = new byte[]{AirCtrlParser.refTem, refTemp}; + break; + case 1: + curAirInfo = new byte[]{AirCtrlParser.heatTem, heatTemp}; + break; + case 2: + //閫氶妯″紡娌℃湁娓╁害 +// curAirInfo = new byte[]{AirCtrlParser.airTemp, newAirTem}; + break; + case 3: + curAirInfo = new byte[]{AirCtrlParser.autoTem, autoTemp}; + break; + case 4: + curAirInfo = new byte[]{AirCtrlParser.dehumTem, wettedTemp}; + break; + } + sendAirFeedBackEvent(mHvacAirInfo, curAirInfo); + //5.鍥炶皟 绌鸿皟椋庨�� + sendAirFeedBackEvent(mHvacAirInfo, new byte[]{(byte)AirCtrlParser.airSpeed, airSpeed}); + } + + devicesDataList.get(i).getAppliancesInfoList().get(j).setArrCurState(getDatas.addBytes); break outter; } -// else { -// HDLLog.E("鎺у埗HVAC鐘舵�佸弽棣堟暟鎹紓甯�"); -// } + } } @@ -3164,9 +3213,20 @@ } } + /** + * 2021-08-10 + * 鍙戦�侀�氱煡 绌鸿皟鐘舵�� + */ + private static void sendAirFeedBackEvent(AppliancesInfo mHvacAirInfo, byte[] curStateBytes){ + AirCtrlBackInfo backInfo1 = new AirCtrlBackInfo(); + backInfo1.setAppliancesInfo(mHvacAirInfo); + backInfo1.setCurState(curStateBytes); + EventBus.getDefault().post(new AirFeedBackEvent(backInfo1, true)); + } + /** - * 璇诲彇HVAC鐘舵�佸弽棣� - * + * 2021-08-10 + * 璇诲彇HVAC鐘舵�佸弽棣堜篃閫氳繃AirFeedBackEvent鍥炶皟 * @param getDatas */ private static void handleHVACStateData(UdpDataBean getDatas) { @@ -3181,9 +3241,57 @@ && infos.get(j).getDeviceType() == HDLApConfig.TYPE_AC_HVAC && infos.get(j).getChannelNum() == (getDatas.addBytes[0] & 0xFF)) {//2019-8-6 +// isGetDeviceStateSuccess = true; +// devicesDataList.get(i).getAppliancesInfoList().get(j).setArrCurState(getDatas.addBytes); +// EventBus.getDefault().post(new DeviceStateEvent(devicesDataList.get(i).getAppliancesInfoList().get(j), true)); + + //鏀瑰洖鏃ф柟妗� 鎵�鏈夌姸鎬佸垎寮�閫氱煡 isGetDeviceStateSuccess = true; devicesDataList.get(i).getAppliancesInfoList().get(j).setArrCurState(getDatas.addBytes); - EventBus.getDefault().post(new DeviceStateEvent(devicesDataList.get(i).getAppliancesInfoList().get(j), true)); + + AppliancesInfo mHvacAirInfo = devicesDataList.get(i).getAppliancesInfoList().get(j); + byte[] curAirInfo = new byte[]{0}; + if (getDatas.addBytes.length > 12) { + //瑙f瀽鏈�鏂扮殑鐘舵�� + byte indoorTemp = getDatas.addBytes[2]; + byte refTemp = getDatas.addBytes[3];//鍒跺喎娓╁害鐐� 0-84 + byte heatTemp = getDatas.addBytes[4];//鍒剁儹娓╁害鐐� 0-84 + byte autoTemp = getDatas.addBytes[5];//鑷姩娓╁害鐐� 0-84 + byte wettedTemp = getDatas.addBytes[6];//鎶芥箍娓╁害鐐� 0-84 + byte isOn = getDatas.addBytes[8]; + byte airMode = getDatas.addBytes[9]; + byte airSpeed = getDatas.addBytes[10]; + //1.鍥炶皟寮�鍏崇姸鎬� + sendAirFeedBackEvent(mHvacAirInfo, new byte[]{AirCtrlParser.airSwich, isOn}); + //2.鍥炶皟 瀹ゅ唴娓╁害鐘舵�� + sendAirFeedBackEvent(mHvacAirInfo, new byte[]{(byte) AirCtrlParser.airIndoorTemp, indoorTemp}); + //3.鍥炶皟 绌鸿皟妯″紡 + sendAirFeedBackEvent(mHvacAirInfo, new byte[]{(byte) AirCtrlParser.airMode, airMode}); + //4.鍥炶皟 褰撳墠妯″紡瀵瑰簲鐨勬俯搴� + switch (airMode) { + case 0: + curAirInfo = new byte[]{AirCtrlParser.refTem, refTemp}; + break; + case 1: + curAirInfo = new byte[]{AirCtrlParser.heatTem, heatTemp}; + break; + case 2: + //閫氶妯″紡娌℃湁娓╁害 +// curAirInfo = new byte[]{AirCtrlParser.airTemp, newAirTem}; + break; + case 3: + curAirInfo = new byte[]{AirCtrlParser.autoTem, autoTemp}; + break; + case 4: + curAirInfo = new byte[]{AirCtrlParser.dehumTem, wettedTemp}; + break; + } + sendAirFeedBackEvent(mHvacAirInfo, curAirInfo); + //5.鍥炶皟 绌鸿皟椋庨�� + sendAirFeedBackEvent(mHvacAirInfo, new byte[]{(byte) AirCtrlParser.airSpeed, airSpeed}); + } + + break outter; } else { HDLLog.info("handleHVACStateData 娌℃湁鎵惧埌鍖归厤绫诲瀷"); -- Gitblit v1.8.0