Set allowed number of simultaneous calls from configuration files. If not set, default to the maxchans setting in yate.conf.

git-svn-id: http://yate.null.ro/svn/yate/trunk@5227 acf43c95-373e-0410-b603-e72c3f656dc1
This commit is contained in:
oana 2012-08-17 13:29:31 +00:00
parent 9ad504a992
commit ca3528c6e2
8 changed files with 24 additions and 2 deletions

View File

@ -151,7 +151,7 @@ alias = yate
ident = yate
; maxconns: int: Maximum number of simultaneous connections (0 = no limit).
;maxconns = 0
;maxconns=
; faststart: bool: Enable Fast Start mode (offer media channels early)
; This setting is required when doing direct RTP forwarding between endpoints

View File

@ -48,6 +48,11 @@
; It is a bad idea to set a low priority for anything but testing
;thread=normal
; maxchans: int: Maximum number of channels running at once
; A value of 0 specifies that there is no limit enforced.
; Defaults to the value set by the maxchans setting from yate.conf
;maxchans=
; printmsg: boolean: Print sent/received frames to output if the module's debug
; level is at least 9
; This parameter is applied on reload

View File

@ -37,6 +37,11 @@
; outgoing calls or "jingle_flags" for incoming calls
;jingle_flags=
; maxchans: int: Maximum number of channels running at once
; A value of 0 specifies that there is no limit enforced.
; Defaults to the value set by the maxchans setting from yate.conf
;maxchans=
; accept_relay: bool: Accept a "relay" transport type even if we had another type before
; This works only with Jingle version 0 (Google Talk, libjingle)
;accept_relay=disable in server mode, enable in client mode

View File

@ -156,6 +156,11 @@
; Defaults to 5 if missing, invalid or out of bounds
;sip_rsp_trans_count=5
; maxchans: int: Maximum number of channels running at once
; A value of 0 specifies that there is no limit enforced.
; Defaults to the value set by the maxchans setting from yate.conf
;maxchans=
; printmsg: boolean: Print SIP messages to output
; This parameter is applied on reload
; Defaults to yes

View File

@ -3028,7 +3028,7 @@ void H323Driver::initialize()
s_maxCleaning = s_cfg.getIntValue("general","maxcleaning",100);
s_pwlibThread = s_cfg.getBoolValue("general","pwlibthread");
maxRoute(s_cfg.getIntValue("incoming","maxqueue",5));
maxChans(s_cfg.getIntValue("ep","maxconns",0));
maxChans(s_cfg.getIntValue("ep","maxconns",maxChans()));
if (!s_process) {
setup();
installRelay(Halt);

View File

@ -1365,6 +1365,7 @@ void YIAXDriver::initialize()
if (m_iaxEngine) {
m_iaxEngine->initialize(*gen);
m_iaxEngine->initFormats(cfg.getSection("formats"));
maxChans(gen->getIntValue("maxchans",maxChans()));
return;
}
setup();
@ -1383,6 +1384,8 @@ void YIAXDriver::initialize()
u_int32_t trunkSendInterval = 10;
m_port = gen->getIntValue("port",4569);
String iface = gen->getValue("addr","0.0.0.0");
// set max chans
maxChans(gen->getIntValue("maxchans",maxChans()));
bool authReq = cfg.getBoolValue("registrar","auth_required",true);
m_iaxEngine = new YIAXEngine(iface,m_port,transListCount,retransCount,retransInterval,authTimeout,
transTimeout,maxFullFrameDataLen,trunkSendInterval,authReq,gen);

View File

@ -3867,6 +3867,8 @@ void YJGDriver::initialize()
int redir = sect->getIntValue("redirectcount");
s_redirectCount = (redir >= 0) ? redir : 0;
s_dtmfMeth = sect->getIntValue("dtmfmethod",s_dictDtmfMeth,DtmfJingle);
// set max chans
maxChans(sect->getIntValue("maxchans",maxChans()));
int prio = sect->getIntValue("resource_priority");
if (prio < -128)

View File

@ -7719,6 +7719,8 @@ void SIPDriver::initialize()
s_sslCertFile = s_cfg.getValue("general","ssl_certificate_file");
s_sslKeyFile = s_cfg.getValue("general","ssl_key_file");
s_globalMutex.unlock();
// set max chans
maxChans(s_cfg.getIntValue("general","maxchans",maxChans()));
// Adjust here the TCP idle interval: it uses the SIP engine
s_tcpIdle = tcpIdleInterval(s_cfg.getIntValue("general","tcp_idle",TCP_IDLE_DEF));
// Mark listeners