From 82d3a340d8ad3b0a0280bfe39d544758627774ba Mon Sep 17 00:00:00 2001 From: Hai Liang Wang Date: Fri, 16 Nov 2018 14:43:01 +0800 Subject: [PATCH] =?UTF-8?q?#153=20=E6=94=AF=E6=8C=81=E6=9C=BA=E5=99=A8?= =?UTF-8?q?=E4=BA=BA=E4=BD=BF=E7=94=A8=E5=9C=B0=E5=9D=80=20[skip=20ci]?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../handler/api/rest/ApiChatbotController.java | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) diff --git a/contact-center/app/src/main/java/com/chatopera/cc/app/handler/api/rest/ApiChatbotController.java b/contact-center/app/src/main/java/com/chatopera/cc/app/handler/api/rest/ApiChatbotController.java index 337c835a..09fef5fe 100644 --- a/contact-center/app/src/main/java/com/chatopera/cc/app/handler/api/rest/ApiChatbotController.java +++ b/contact-center/app/src/main/java/com/chatopera/cc/app/handler/api/rest/ApiChatbotController.java @@ -16,6 +16,7 @@ package com.chatopera.cc.app.handler.api.rest; import com.chatopera.bot.exception.ChatbotException; +import com.chatopera.cc.app.basic.MainContext; import com.chatopera.cc.app.basic.MainUtils; import com.chatopera.cc.app.handler.Handler; import com.chatopera.cc.app.handler.api.request.RestUtils; @@ -79,6 +80,8 @@ public class ApiChatbotController extends Handler { @Autowired private ConsultInviteRepository consultInviteRes; + private String botBaseUrl; + @RequestMapping(method = RequestMethod.POST) @Menu(type = "apps", subtype = "chatbot", access = true) @ApiOperation("聊天机器人") @@ -277,7 +280,7 @@ public class ApiChatbotController extends Handler { invite.setAiname(c.getName()); } else { resp.addProperty(RestUtils.RESP_KEY_RC, RestUtils.RESP_RC_FAIL_6); - resp.addProperty(RestUtils.RESP_KEY_ERROR, "Chatopera开发者平台提示:该机器人不存在,请先创建机器人, 登录 https://bot.chatopera.com"); + resp.addProperty(RestUtils.RESP_KEY_ERROR, "Chatopera开发者平台Chatopera开发者平台提示:无法访问该机器人,请确认【1】该服务器可以访问互联网,【2】该聊天机器人已经创建,【3】clientId和Secret正确设置。提示:该机器人不存在,请先创建机器人, 登录 https://bot.chatopera.com"); return resp; } } catch (ChatbotException e) { @@ -425,7 +428,7 @@ public class ApiChatbotController extends Handler { */ private JsonObject create(JsonObject j, String creater, String organ, String orgi) { JsonObject resp = new JsonObject(); - String baseUrl = "https://bot.chatopera.com"; + String baseUrl = getBotBaseUrl(); String snsid = null; String workmode = null; String clientId = null; @@ -482,7 +485,7 @@ public class ApiChatbotController extends Handler { } try { - com.chatopera.bot.sdk.Chatbot bot = new com.chatopera.bot.sdk.Chatbot(clientId, secret); + com.chatopera.bot.sdk.Chatbot bot = new com.chatopera.bot.sdk.Chatbot(clientId, secret, getBotBaseUrl()); if (bot.exists()) { // 该机器人存在,clientId 和 Secret配对成功 // 创建成功 @@ -534,14 +537,22 @@ public class ApiChatbotController extends Handler { return resp; } } catch (ChatbotException e) { + logger.error("bot create error", e); resp.addProperty(RestUtils.RESP_KEY_RC, RestUtils.RESP_RC_FAIL_5); resp.addProperty(RestUtils.RESP_KEY_ERROR, "Chatopera开发者平台提示:无法访问该机器人,请确认【1】该服务器可以访问互联网,【2】该聊天机器人已经创建,【3】clientId和Secret正确设置。"); return resp; } catch (MalformedURLException e) { + logger.error("bot request error", e); resp.addProperty(RestUtils.RESP_KEY_RC, RestUtils.RESP_RC_FAIL_4); resp.addProperty(RestUtils.RESP_KEY_ERROR, "Chatopera开发者平台提示:不合法的聊天机器人服务URL。"); return resp; } } + private String getBotBaseUrl(){ + if(this.botBaseUrl == null) + this.botBaseUrl = MainContext.getContext().getEnvironment().getProperty("chatopera.bot.url"); + return this.botBaseUrl; + } + }