AppLayer 类中已经有了 getAfn() 和 getFn() 方法来获取 Afn 和 Fn 的值,现在需要对 Afn=H10 的 254 和 H0C 的 33、34、35 进行应答。可以通过添加多个条件来实现:

AppLayer appLayer = upPacket.getAppLayer();
int afn = appLayer.getAfn();
int fn = appLayer.getFn();

if (afn == AFN.H10 && fn == 254) {
    channel.writeAndFlush(DF3761Utils.buildRespPacket(upPacket, true));
} else if (afn == AFN.H0C && (fn == 33 || fn == 34 || fn == 35)) {
    channel.writeAndFlush(DF3761Utils.buildRespPacket(upPacket, true));
}

这样,当 Afn 为 H10 且 Fn 为 254,或者 Afn 为 H0C 且 Fn 为 33、34、35 时,会进行应答。

Java 代码优化:针对特定 Afn 和 Fn 值进行应答

原文地址: https://www.cveoy.top/t/topic/qmXx 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录