mirror of
https://github.com/g4klx/DMRGateway
synced 2025-12-21 13:35:40 +08:00
Allow for passing of beacon requests from the networks to the repeater.
This commit is contained in:
@@ -615,6 +615,10 @@ int CDMRGateway::run()
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
ret = m_dmrNetwork1->wantsBeacon();
|
||||||
|
if (ret)
|
||||||
|
m_repeater->writeBeacon();
|
||||||
}
|
}
|
||||||
|
|
||||||
if (m_dmrNetwork2 != NULL) {
|
if (m_dmrNetwork2 != NULL) {
|
||||||
@@ -639,6 +643,10 @@ int CDMRGateway::run()
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
ret = m_dmrNetwork2->wantsBeacon();
|
||||||
|
if (ret)
|
||||||
|
m_repeater->writeBeacon();
|
||||||
}
|
}
|
||||||
|
|
||||||
unsigned char buffer[50U];
|
unsigned char buffer[50U];
|
||||||
|
|||||||
@@ -244,6 +244,15 @@ bool CMMDVMNetwork::readTalkerAlias(unsigned char* data, unsigned int& length)
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
bool CMMDVMNetwork::writeBeacon()
|
||||||
|
{
|
||||||
|
unsigned char buffer[20U];
|
||||||
|
::memcpy(buffer + 0U, "RPTSBKN", 7U);
|
||||||
|
::memcpy(buffer + 7U, m_netId, 4U);
|
||||||
|
|
||||||
|
return m_socket.write(buffer, 11U, m_rptAddress, m_rptPort);
|
||||||
|
}
|
||||||
|
|
||||||
void CMMDVMNetwork::close()
|
void CMMDVMNetwork::close()
|
||||||
{
|
{
|
||||||
LogMessage("DMR, Closing MMDVM Network");
|
LogMessage("DMR, Closing MMDVM Network");
|
||||||
|
|||||||
@@ -50,6 +50,8 @@ public:
|
|||||||
|
|
||||||
virtual bool readTalkerAlias(unsigned char* data, unsigned int& length);
|
virtual bool readTalkerAlias(unsigned char* data, unsigned int& length);
|
||||||
|
|
||||||
|
virtual bool writeBeacon();
|
||||||
|
|
||||||
virtual void clock(unsigned int ms);
|
virtual void clock(unsigned int ms);
|
||||||
|
|
||||||
virtual void close();
|
virtual void close();
|
||||||
|
|||||||
@@ -45,6 +45,8 @@ public:
|
|||||||
|
|
||||||
virtual void clock(unsigned int ms) = 0;
|
virtual void clock(unsigned int ms) = 0;
|
||||||
|
|
||||||
|
virtual bool writeBeacon() = 0;
|
||||||
|
|
||||||
virtual void close() = 0;
|
virtual void close() = 0;
|
||||||
|
|
||||||
private:
|
private:
|
||||||
|
|||||||
Reference in New Issue
Block a user