|
|
@@ -4,25 +4,24 @@ import com.alibaba.fastjson.JSONArray;
|
|
|
import com.alibaba.fastjson.JSONObject;
|
|
|
import com.ruoyi.aicall.domain.CcCallPhone;
|
|
|
import com.ruoyi.aicall.service.ICcCallPhoneService;
|
|
|
-import com.ruoyi.aicall.service.ICcInboundLlmAccountService;
|
|
|
import com.ruoyi.cc.domain.CcInboundCdr;
|
|
|
import com.ruoyi.cc.domain.CcOutboundCdr;
|
|
|
-import com.ruoyi.cc.domain.CcParams;
|
|
|
import com.ruoyi.cc.model.FsConfProfile;
|
|
|
import com.ruoyi.cc.model.FsMod;
|
|
|
import com.ruoyi.cc.model.ProfileRegExtnumModel;
|
|
|
import com.ruoyi.cc.model.ProfileStatusModel;
|
|
|
import com.ruoyi.cc.service.*;
|
|
|
+import com.ruoyi.cc.utils.FsEslNameUtils;
|
|
|
import com.ruoyi.common.core.controller.BaseController;
|
|
|
import com.ruoyi.common.core.domain.AjaxResult;
|
|
|
import com.ruoyi.common.core.page.TableDataInfo;
|
|
|
import com.ruoyi.common.utils.CommonUtils;
|
|
|
import com.ruoyi.common.utils.DateUtils;
|
|
|
import com.ruoyi.common.utils.StringUtils;
|
|
|
-import com.ruoyi.framework.web.domain.server.Sys;
|
|
|
import link.thingscloud.freeswitch.esl.EslConnectionUtil;
|
|
|
import link.thingscloud.freeswitch.esl.transport.message.EslMessage;
|
|
|
import org.apache.shiro.authz.annotation.RequiresPermissions;
|
|
|
+import org.apache.shiro.authz.annotation.Logical;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.stereotype.Controller;
|
|
|
import org.springframework.ui.ModelMap;
|
|
|
@@ -87,6 +86,7 @@ public class FsConfController extends BaseController {
|
|
|
* @param params
|
|
|
* @return
|
|
|
*/
|
|
|
+ @RequiresPermissions("cc:switchconf:view")
|
|
|
@PostMapping(value = "/setSwitchConf")
|
|
|
@ResponseBody
|
|
|
public AjaxResult setSwitchConf(@RequestBody JSONArray params) {
|
|
|
@@ -98,10 +98,14 @@ public class FsConfController extends BaseController {
|
|
|
* 重启fs服务
|
|
|
* @return
|
|
|
*/
|
|
|
+ @RequiresPermissions("cc:switchconf:view")
|
|
|
@GetMapping(value = "/restartFs")
|
|
|
@ResponseBody
|
|
|
public AjaxResult restartFs() {
|
|
|
- fsConfService.restartFs();
|
|
|
+ String err = fsConfService.restartFs();
|
|
|
+ if (StringUtils.isNotEmpty(err)) {
|
|
|
+ return AjaxResult.error(err);
|
|
|
+ }
|
|
|
return AjaxResult.success("重启成功!");
|
|
|
}
|
|
|
|
|
|
@@ -109,6 +113,7 @@ public class FsConfController extends BaseController {
|
|
|
* 获取系统全局配置
|
|
|
* @return
|
|
|
*/
|
|
|
+ @RequiresPermissions("cc:switchconf:view")
|
|
|
@GetMapping(value = "/getSwitchConf")
|
|
|
@ResponseBody
|
|
|
public AjaxResult getSwitchConf() {
|
|
|
@@ -155,6 +160,7 @@ public class FsConfController extends BaseController {
|
|
|
* @param params
|
|
|
* @return
|
|
|
*/
|
|
|
+ @RequiresPermissions("cc:varsconf:view")
|
|
|
@PostMapping(value = "/setVarsConf")
|
|
|
@ResponseBody
|
|
|
public AjaxResult setVarsConf(@RequestBody JSONArray params) {
|
|
|
@@ -167,6 +173,7 @@ public class FsConfController extends BaseController {
|
|
|
* 获取全局编码配置
|
|
|
* @return
|
|
|
*/
|
|
|
+ @RequiresPermissions("cc:varsconf:view")
|
|
|
@GetMapping(value = "/getVarsConf")
|
|
|
@ResponseBody
|
|
|
public AjaxResult getVarsConf() {
|
|
|
@@ -260,6 +267,7 @@ public class FsConfController extends BaseController {
|
|
|
* 获取阿里云tts配置
|
|
|
* @return
|
|
|
*/
|
|
|
+ @RequiresPermissions("cc:alittsconf:view")
|
|
|
@GetMapping(value = "/getAliTtsConf")
|
|
|
@ResponseBody
|
|
|
public AjaxResult getAliTtsConf() {
|
|
|
@@ -271,6 +279,7 @@ public class FsConfController extends BaseController {
|
|
|
* 获取讯飞tts配置
|
|
|
* @return
|
|
|
*/
|
|
|
+ @RequiresPermissions("cc:xfttsconf:view")
|
|
|
@GetMapping(value = "/getXfTtsConf")
|
|
|
@ResponseBody
|
|
|
public AjaxResult getXfTtsConf() {
|
|
|
@@ -282,6 +291,7 @@ public class FsConfController extends BaseController {
|
|
|
* 获取腾讯云tts配置
|
|
|
* @return
|
|
|
*/
|
|
|
+ @RequiresPermissions("cc:txtts1conf:view")
|
|
|
@GetMapping(value = "/getTxTts1Conf")
|
|
|
@ResponseBody
|
|
|
public AjaxResult getTxTts1Conf() {
|
|
|
@@ -293,6 +303,7 @@ public class FsConfController extends BaseController {
|
|
|
* 获取ViiTorTTS配置
|
|
|
* @return
|
|
|
*/
|
|
|
+ @RequiresPermissions("cc:vtttsconf:view")
|
|
|
@GetMapping(value = "/getVtTtsConf")
|
|
|
@ResponseBody
|
|
|
public AjaxResult getVtTtsConf() {
|
|
|
@@ -314,6 +325,7 @@ public class FsConfController extends BaseController {
|
|
|
* 获取豆包tts配置
|
|
|
* @return
|
|
|
*/
|
|
|
+ @RequiresPermissions("cc:doubaottsconf:view")
|
|
|
@GetMapping(value = "/getDoubaoTtsConf")
|
|
|
@ResponseBody
|
|
|
public AjaxResult getDoubaoTtsConf() {
|
|
|
@@ -326,6 +338,7 @@ public class FsConfController extends BaseController {
|
|
|
* @param params
|
|
|
* @return
|
|
|
*/
|
|
|
+ @RequiresPermissions("cc:doubaottsconf:view")
|
|
|
@PostMapping(value = "/setDoubaoTtsConf")
|
|
|
@ResponseBody
|
|
|
public AjaxResult setDoubaoTtsConf(@RequestBody JSONArray params) {
|
|
|
@@ -381,6 +394,7 @@ public class FsConfController extends BaseController {
|
|
|
* 获取ASR配置
|
|
|
* @return
|
|
|
*/
|
|
|
+ @RequiresPermissions("cc:aliasrconf:view")
|
|
|
@GetMapping(value = "/getAliAsrConf")
|
|
|
@ResponseBody
|
|
|
public AjaxResult getAliAsrConf() {
|
|
|
@@ -392,6 +406,7 @@ public class FsConfController extends BaseController {
|
|
|
* 获取新 ASR 模块配置
|
|
|
* @return
|
|
|
*/
|
|
|
+ @RequiresPermissions("cc:aliasrbridgeconf:view")
|
|
|
@GetMapping(value = "/getAliBridgeAsrConf")
|
|
|
@ResponseBody
|
|
|
public AjaxResult getAliBridgeAsrConf() {
|
|
|
@@ -403,6 +418,7 @@ public class FsConfController extends BaseController {
|
|
|
* 获取腾讯 ASR 模块配置
|
|
|
* @return
|
|
|
*/
|
|
|
+ @RequiresPermissions("cc:txasrbridgeconf:view")
|
|
|
@GetMapping(value = "/getTxBridgeAsrConf")
|
|
|
@ResponseBody
|
|
|
public AjaxResult getTxBridgeAsrConf() {
|
|
|
@@ -414,6 +430,7 @@ public class FsConfController extends BaseController {
|
|
|
* 获取腾讯 ASR1 模块配置
|
|
|
* @return
|
|
|
*/
|
|
|
+ @RequiresPermissions("cc:txasr1bridgeconf:view")
|
|
|
@GetMapping(value = "/getTxBridgeAsr1Conf")
|
|
|
@ResponseBody
|
|
|
public AjaxResult getTxBridgeAsr1Conf() {
|
|
|
@@ -425,6 +442,7 @@ public class FsConfController extends BaseController {
|
|
|
* 获取FunASR配置
|
|
|
* @return
|
|
|
*/
|
|
|
+ @RequiresPermissions("cc:funasrconf:view")
|
|
|
@GetMapping(value = "/getFunAsrConf")
|
|
|
@ResponseBody
|
|
|
public AjaxResult getFunAsrConf() {
|
|
|
@@ -434,16 +452,19 @@ public class FsConfController extends BaseController {
|
|
|
|
|
|
|
|
|
|
|
|
+ @RequiresPermissions("cc:aliasrconf:view")
|
|
|
@GetMapping(value = "/chinatelecomasrconf")
|
|
|
public String chinatelecomAsrConf() {
|
|
|
return "cc/chinatelecomasrconf/chinatelecomasrconf";
|
|
|
}
|
|
|
|
|
|
+ @RequiresPermissions("cc:alittsconf:view")
|
|
|
@GetMapping(value = "/chinatelecomttsconf")
|
|
|
public String chinatelecomTtsConf() {
|
|
|
return "cc/chinatelecomttsconf/chinatelecomttsconf";
|
|
|
}
|
|
|
|
|
|
+ @RequiresPermissions("cc:aliasrconf:view")
|
|
|
@GetMapping(value = "/getChinatelecomAsrConf")
|
|
|
@ResponseBody
|
|
|
public AjaxResult getChinatelecomAsrConf() {
|
|
|
@@ -451,6 +472,7 @@ public class FsConfController extends BaseController {
|
|
|
return getConfigFileJsonData(asrFileName, 5);
|
|
|
}
|
|
|
|
|
|
+ @RequiresPermissions("cc:alittsconf:view")
|
|
|
@GetMapping(value = "/getChinatelecomTtsConf")
|
|
|
@ResponseBody
|
|
|
public AjaxResult getChinatelecomTtsConf() {
|
|
|
@@ -462,6 +484,7 @@ public class FsConfController extends BaseController {
|
|
|
* 获取ASR配置
|
|
|
* @return
|
|
|
*/
|
|
|
+ @RequiresPermissions("cc:xunfeiasrconf:view")
|
|
|
@GetMapping(value = "/getXunfeiAsrConf")
|
|
|
@ResponseBody
|
|
|
public AjaxResult getXunfeiAsrConf() {
|
|
|
@@ -609,6 +632,7 @@ public class FsConfController extends BaseController {
|
|
|
* @param params
|
|
|
* @return
|
|
|
*/
|
|
|
+ @RequiresPermissions("cc:aliasrconf:view")
|
|
|
@PostMapping(value = "/setAliAsrConf")
|
|
|
@ResponseBody
|
|
|
public AjaxResult setAliAsrConf(@RequestBody JSONArray params) {
|
|
|
@@ -622,6 +646,7 @@ public class FsConfController extends BaseController {
|
|
|
* @param params
|
|
|
* @return
|
|
|
*/
|
|
|
+ @RequiresPermissions("cc:aliasrbridgeconf:view")
|
|
|
@PostMapping(value = "/setAliBridgeAsrConf")
|
|
|
@ResponseBody
|
|
|
public AjaxResult setAliBridgeAsrConf(@RequestBody JSONArray params) {
|
|
|
@@ -635,6 +660,7 @@ public class FsConfController extends BaseController {
|
|
|
* @param params
|
|
|
* @return
|
|
|
*/
|
|
|
+ @RequiresPermissions("cc:txasrbridgeconf:view")
|
|
|
@PostMapping(value = "/setTxBridgeAsrConf")
|
|
|
@ResponseBody
|
|
|
public AjaxResult setTxBridgeAsrConf(@RequestBody JSONArray params) {
|
|
|
@@ -648,6 +674,7 @@ public class FsConfController extends BaseController {
|
|
|
* @param params
|
|
|
* @return
|
|
|
*/
|
|
|
+ @RequiresPermissions("cc:txasr1bridgeconf:view")
|
|
|
@PostMapping(value = "/setTxBridgeAsr1Conf")
|
|
|
@ResponseBody
|
|
|
public AjaxResult setTxBridgeAsr1Conf(@RequestBody JSONArray params) {
|
|
|
@@ -661,6 +688,7 @@ public class FsConfController extends BaseController {
|
|
|
* @param params
|
|
|
* @return
|
|
|
*/
|
|
|
+ @RequiresPermissions("cc:aliasrconf:view")
|
|
|
@PostMapping(value = "/setChinatelecomAsrConf")
|
|
|
@ResponseBody
|
|
|
public AjaxResult setChinatelecomAsrConf(@RequestBody JSONArray params) {
|
|
|
@@ -674,6 +702,7 @@ public class FsConfController extends BaseController {
|
|
|
* @param params
|
|
|
* @return
|
|
|
*/
|
|
|
+ @RequiresPermissions("cc:alittsconf:view")
|
|
|
@PostMapping(value = "/setAliTtsConf")
|
|
|
@ResponseBody
|
|
|
public AjaxResult setAliTtsConf(@RequestBody JSONArray params) {
|
|
|
@@ -689,6 +718,7 @@ public class FsConfController extends BaseController {
|
|
|
* @param params
|
|
|
* @return
|
|
|
*/
|
|
|
+ @RequiresPermissions("cc:xfttsconf:view")
|
|
|
@PostMapping(value = "/setXfTtsConf")
|
|
|
@ResponseBody
|
|
|
public AjaxResult setXfTtsConf(@RequestBody JSONArray params) {
|
|
|
@@ -703,6 +733,7 @@ public class FsConfController extends BaseController {
|
|
|
* @param params
|
|
|
* @return
|
|
|
*/
|
|
|
+ @RequiresPermissions("cc:txtts1conf:view")
|
|
|
@PostMapping(value = "/setTxTts1Conf")
|
|
|
@ResponseBody
|
|
|
public AjaxResult setTxTts1Conf(@RequestBody JSONArray params) {
|
|
|
@@ -717,6 +748,7 @@ public class FsConfController extends BaseController {
|
|
|
* @param params
|
|
|
* @return
|
|
|
*/
|
|
|
+ @RequiresPermissions("cc:vtttsconf:view")
|
|
|
@PostMapping(value = "/setVtTtsConf")
|
|
|
@ResponseBody
|
|
|
public AjaxResult setVtTtsConf(@RequestBody JSONArray params) {
|
|
|
@@ -731,6 +763,7 @@ public class FsConfController extends BaseController {
|
|
|
* @param params
|
|
|
* @return
|
|
|
*/
|
|
|
+ @RequiresPermissions("cc:alittsconf:view")
|
|
|
@PostMapping(value = "/setChinatelecomTtsConf")
|
|
|
@ResponseBody
|
|
|
public AjaxResult setChinatelecomTtsConf(@RequestBody JSONArray params) {
|
|
|
@@ -745,6 +778,7 @@ public class FsConfController extends BaseController {
|
|
|
* @param params
|
|
|
* @return
|
|
|
*/
|
|
|
+ @RequiresPermissions("cc:xunfeiasrconf:view")
|
|
|
@PostMapping(value = "/setXunfeiAsrConf")
|
|
|
@ResponseBody
|
|
|
public AjaxResult setXunfeiAsrConf(@RequestBody JSONArray params) {
|
|
|
@@ -758,6 +792,7 @@ public class FsConfController extends BaseController {
|
|
|
* @param params
|
|
|
* @return
|
|
|
*/
|
|
|
+ @RequiresPermissions("cc:funasrconf:view")
|
|
|
@PostMapping(value = "/setFunAsrConf")
|
|
|
@ResponseBody
|
|
|
public AjaxResult setFunAsrConf(@RequestBody JSONArray params) {
|
|
|
@@ -787,6 +822,7 @@ public class FsConfController extends BaseController {
|
|
|
* @param asrengine
|
|
|
* @return
|
|
|
*/
|
|
|
+ @RequiresPermissions("cc:asrengine:view")
|
|
|
@GetMapping(value = "/setAsrengine")
|
|
|
@ResponseBody
|
|
|
public AjaxResult setAsrengine(@RequestParam String asrengine) {
|
|
|
@@ -825,6 +861,7 @@ public class FsConfController extends BaseController {
|
|
|
* 获取证书配置
|
|
|
* @return
|
|
|
*/
|
|
|
+ @RequiresPermissions("cc:certwsspen:view")
|
|
|
@GetMapping(value = "/getCertWssPen")
|
|
|
@ResponseBody
|
|
|
public AjaxResult getCertWssPen() {
|
|
|
@@ -838,6 +875,7 @@ public class FsConfController extends BaseController {
|
|
|
* @param params
|
|
|
* @return
|
|
|
*/
|
|
|
+ @RequiresPermissions("cc:certwsspen:view")
|
|
|
@PostMapping(value = "/setCertWssPen")
|
|
|
@ResponseBody
|
|
|
public AjaxResult setCertWssPen(@RequestBody JSONObject params) {
|
|
|
@@ -855,16 +893,22 @@ public class FsConfController extends BaseController {
|
|
|
@RequiresPermissions("cc:licenseconf:view")
|
|
|
@GetMapping(value = "/licenseconf")
|
|
|
public String licenseconf() {
|
|
|
+ if (!getSysUser().isAdmin()) {
|
|
|
+ return "error/unauth";
|
|
|
+ }
|
|
|
return "cc/licenseconf/licenseconf";
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
- * 获取授权配置
|
|
|
+ * 获取授权配置(仅超级管理员)
|
|
|
* @return
|
|
|
*/
|
|
|
@GetMapping(value = "/getLicenseConf")
|
|
|
@ResponseBody
|
|
|
public AjaxResult getLicenseConf() {
|
|
|
+ if (!getSysUser().isAdmin()) {
|
|
|
+ return AjaxResult.error("权限不足");
|
|
|
+ }
|
|
|
JSONObject result = new JSONObject();
|
|
|
result.put("fingerprintValue", fsConfService.getFingerprintValue());
|
|
|
result.put("licenseValue", fsConfService.getLicenseValue());
|
|
|
@@ -873,13 +917,16 @@ public class FsConfController extends BaseController {
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
- * 保存授权配置
|
|
|
+ * 保存授权配置(仅超级管理员)
|
|
|
* @param params
|
|
|
* @return
|
|
|
*/
|
|
|
@PostMapping(value = "/setLicenseConf")
|
|
|
@ResponseBody
|
|
|
public AjaxResult setLicenseConf(@RequestBody JSONObject params) {
|
|
|
+ if (!getSysUser().isAdmin()) {
|
|
|
+ return AjaxResult.error("权限不足");
|
|
|
+ }
|
|
|
fsConfService.setLicenseConf(params.getString("licenseValue"));
|
|
|
return AjaxResult.success("设置成功!");
|
|
|
}
|
|
|
@@ -904,6 +951,7 @@ public class FsConfController extends BaseController {
|
|
|
* 获取日志
|
|
|
* @return
|
|
|
*/
|
|
|
+ @RequiresPermissions("cc:catlogs:view")
|
|
|
@GetMapping(value = "/getLogs")
|
|
|
@ResponseBody
|
|
|
public AjaxResult getLogs(@RequestParam String uuid) {
|
|
|
@@ -911,6 +959,9 @@ public class FsConfController extends BaseController {
|
|
|
return AjaxResult.error("请输入正确的uuid");
|
|
|
}
|
|
|
uuid = uuid.trim();
|
|
|
+ if (!FsEslNameUtils.isSafeLogQueryId(uuid)) {
|
|
|
+ return AjaxResult.error("请输入正确的uuid");
|
|
|
+ }
|
|
|
JSONObject result = new JSONObject();
|
|
|
// result.put("fsLogs", "这是freeswitch日志:\r\n19:21:38.255 [schedule-pool-3] INFO c.r.f.s.w.s.OnlineWebSessionManager - [validateSessions,100] - invalidation sessions...\r\n19:21:38.281 [schedule-pool-3] DEBUG c.r.s.m.S.selectOnlineByExpired - [debug,135] - ==> Preparing: select sessionId, login_name, dept_name, ipaddr, login_location, browser, os, status, start_timestamp, last_access_time, expire_time from sys_user_online o WHERE o.last_access_time <= ? ORDER BY o.last_access_time ASC\r\n19:21:38.283 [schedule-pool-3] DEBUG c.r.s.m.S.selectOnlineByExpired - [debug,135] - ==> Parameters: 2024-12-22 18:51:38(String)\r\n19:21:38.312 [schedule-pool-3] DEBUG c.r.s.m.S.selectOnlineByExpired - [debug,135] - <== Total: 0\r\n19:21:38.313 [schedule-pool-3] INFO c.r.f.s.w.s.OnlineWebSessionManager - [validateSessions,165] - Finished invalidation session. No sessions were stopped.\r\n");
|
|
|
// result.put("ccLogs", "这是callcenter日志:\r\n19:21:38.255 [schedule-pool-3] INFO c.r.f.s.w.s.OnlineWebSessionManager - [validateSessions,100] - invalidation sessions...\r\n19:21:38.281 [schedule-pool-3] DEBUG c.r.s.m.S.selectOnlineByExpired - [debug,135] - ==> Preparing: select sessionId, login_name, dept_name, ipaddr, login_location, browser, os, status, start_timestamp, last_access_time, expire_time from sys_user_online o WHERE o.last_access_time <= ? ORDER BY o.last_access_time ASC\r\n19:21:38.283 [schedule-pool-3] DEBUG c.r.s.m.S.selectOnlineByExpired - [debug,135] - ==> Parameters: 2024-12-22 18:51:38(String)\r\n19:21:38.312 [schedule-pool-3] DEBUG c.r.s.m.S.selectOnlineByExpired - [debug,135] - <== Total: 0\r\n19:21:38.313 [schedule-pool-3] INFO c.r.f.s.w.s.OnlineWebSessionManager - [validateSessions,165] - Finished invalidation session. No sessions were stopped.\r\n");
|
|
|
@@ -957,6 +1008,7 @@ public class FsConfController extends BaseController {
|
|
|
* 获取日志
|
|
|
* @return
|
|
|
*/
|
|
|
+ @RequiresPermissions("cc:catlogs:view")
|
|
|
@GetMapping(value = "/downloadLogs")
|
|
|
@ResponseBody
|
|
|
public void downloadLogs(@RequestParam String uuid, HttpServletResponse response) {
|
|
|
@@ -971,7 +1023,15 @@ public class FsConfController extends BaseController {
|
|
|
}
|
|
|
|
|
|
uuid = uuid.trim();
|
|
|
-
|
|
|
+ if (!FsEslNameUtils.isSafeLogQueryId(uuid)) {
|
|
|
+ try {
|
|
|
+ response.setContentType("application/json;charset=UTF-8");
|
|
|
+ response.getWriter().write("{\"code\":500,\"msg\":\"请输入正确的uuid\"}");
|
|
|
+ } catch (IOException e) {
|
|
|
+ logger.error("写入错误响应失败", e);
|
|
|
+ }
|
|
|
+ return;
|
|
|
+ }
|
|
|
// 获取日志内容
|
|
|
String fsLogFiles = ccParamsService.getParamValueByCode("fs_log_file_path", "");
|
|
|
String fsLogs = fsConfService.getLogs(uuid, fsLogFiles, "cc");
|
|
|
@@ -1091,6 +1151,10 @@ public class FsConfController extends BaseController {
|
|
|
return getDataTable(list);
|
|
|
}
|
|
|
|
|
|
+ /**
|
|
|
+ * 保存 profile 配置
|
|
|
+ */
|
|
|
+ @RequiresPermissions(value = {"cc:profileconf:add", "cc:profileconf:edit"}, logical = Logical.OR)
|
|
|
@PostMapping(value = "/setProfileConf")
|
|
|
@ResponseBody
|
|
|
public AjaxResult setProfileConf(@RequestBody JSONArray params) {
|
|
|
@@ -1118,6 +1182,12 @@ public class FsConfController extends BaseController {
|
|
|
logger.info("profileName:" + profileName);
|
|
|
logger.info("profileType:" + profileType);
|
|
|
logger.info("operaType:" + operaType);
|
|
|
+ if (!FsEslNameUtils.isSafeName(profileName)) {
|
|
|
+ return AjaxResult.error("profileName参数不合法");
|
|
|
+ }
|
|
|
+ if (StringUtils.isNotEmpty(profileType) && !FsEslNameUtils.isSafeName(profileType)) {
|
|
|
+ return AjaxResult.error("profileType参数不合法");
|
|
|
+ }
|
|
|
String saveSuccess = fsConfService.setProfileConf(profileName, profileType, xmlParams);
|
|
|
if(!StringUtils.isEmpty(saveSuccess)){
|
|
|
return AjaxResult.error(saveSuccess);
|
|
|
@@ -1138,6 +1208,7 @@ public class FsConfController extends BaseController {
|
|
|
return AjaxResult.success("设置成功!");
|
|
|
}
|
|
|
|
|
|
+ @RequiresPermissions(value = {"cc:profileconf:view", "cc:profileconf:add", "cc:profileconf:edit"}, logical = Logical.OR)
|
|
|
@GetMapping(value = "/getProfileConf")
|
|
|
@ResponseBody
|
|
|
public AjaxResult getProfileConf(@RequestParam(required = false) String profileName, @RequestParam(required = false) String profileType) {
|
|
|
@@ -1167,9 +1238,13 @@ public class FsConfController extends BaseController {
|
|
|
return AjaxResult.success("success", result);
|
|
|
}
|
|
|
|
|
|
+ @RequiresPermissions("cc:profileconf:status")
|
|
|
@GetMapping(value = "/getProfileStatus")
|
|
|
@ResponseBody
|
|
|
public AjaxResult getProfileStatus(@RequestParam String profileName) {
|
|
|
+ if (!FsEslNameUtils.isSafeName(profileName)) {
|
|
|
+ return AjaxResult.error("profileName参数不合法");
|
|
|
+ }
|
|
|
JSONObject result = new JSONObject();
|
|
|
EslMessage eslMessage = EslConnectionUtil.sendSyncApiCommand("sofia", "xmlstatus");
|
|
|
if (null != eslMessage) {
|
|
|
@@ -1233,9 +1308,13 @@ public class FsConfController extends BaseController {
|
|
|
return list;
|
|
|
}
|
|
|
|
|
|
+ @RequiresPermissions("cc:profileconf:start")
|
|
|
@GetMapping(value = "/startProfile")
|
|
|
@ResponseBody
|
|
|
public AjaxResult startProfile(@RequestParam String profileName) {
|
|
|
+ if (!FsEslNameUtils.isSafeName(profileName)) {
|
|
|
+ return AjaxResult.error("profileName参数不合法");
|
|
|
+ }
|
|
|
JSONObject result = new JSONObject();
|
|
|
EslMessage eslMessage = EslConnectionUtil.sendSyncApiCommand("sofia", "profile " + profileName + " start");
|
|
|
if (null != eslMessage) {
|
|
|
@@ -1246,9 +1325,13 @@ public class FsConfController extends BaseController {
|
|
|
return AjaxResult.success("success", result);
|
|
|
}
|
|
|
|
|
|
+ @RequiresPermissions("cc:profileconf:stop")
|
|
|
@GetMapping(value = "/stopProfile")
|
|
|
@ResponseBody
|
|
|
public AjaxResult stopProfile(@RequestParam String profileName) {
|
|
|
+ if (!FsEslNameUtils.isSafeName(profileName)) {
|
|
|
+ return AjaxResult.error("profileName参数不合法");
|
|
|
+ }
|
|
|
JSONObject result = new JSONObject();
|
|
|
EslMessage eslMessage = EslConnectionUtil.sendSyncApiCommand("sofia", "profile " + profileName + " stop");
|
|
|
if (null != eslMessage) {
|
|
|
@@ -1259,9 +1342,13 @@ public class FsConfController extends BaseController {
|
|
|
return AjaxResult.success("success", result);
|
|
|
}
|
|
|
|
|
|
+ @RequiresPermissions("cc:profileconf:restart")
|
|
|
@GetMapping(value = "/restartProfile")
|
|
|
@ResponseBody
|
|
|
public AjaxResult restartProfile(@RequestParam String profileName) {
|
|
|
+ if (!FsEslNameUtils.isSafeName(profileName)) {
|
|
|
+ return AjaxResult.error("profileName参数不合法");
|
|
|
+ }
|
|
|
JSONObject result = new JSONObject();
|
|
|
EslMessage eslMessage = EslConnectionUtil.sendSyncApiCommand("sofia", "profile " + profileName + " restart");
|
|
|
if (null != eslMessage) {
|
|
|
@@ -1273,9 +1360,13 @@ public class FsConfController extends BaseController {
|
|
|
}
|
|
|
|
|
|
|
|
|
+ @RequiresPermissions("cc:profileconf:status")
|
|
|
@GetMapping(value = "/getExtnumList")
|
|
|
@ResponseBody
|
|
|
public AjaxResult getExtnumList(@RequestParam String profileName) {
|
|
|
+ if (!FsEslNameUtils.isSafeName(profileName)) {
|
|
|
+ return AjaxResult.error("profileName参数不合法");
|
|
|
+ }
|
|
|
JSONObject result = new JSONObject();
|
|
|
EslMessage eslMessage = EslConnectionUtil.sendSyncApiCommand("sofia", "xmlstatus profile " + profileName + " reg");
|
|
|
if (null != eslMessage) {
|
|
|
@@ -1343,6 +1434,7 @@ public class FsConfController extends BaseController {
|
|
|
* ASR(亚马逊)参数配置
|
|
|
* @return
|
|
|
*/
|
|
|
+ @RequiresPermissions("cc:awsasrconf:view")
|
|
|
@GetMapping(value = "/awsasrconf")
|
|
|
public String awsAsrConf() {
|
|
|
return "cc/awsasrconf/awsasrconf";
|
|
|
@@ -1352,6 +1444,7 @@ public class FsConfController extends BaseController {
|
|
|
* 获取亚马逊ASR配置
|
|
|
* @return
|
|
|
*/
|
|
|
+ @RequiresPermissions("cc:awsasrconf:view")
|
|
|
@GetMapping(value = "/getAwsAsrConf")
|
|
|
@ResponseBody
|
|
|
public AjaxResult getAwsAsrConf() {
|
|
|
@@ -1364,6 +1457,7 @@ public class FsConfController extends BaseController {
|
|
|
* @param params
|
|
|
* @return
|
|
|
*/
|
|
|
+ @RequiresPermissions("cc:awsasrconf:view")
|
|
|
@PostMapping(value = "/setAwsAsrConf")
|
|
|
@ResponseBody
|
|
|
public AjaxResult setAwsAsrConf(@RequestBody JSONArray params) {
|
|
|
@@ -1387,6 +1481,7 @@ public class FsConfController extends BaseController {
|
|
|
* 获取亚马逊tts配置
|
|
|
* @return
|
|
|
*/
|
|
|
+ @RequiresPermissions("cc:awsttsconf:view")
|
|
|
@GetMapping(value = "/getAwsTtsConf")
|
|
|
@ResponseBody
|
|
|
public AjaxResult getAwsTtsConf() {
|
|
|
@@ -1400,6 +1495,7 @@ public class FsConfController extends BaseController {
|
|
|
* @param params
|
|
|
* @return
|
|
|
*/
|
|
|
+ @RequiresPermissions("cc:awsttsconf:view")
|
|
|
@PostMapping(value = "/setAwsTtsConf")
|
|
|
@ResponseBody
|
|
|
public AjaxResult setAwsTtsConf(@RequestBody JSONArray params) {
|
|
|
@@ -1415,6 +1511,7 @@ public class FsConfController extends BaseController {
|
|
|
* ASR(deepgram)参数配置
|
|
|
* @return
|
|
|
*/
|
|
|
+ @RequiresPermissions("cc:deepgramasrconf:view")
|
|
|
@GetMapping(value = "/deepgramasrconf")
|
|
|
public String deepgramAsrConf() {
|
|
|
return "cc/deepgramasrconf/deepgramasrconf";
|
|
|
@@ -1424,6 +1521,7 @@ public class FsConfController extends BaseController {
|
|
|
* 获取Deepgram ASR配置
|
|
|
* @return
|
|
|
*/
|
|
|
+ @RequiresPermissions("cc:deepgramasrconf:view")
|
|
|
@GetMapping(value = "/getDeepgramAsrConf")
|
|
|
@ResponseBody
|
|
|
public AjaxResult getDeepgramAsrConf() {
|
|
|
@@ -1436,6 +1534,7 @@ public class FsConfController extends BaseController {
|
|
|
* @param params
|
|
|
* @return
|
|
|
*/
|
|
|
+ @RequiresPermissions("cc:deepgramasrconf:view")
|
|
|
@PostMapping(value = "/setDeepgramAsrConf")
|
|
|
@ResponseBody
|
|
|
public AjaxResult setDeepgramAsrConf(@RequestBody JSONArray params) {
|
|
|
@@ -1459,6 +1558,7 @@ public class FsConfController extends BaseController {
|
|
|
* 获取deepgram tts配置
|
|
|
* @return
|
|
|
*/
|
|
|
+ @RequiresPermissions("cc:deepgramttsconf:view")
|
|
|
@GetMapping(value = "/getDeepgramTtsConf")
|
|
|
@ResponseBody
|
|
|
public AjaxResult getDeepgramTtsConf() {
|
|
|
@@ -1472,6 +1572,7 @@ public class FsConfController extends BaseController {
|
|
|
* @param params
|
|
|
* @return
|
|
|
*/
|
|
|
+ @RequiresPermissions("cc:deepgramttsconf:view")
|
|
|
@PostMapping(value = "/setDeepgramTtsConf")
|
|
|
@ResponseBody
|
|
|
public AjaxResult setDeepgramTtsConf(@RequestBody JSONArray params) {
|