DavidLiu 3 months ago
parent
commit
b2b4373201
2 changed files with 9 additions and 8 deletions
  1. 6 5
      src/core/callcenter/call.py
  2. 3 3
      src/core/callcenter/esl/client.py

+ 6 - 5
src/core/callcenter/call.py

@@ -71,11 +71,12 @@ class CallService:
 
     def hold(self, call_info: CallInfo, device_id):
         devices = call_info.device_list
-        try:
-            devices.remove(device_id)
-        except:
-            pass
-        custom_device_id = devices[0]
+        # try:
+        #     devices.remove(device_id)
+        # except:
+        #     pass
+        # custom_device_id = devices[0]
+        custom_device_id = device_id
         self.logger.info('hold, custom_device_id=%s'%custom_device_id)
         self.client.bridge_break(call_info.call_id, custom_device_id)
         self.cache.set_need_play_hold_music(call_info.call_id)

+ 3 - 3
src/core/callcenter/esl/client.py

@@ -528,7 +528,7 @@ class OutboundClient:
 
                     kwargs = json.loads(info.serialize('json'))
                     kwargs['variable_sip_h_P-LIBRA-CallId'] = call_id
-                    kwargs['variable_sip_h_P-LIBRA-DeviceId'] = new_device_id
+                    kwargs['variable_sip_h_P-LIBRA-DeviceId'] = device_id
 
                     _bucket_call_type = 2
                     destination = None
@@ -542,7 +542,7 @@ class OutboundClient:
                         _bucket_call_type = 0
                         con.execute("answer", "", device_id)
                         self.build_call_info(call_id, device_id, new_device_id, destination=None, bucket_type=_bucket_call_type, **kwargs)
-                        self.server.agent.acd_service.transfer_to_agent(call_id, new_device_id)
+                        self.server.agent.acd_service.transfer_to_agent(call_id, device_id)
                     elif bucket and bucket.name == 'AI':
                         #转到ai机器人
                         _bucket_call_type = 1
@@ -556,7 +556,7 @@ class OutboundClient:
                         # 传统服务
                         con.execute("answer", "", device_id)
                         self.build_call_info(call_id, device_id, new_device_id, destination=None, bucket_type=_bucket_call_type,  **kwargs)
-                        self.server.agent.acd_service.transfer_to_agent(call_id, new_device_id)
+                        self.server.agent.acd_service.transfer_to_agent(call_id, device_id)
 
                     registry.CALL_INCOMING_REQUESTS.labels(f"{_bucket_call_type}").inc()
                     self.server.dataHandleServer.create_record(call_id, caller_number, _bucket_call_type, service_category=service_category, destination=destination)