Davidliu 3 miesięcy temu
rodzic
commit
84686a2a2b
1 zmienionych plików z 54 dodań i 53 usunięć
  1. 54 53
      src/core/voip/bot.py

+ 54 - 53
src/core/voip/bot.py

@@ -458,12 +458,12 @@ class ToTextBotAgent:
                             self.call_agent.message_queue.put(message)
                             break
                         else:
-                            self.call_agent.logger.info("响应中没有 'data' 字段")
+                            self.call_agent.logger.info(f"to_request::failed, sessionId={request.sessionId}, response_data:{response_data}")
                     else:
-                        self.call_agent.logger.info(f"请求失败,状态码: {response.status_code}, 响应内容: {response.text}")
+                        self.call_agent.logger.info(f"to_request::请求失败,sessionId:{request.sessionId}, 状态码: {response.status_code}, 响应内容: {response.text}")
                 except Exception as e:
                     traceback.print_exc()
-                    self.call_agent.logger.error(f"TaskId={request.taskId}, 请求发生异常 {e}, URL: {url}")
+                    self.call_agent.logger.error(f"to_request::exception, TaskId={request.taskId}, sessionId={request.sessionId}, 请求发生异常: {e}, URL: {url}")
                 finally:
                     try_count = try_count - 1
                     latency = (time.time() - once_start)
@@ -476,56 +476,57 @@ class ToTextBotAgent:
             latency = (time.time() - start_time)
             registry.BOT_REQUEST_COUNT.inc()
             registry.BOT_REQUEST_LATENCY.labels(request.taskId).observe(latency)
-            self.call_agent.logger.info(f"sessionId={ self.call_agent.session_id}, timeCost={latency}, chat::request:{request_data}, response:{response_data if response_data else None}")
-
-
-    def to_quest(self, request: BotChatRequest, try_count = 3):
-        start_time = time.time()
-        request_data = request.to_json_string()
-        response = None
-        try:
-            url = f"http://{SERVE_HOST}:40072/botservice"
-            # payload = request.to_json_string()
-            # self.call_agent.logger.info(f"请求数据:{request_data},url:{url}")
-            with requests.Session() as session:
-                message = None
-                # try:
-                session.headers.update({'Content-Type': 'application/json'})
-                while try_count > 0:
-                    once_start = time.time()
-                    try:
-                        response = session.post(url=url, json=request_data, timeout=3)
-                        # response = requests.post(url=url,  json=json.loads(request_data), headers=headers, timeout=10)  # 使用占位URL
-                        self.call_agent.logger.info("to_request come in , try_count=%s", try_count)
-                        if response.status_code == 200:
-                            response_data = response.json()
-                            if "data" in response_data and response_data["code"]==0:
-                                data = response_data["data"]
-                                message = ChatMessage.from_json(data)
-                                self.call_agent.message_queue.put(message)
-                                break
-                            else:
-                                self.call_agent.logger.info("响应中没有 'data' 字段")
-                        else:
-                            self.call_agent.logger.info(f"请求失败,状态码: {response.status_code}, 响应内容: {response.text}")
-                    except Exception as e:
-                        traceback.print_exc()
-                        self.call_agent.logger.error(f"TaskId={request.taskId}, 请求发生异常: {e}, URL: {url}")
-                    finally:
-                        try_count = try_count - 1
-                        latency = (time.time() - once_start)
-                        registry.BOT_REQUEST_ONCE_LATENCY.labels(request.taskId).observe(latency)
-
-                if not message:
-                    message = self.get_default_response()
-                    self.call_agent.message_queue.put(message)
-                # finally:
-                #     session.close()
-        finally:
-            latency = (time.time() - start_time)
-            registry.BOT_REQUEST_COUNT.inc()
-            registry.BOT_REQUEST_LATENCY.labels(request.taskId).observe(latency)
-            self.call_agent.logger.info(f"sessionId={ self.call_agent.session_id}, timeCost={latency}, chat::request:{request_data}, response:{response.text if response else None}")
+            self.call_agent.logger.info(f"to_request sessionId={self.call_agent.session_id}, timeCost={latency}, request:{request_data}, response:{response_data if response_data else None}")
+
+
+    # def to_quest(self, request: BotChatRequest, try_count = 3):
+    #     start_time = time.time()
+    #     request_data = request.to_json_string()
+    #     response = None
+    #     try:
+    #         url = f"http://{SERVE_HOST}:40072/botservice"
+    #         # payload = request.to_json_string()
+    #         # self.call_agent.logger.info(f"请求数据:{request_data},url:{url}")
+    #         with requests.Session() as session:
+    #             message = None
+    #             # try:
+    #             session.headers.update({'Content-Type': 'application/json'})
+    #             while try_count > 0:
+    #                 once_start = time.time()
+    #                 try:
+    #                     response = session.post(url=url, json=request_data, timeout=3)
+    #                     # response = requests.post(url=url,  json=json.loads(request_data), headers=headers, timeout=10)  # 使用占位URL
+    #                     # self.call_agent.logger.info("to_request come in , try_count=%s", try_count)
+    #                     if response.status_code == 200:
+    #                         response_data = response.json()
+    #                         if "data" in response_data and response_data["code"]==0:
+    #                             data = response_data["data"]
+    #                             message = ChatMessage.from_json(data)
+    #                             self.call_agent.message_queue.put(message)
+    #                             break
+    #                         else:
+    #                             self.call_agent.logger.info(f"to_request::sessionId:{request.sessionId}, 响应中没有 'data' 字段")
+    #                     else:
+    #                         self.call_agent.logger.info(f"to_request::请求失败,sessionId:{request.sessionId}, 状态码: {response.status_code}, 响应内容: {response.text}")
+    #                 except Exception as e:
+    #                     traceback.print_exc()
+    #                     self.call_agent.logger.error(f"to_request::TaskId={request.taskId}, sessionId={request.sessionId}, 请求发生异常: {e}, URL: {url}")
+    #                 finally:
+    #                     try_count = try_count - 1
+    #                     latency = (time.time() - once_start)
+    #                     registry.BOT_REQUEST_ONCE_LATENCY.labels(request.taskId).observe(latency)
+    #
+    #             self.call_agent.logger.info(f"to_request::sessionId:{request.sessionId}, message:{message.to_json_string() if message else None}")
+    #             if not message:
+    #                 message = self.get_default_response()
+    #                 self.call_agent.message_queue.put(message)
+    #             # finally:
+    #             #     session.close()
+    #     finally:
+    #         latency = (time.time() - start_time)
+    #         registry.BOT_REQUEST_COUNT.inc()
+    #         registry.BOT_REQUEST_LATENCY.labels(request.taskId).observe(latency)
+    #         self.call_agent.logger.info(f"to_request::sessionId={ self.call_agent.session_id}, timeCost={latency}, request:{request_data}, response:{response.text if response else None}")
 
     def get_default_response(self):
         response=   {