Jelajahi Sumber

callback event serial

DavidLiu 4 bulan lalu
induk
melakukan
18d6a293c6
1 mengubah file dengan 13 tambahan dan 9 penghapusan
  1. 13 9
      src/core/callcenter/callback.py

+ 13 - 9
src/core/callcenter/callback.py

@@ -27,15 +27,19 @@ class Callback(object):
 
     def start(self):
         while not self.is_stopping:
-            event, call_info, device_info = self.event_queue.get(timeout=1)
-            self.logger.info("callback::event=%s", (event.serialize('json') if event else "empty"))
-            call_type = CallType.get_by_code(call_info.call_type) if call_info else None
-            if call_type is None:
-                continue
-            if CallType.BOT_CALL == call_type:
-                self.choose_thread_pool_executor(event).submit(self.agent_event_service.bot_event_channel, event, call_info, device_info)
-            else:
-                self.choose_thread_pool_executor(event).submit(self.agent_event_service.agent_event_channel, event, call_info, device_info)
+            try:
+                event, call_info, device_info = self.event_queue.get(timeout=1)
+                self.logger.info("callback::event=%s", (event.serialize('json') if event else "empty"))
+                call_type = CallType.get_by_code(call_info.call_type) if call_info else None
+                if call_type is None:
+                    continue
+                if CallType.BOT_CALL == call_type:
+                    self.choose_thread_pool_executor(event).submit(self.agent_event_service.bot_event_channel, event, call_info, device_info)
+                else:
+                    self.choose_thread_pool_executor(event).submit(self.agent_event_service.agent_event_channel, event, call_info, device_info)
+            except:
+                pass
+
 
     def stop(self):
         self.is_stopping = True