|
@@ -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
|