|
@@ -596,58 +596,25 @@ class BotAgent:
|
|
|
try:
|
|
|
self.cache.set_register_per_hours(expire=timeout_sec - (60*3))
|
|
|
|
|
|
- ep_cfg = pj.EpConfig()
|
|
|
- ep_cfg.uaConfig.threadCnt = 4
|
|
|
- ep_cfg.uaConfig.mainThreadOnly = False
|
|
|
- ep_cfg.uaConfig.maxCalls = 12
|
|
|
- ep_cfg.uaConfig.maxAccounts = 12
|
|
|
- ep_cfg.medConfig.noVad = True
|
|
|
- ep_cfg.logConfig.level = 3
|
|
|
- ep_cfg.logConfig.consoleLevel = 3
|
|
|
+ ep_cfg = build_ep_config()
|
|
|
self.ep.libCreate()
|
|
|
self.ep.libInit(ep_cfg)
|
|
|
|
|
|
aud_dev_mgr = self.ep.audDevManager()
|
|
|
aud_dev_mgr.setNullDev()
|
|
|
+
|
|
|
|
|
|
- media_cfg = pj.MediaConfig()
|
|
|
- media_cfg.jbMinPre = 4
|
|
|
- media_cfg.jbMaxPre = 16
|
|
|
- media_cfg.noVad = True
|
|
|
- media_cfg.clockRate = 16000
|
|
|
- media_cfg.channelCount = 1
|
|
|
- media_cfg.audioFramePtime = 40
|
|
|
-
|
|
|
-
|
|
|
+ media_cfg = build_media_config()
|
|
|
self.ep.medConfig = media_cfg
|
|
|
|
|
|
|
|
|
- sipTpConfig = pj.TransportConfig()
|
|
|
- sipTpConfig.port = 30506
|
|
|
+ sipTpConfig = build_sip_transport_config()
|
|
|
self.ep.transportCreate(pj.PJSIP_TRANSPORT_UDP, sipTpConfig)
|
|
|
|
|
|
self.ep.libStart()
|
|
|
|
|
|
for user_part in self.user_part_range:
|
|
|
- acfg = pj.AccountConfig()
|
|
|
- acfg.idUri = f"sip:{user_part}@{self.host}:{self.port}"
|
|
|
- acfg.regConfig.registrarUri = f"sip:{self.host}:{self.port}"
|
|
|
- cred = pj.AuthCredInfo("digest", "*", f"{user_part}", 0, self.password)
|
|
|
- acfg.sipConfig.authCreds.append(cred)
|
|
|
-
|
|
|
- acfg.regConfig.timeoutSec = timeout_sec
|
|
|
- acfg.regConfig.retryIntervalSec = 10
|
|
|
- acfg.regConfig.firstRetryIntervalSec = 10
|
|
|
-
|
|
|
- acfg.natConfig.iceEnabled = True
|
|
|
- acfg.natConfig.turnEnabled = True
|
|
|
- acfg.natConfig.turnServer = f"stun:{self.host}:3478"
|
|
|
-
|
|
|
-
|
|
|
- acfg.natConfig.udpKaIntervalSec = 30
|
|
|
- acfg.natConfig.contactRewriteUse = 2
|
|
|
- acfg.natConfig.sdpNatRewriteUse = 2
|
|
|
-
|
|
|
+ acfg = build_account_config(self.host, self.port, user_part, self.password, timeout_sec)
|
|
|
|
|
|
acc = Account(self, user_part=user_part)
|
|
|
acc.create(acfg)
|