| | |
| | | import com.ard.alarm.radar.domain.RadarAlarmData; |
| | | import com.ard.utils.other.ByteUtils; |
| | | import com.ard.utils.other.GisUtils; |
| | | import com.ard.utils.mqtt.MqttConsumer; |
| | | import com.ard.utils.mqtt.MqttProducer; |
| | | import io.netty.buffer.ByteBuf; |
| | | import io.netty.channel.ChannelHandlerContext; |
| | | import io.netty.channel.ChannelId; |
| | |
| | | * @throws Exception |
| | | */ |
| | | @Override |
| | | public void channelActive(ChannelHandlerContext ctx) throws Exception { |
| | | public void channelActive(ChannelHandlerContext ctx) { |
| | | context = ctx; |
| | | startHeartbeatTask();//开始发送心跳 |
| | | } |
| | |
| | | //抽油机状态集合中装入数据 |
| | | byte[] szName = Arrays.copyOfRange(data, index + 32, index + 64); |
| | | String alarmPointName = ByteUtils.bytesToStringZh(szName); |
| | | log.debug("报警信息:" + "【id】" + id + "【name】" + alarmPointName + "【alarmType】" + wellType + "【alarmTime】" + alarmTime); |
| | | log.debug("抽油机状态报警信息:" + "【id】" + id + "【name】" + alarmPointName + "【alarmType】" + wellType + "【alarmTime】" + alarmTime); |
| | | ArdAlarmRadar wellAlarm = new ArdAlarmRadar(); |
| | | wellAlarm.setTargetId(id); |
| | | wellAlarm.setName(alarmPointName); |
| | |
| | | radarAlarmData.setRadarName(radarName); |
| | | radarAlarmData.setAlarmTime(alarmTime); |
| | | radarAlarmData.setArdAlarmRadars(radarAlarmInfos); |
| | | MqttConsumer.publish(2, false, "radar", JSON.toJSONString(radarAlarmData)); |
| | | MqttProducer.publish(2, false, "radar", JSON.toJSONString(radarAlarmData)); |
| | | //抽油机状态MQTT队列 |
| | | radarAlarmData.setArdAlarmRadars(well); |
| | | MqttConsumer.publish(2, false, "radarWellData", JSON.toJSONString(radarAlarmData)); |
| | | MqttProducer.publish(2, false, "radarWellData", JSON.toJSONString(radarAlarmData)); |
| | | } catch (Exception ex) { |
| | | log.error("雷达报文解析异常:" + ex.getMessage()); |
| | | } |