Handle unlinking.

This commit is contained in:
Jonathan Naylor
2017-04-30 11:01:54 +01:00
parent a66db5d32a
commit 847de9f470

View File

@@ -115,7 +115,7 @@ m_conf(confFile),
m_mmdvm(NULL), m_mmdvm(NULL),
m_dmrNetwork(NULL), m_dmrNetwork(NULL),
m_xlxNetwork(NULL), m_xlxNetwork(NULL),
m_reflector(0U) m_reflector(4000U)
{ {
} }
@@ -272,10 +272,15 @@ int CDMRGateway::run()
status = DMRGWS_REFLECTOR; status = DMRGWS_REFLECTOR;
timer.start(); timer.start();
} else if (flco == FLCO_USER_USER) { } else if (flco == FLCO_USER_USER) {
unsigned int reflector = data.getDstId(); unsigned int id = data.getDstId();
if (reflector != m_reflector) { if (id >= 4000U && id <= 4026U) {
LogMessage("Switching to reflector %u", reflector); if (id != m_reflector) {
m_reflector = reflector; if (id != 4000U)
LogMessage("Linking to reflector %u", id);
else
LogMessage("Unlinking");
m_reflector = id;
} }
xlxRewrite.process(data); xlxRewrite.process(data);
@@ -287,6 +292,11 @@ int CDMRGateway::run()
status = DMRGWS_NETWORK; status = DMRGWS_NETWORK;
timer.start(); timer.start();
} }
} else {
m_dmrNetwork->write(data);
status = DMRGWS_NETWORK;
timer.start();
}
} else { } else {
m_dmrNetwork->write(data); m_dmrNetwork->write(data);
} }