|
|
@@ -93,8 +93,6 @@ public class AiSipCallController extends AppBaseController {
|
|
|
@Autowired
|
|
|
private CrmCustomerMapper crmCustomerMapper;
|
|
|
|
|
|
- private final String AUDIO_BASE_URL = "http://129.28.164.235:8899";
|
|
|
-
|
|
|
/**
|
|
|
* 是否使用自有线路(迁移自 his_java sip.call.myGateway,原放在 AiSipCallUserServiceImpl)。
|
|
|
* <p>SaaS 老 ServiceImpl 已被精简没有兜底逻辑,故在 Controller 层注入并保持 his_java 行为一致。
|
|
|
@@ -102,21 +100,15 @@ public class AiSipCallController extends AppBaseController {
|
|
|
@Value("${sip.call.myGateway:false}")
|
|
|
private boolean isMyGateway;
|
|
|
|
|
|
- /**
|
|
|
- * 手动外呼网关前缀(迁移自 his_java sip.call.manualGatewayPrefix)
|
|
|
- */
|
|
|
+ /** 手动外呼网关前缀(迁移自 his_java sip.call.manualGatewayPrefix) */
|
|
|
@Value("${sip.call.manualGatewayPrefix:weizhi}")
|
|
|
private String manualGatewayPrefix;
|
|
|
|
|
|
- /**
|
|
|
- * 公共线路网关前缀(迁移自 his_java sip.call.publicGatewayPrefix)
|
|
|
- */
|
|
|
+ /** 公共线路网关前缀(迁移自 his_java sip.call.publicGatewayPrefix) */
|
|
|
@Value("${sip.call.publicGatewayPrefix:outbound}")
|
|
|
private String publicGatewayPrefix;
|
|
|
|
|
|
- /**
|
|
|
- * 加密手机号末尾随机串长度(与前端约定,与 his_java 的 RandomUtil.generateRandomCode 等价)
|
|
|
- */
|
|
|
+ /** 加密手机号末尾随机串长度(与前端约定,与 his_java 的 RandomUtil.generateRandomCode 等价) */
|
|
|
private static final int RANDOM_TAIL_LEN = 6;
|
|
|
|
|
|
private static final char[] RANDOM_CHARS =
|
|
|
@@ -124,11 +116,11 @@ public class AiSipCallController extends AppBaseController {
|
|
|
|
|
|
private static final SecureRandom RANDOM = new SecureRandom();
|
|
|
|
|
|
- /**
|
|
|
- * XOR加密公钥(与 his_java 的 PhoneUtil.PUBLIC_KEY_STR 保持一致,避免污染 SaaS 原有 PhoneUtil)
|
|
|
- */
|
|
|
+ /** XOR加密公钥(与 his_java 的 PhoneUtil.PUBLIC_KEY_STR 保持一致,避免污染 SaaS 原有 PhoneUtil) */
|
|
|
private static final String XOR_KEY = "ylrz112233";
|
|
|
|
|
|
+ private static final String SPLICE_ADD = "http://129.28.164.235:8899/recordings/files?filename=";
|
|
|
+
|
|
|
/**
|
|
|
* 查询当前登录销售绑定的SIP分机账号
|
|
|
* <p>前端 softPhone.vue 启动时调用,用于初始化JsSIP UA配置(user/domain/extPass)。
|
|
|
@@ -308,13 +300,13 @@ public class AiSipCallController extends AppBaseController {
|
|
|
try {
|
|
|
String decrypted = PhoneUtil.decryptPhone(c.getMobile());
|
|
|
c.setMobile(decrypted.replaceAll("(\\d{3})\\d*(\\d{4})", "$1****$2"));
|
|
|
- if (Integer.valueOf(1).equals(c.getCanDecrypt())) {
|
|
|
- c.setDecryptedMobile(decrypted);
|
|
|
- }
|
|
|
} catch (Exception e) {
|
|
|
log.warn("[aiSipCall] 解密手机号失败, customerId={}", c.getCustomerId());
|
|
|
}
|
|
|
}
|
|
|
+ if(StringUtils.isNotBlank(c.getEffectiveRecordPath())){
|
|
|
+ c.setEffectiveRecordPath(SPLICE_ADD + c.getEffectiveRecordPath());
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
return getDataTable(list);
|
|
|
@@ -334,12 +326,6 @@ public class AiSipCallController extends AppBaseController {
|
|
|
query.setCustomerId(customerId);
|
|
|
PageHelper.startPage(pageNum, pageSize);
|
|
|
List<AiSipCallOutboundCdr> list = aiSipCallOutboundCdrService.selectAiSipCallOutboundCdrList(query);
|
|
|
- //拼接音频文件
|
|
|
- list.forEach(data -> {
|
|
|
- if (StringUtils.isNotBlank(data.getWavfile())) {
|
|
|
- data.setWavfile(AUDIO_BASE_URL + data.getWavfile());
|
|
|
- }
|
|
|
- });
|
|
|
return getDataTable(list);
|
|
|
}
|
|
|
|