瀏覽代碼

刷新机器人注册时间机制

DavidLiu 3 月之前
父節點
當前提交
d6af673427
共有 2 個文件被更改,包括 5 次插入5 次删除
  1. 2 2
      src/core/callcenter/cache.py
  2. 3 3
      src/core/voip/bot.py

+ 2 - 2
src/core/callcenter/cache.py

@@ -194,6 +194,6 @@ class Cache:
         key = BOT_REGISTER_PER_HOURS %hour
         return self.redis_handler.redis.get(key)
 
-    def set_register_per_hours(self, hour):
+    def set_register_per_hours(self, hour, expire=86400):
         key = BOT_REGISTER_PER_HOURS %hour
-        return self.redis_handler.redis.set(key, "1", ex=60*60, nx=True)
+        return self.redis_handler.redis.set(key, "1", ex=expire, nx=True)

+ 3 - 3
src/core/voip/bot.py

@@ -548,11 +548,11 @@ class BotAgent:
             self.register_per_hours()
             self.ep.libHandleEvents(100)
 
-    def create_account(self, recreate = False):
+    def create_account(self, recreate = False, timeout_sec=86400):
         start_time = time.time()
         try:
             _hour = datetime.now().strftime('%Y%m%d%H')
-            self.cache.set_register_per_hours(_hour)
+            self.cache.set_register_per_hours(_hour, expire=timeout_sec)
             if recreate:
                 for k, v in self.accounts.items():
                     try:
@@ -572,7 +572,7 @@ class BotAgent:
                 cred = pj.AuthCredInfo("digest", "*", f"{user_part}", 0, self.password)
                 acfg.sipConfig.authCreds.append(cred)
 
-                acfg.regConfig.timeoutSec = 86400  # 注册超时时间(秒)
+                acfg.regConfig.timeoutSec = timeout_sec  # 注册超时时间(秒)
                 acfg.regConfig.retryIntervalSec = 10  # 重试间隔时间(秒)
                 acfg.regConfig.firstRetryIntervalSec = 10  # 首次重试间隔时间(秒)