package com.dy.rtuMw.server.mqtt; import com.dy.common.mw.protocol4Mqtt.MqttPubMsg; import com.dy.common.mw.protocol4Mqtt.MqttSubMsg; import com.dy.common.util.Callback; import lombok.extern.slf4j.Slf4j; /** * @Author: liurunyu * @Date: 2025/6/11 17:33 * @Description */ @Slf4j public class MqttSubMsgDealer implements Callback { @Override public void call(Object obj) { MqttSubMsg subMs = (MqttSubMsg) obj ; MqttPubMsg pubMs = MqttPubMsgCache.matchFromTail(subMs) ; if(pubMs != null){ //匹配到下行消息(命令) subMs.mqttResultSendWebUrl = pubMs.mqttResultSendWebUrl ; subMs.commandId = pubMs.commandId ; try { MqttComResultCache.getInstance().cacheMqttComResult(new MqttComResultNode(subMs)); } catch (Exception e) { log.error("缓存发布消息(命令)结果发生异常", e); } } try{ MqttSubMsgCache.getInstance().cacheMsg(new MqttSubMsgNode(subMs)); }catch (Exception e){ log.error("缓存订阅消息数据发生异常", e); } } @Override public void call(Object... objs) { } @Override public void exception(Exception e) { } }