774056846 4 months ago
parent
commit
5c613cb443
2 changed files with 17 additions and 7 deletions
  1. 8 7
      src/core/callcenter/acd.py
  2. 9 0
      src/core/voip/bot.py

+ 8 - 7
src/core/callcenter/acd.py

@@ -23,9 +23,9 @@ class AcdService:
         self.agent_service = AgentOperService(client, logger)
         self.holdsQueue: Dict[str, Queue] = {}
         self.pool = ThreadPoolExecutor(max_workers=4)
-        # checkIdleScheduler = BackgroundScheduler()
-        # checkIdleScheduler.add_job(self.try_transfer_agent, 'interval', seconds=2, max_instances=1)
-        # checkIdleScheduler.start()
+        self.checkIdleScheduler = BackgroundScheduler()
+        self.checkIdleScheduler.add_job(self.try_transfer_agent, 'interval', seconds=2, max_instances=1)
+        self.checkIdleScheduler.start()
 
     def transfer_to_agent(self, call_id, device_id, service_id):
         call_info = Cache.get_call_info(call_id)
@@ -74,12 +74,13 @@ class AcdService:
                 continue
             agent_number = self.agent_service.assign(AgentActionRequest(saas_id=saasId, service_id=task_service_id))
             if not agent_number:
-                self.logger.info("AcdService tryTransferAgent agentNumber is Empty %s", call_id)
+                print("AcdService tryTransferAgent agentNumber is Empty %s"% call_id, flush=True)
                 tmp_arr.append(call_id)
                 continue
-            self.logger.info(
-                "AcdService tryTransferAgent agentNumber not Empty %s, serviceId:%s, called:%s, callId:%s",
-                agent_number, task_service_id, call_info.called, call_id)
+            print(
+                "AcdService tryTransferAgent agentNumber not Empty %s, serviceId:%s, called:%s, callId:%s"%(agent_number, task_service_id, call_info.called, call_id),
+                flush=True
+                )
             self.call_service.transfer(call_info, agent_number, task_service_id)
 
         for call_id in tmp_arr:

+ 9 - 0
src/core/voip/bot.py

@@ -472,6 +472,15 @@ class ToTextBotAgent:
             traceback.print_exc()  # 打印完整的错误信息
             return None
 
+class CustomLogWriter(pj.LogWriter):
+
+    def write(self, msg):
+        # 在这里自定义日志输出
+        print(f"Custom Log: {msg}")  # 输出到控制台
+        # 也可以将日志写入文件
+        with open("pjsua_logs.txt", "a") as f:
+            f.write(msg + "\n")
+
 @singleton_keys
 class BotAgent: