| | |
| | | public class A5AtmosphereQueryVersionReportInnerFrame extends BaseResponseInnerFrame<A5AtmosphereQueryVersionReportInnerFrame> { |
| | | //设备地址 |
| | | private String deviceAddress; |
| | | //硬件版本 |
| | | private String version; |
| | | |
| | | @Override |
| | | public A5AtmosphereQueryVersionReportInnerFrame transformFrame(String hex) { |
| | | if (StrUtil.isBlank(hex) || hex.length() != 100) { |
| | | //FE040004FFFF0105954FAA7F |
| | | if (StrUtil.isBlank(hex) || hex.length() != 24) { |
| | | return null; |
| | | } |
| | | // MQTT通信方式(1) |
| | |
| | | setPayloadLength(hex.substring(4, 8)); |
| | | //设备地址 |
| | | setDeviceAddress(hex.substring(8, 12)); |
| | | // |
| | | //硬件版本 |
| | | String version1 = String.valueOf(Integer.parseInt(hex.substring(12, 14), 16)); |
| | | String version2 = String.valueOf(Integer.parseInt(hex.substring(14, 16), 16)); |
| | | if (version2.length() == 1) { |
| | | version2 = "0" + version2; |
| | | } |
| | | setVersion("硬件版本为:" + version1 + "." + version2); |
| | | |
| | | //校验 |
| | | setCrc32(hex.substring(hex.length() - 8)); |