mirror of
https://github.com/g4klx/MMDVMHost
synced 2025-12-23 00:35:53 +08:00
Clean up the TG rewrite code.
This commit is contained in:
@@ -213,32 +213,31 @@ unsigned int CDMRAccessControl::dstIdRewrite(unsigned int did, unsigned int sid,
|
|||||||
time_t currenttime = ::time(NULL);
|
time_t currenttime = ::time(NULL);
|
||||||
|
|
||||||
if (network) {
|
if (network) {
|
||||||
|
|
||||||
m_dstRewriteID[slot - 1U] = did;
|
m_dstRewriteID[slot - 1U] = did;
|
||||||
m_srcID[slot - 1U] = sid;
|
m_srcID[slot - 1U] = sid;
|
||||||
|
|
||||||
//not needed at present - for direct dial, which requires change at master end.
|
// Not needed at present - for direct dial, which requires change at master end.
|
||||||
//memcpy(&m_lastdmrLC, &dmrLC, sizeof(dmrLC));
|
//memcpy(&m_lastdmrLC, &dmrLC, sizeof(dmrLC));
|
||||||
if (m_bmAutoRewrite && (did < 4000U || did > 5000U) && did > 0U && did != 9U && dmrLC->getFLCO() == FLCO_GROUP ) {
|
if (m_bmAutoRewrite && (did < 4000U || did > 5000U) && did > 0U && did != 9U && dmrLC->getFLCO() == FLCO_GROUP) {
|
||||||
LogMessage("DMR Slot %u, Rewrite DST ID (TG) of of inbound network traffic from %u to 9",slot,did);
|
LogMessage("DMR Slot %u, Rewrite DST ID (TG) of of inbound network traffic from %u to 9", slot, did);
|
||||||
return 9U;
|
return 9U;
|
||||||
// rewrite incoming BM voice prompts to TG 9
|
// Rewrite incoming BM voice prompts to TG 9
|
||||||
} else if (m_bmRewriteReflectorVoicePrompts && (sid >= 4000U && sid <= 5000U) && dmrLC->getFLCO() == FLCO_USER_USER) {
|
} else if (m_bmRewriteReflectorVoicePrompts && (sid >= 4000U && sid <= 5000U) && dmrLC->getFLCO() == FLCO_USER_USER) {
|
||||||
dmrLC->setFLCO(FLCO_GROUP);
|
dmrLC->setFLCO(FLCO_GROUP);
|
||||||
LogMessage("DMR Slot %u, Rewrite inbound private call to %u to Group Call on TG 9 (BM reflector voice prompt)",slot,did);
|
LogMessage("DMR Slot %u, Rewrite inbound private call to %u to Group Call on TG 9 (BM reflector voice prompt)", slot, did);
|
||||||
return 9U;
|
return 9U;
|
||||||
} else {
|
} else {
|
||||||
return 0U;
|
return 0U;
|
||||||
}
|
}
|
||||||
} else if (m_bmAutoRewrite && did == 9U && m_dstRewriteID[slot - 1U] != 9U && m_dstRewriteID[slot - 1U] != 0U && (m_time[slot - 1U] + m_callHang) > currenttime && dmrLC->getFLCO() == FLCO_GROUP ) {
|
} else if (m_bmAutoRewrite && did == 9U && m_dstRewriteID[slot - 1U] != 9U && m_dstRewriteID[slot - 1U] != 0U && (m_time[slot - 1U] + m_callHang) > currenttime && dmrLC->getFLCO() == FLCO_GROUP) {
|
||||||
LogMessage("DMR Slot %u, Rewrite DST ID (TG) of outbound network traffic from %u to %u (return traffic during CallHang)",slot,did,m_dstRewriteID[slot - 1]);
|
LogMessage("DMR Slot %u, Rewrite DST ID (TG) of outbound network traffic from %u to %u (return traffic during CallHang)", slot, did, m_dstRewriteID[slot - 1U]);
|
||||||
return m_dstRewriteID[slot - 1U];
|
return m_dstRewriteID[slot - 1U];
|
||||||
} else if (m_bmAutoRewrite && (did < 4000U || did > 5000U) && did > 0U && did != 9U && did != 9990U && did < 99999U && dmrLC->getFLCO() == FLCO_USER_USER) {
|
} else if (m_bmAutoRewrite && (did < 4000U || did > 5000U) && did > 0U && did != 9U && did != 9990U && did < 99999U && dmrLC->getFLCO() == FLCO_USER_USER) {
|
||||||
m_dstRewriteID[slot - 1U] = did;
|
m_dstRewriteID[slot - 1U] = did;
|
||||||
dmrLC->setFLCO(FLCO_GROUP);
|
dmrLC->setFLCO(FLCO_GROUP);
|
||||||
LogMessage("DMR Slot %u, Rewrite outbound private call to %u Group Call (Connect talkgroup by private call)",slot,did);
|
LogMessage("DMR Slot %u, Rewrite outbound private call to %u Group Call (Connect talkgroup by private call)", slot, did);
|
||||||
return did;
|
return did;
|
||||||
} else if (m_bmAutoRewrite && (did < 4000U || did > 5000U) && did > 0U && did != 9U && did > 99999U) {
|
} else if (m_bmAutoRewrite && (did < 4000U || did > 5000U) && did > 0U && did != 9U && did != 9990U && did > 99999U) {
|
||||||
m_dstRewriteID[slot - 1U] = did;
|
m_dstRewriteID[slot - 1U] = did;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user