Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
qiangwayu9962
cskefu
提交
79913174
C
cskefu
项目概览
qiangwayu9962
/
cskefu
与 Fork 源项目一致
从无法访问的项目Fork
通知
1
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
C
cskefu
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
前往新版Gitcode,体验更适合开发者的 AI 搜索 >>
提交
79913174
编写于
5月 14, 2021
作者:
Y
Yu
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
#441 fix QList menu event
上级
a28e57aa
变更
5
显示空白变更内容
内联
并排
Showing
5 changed file
with
81 addition
and
20 deletion
+81
-20
contact-center/app/src/main/java/com/chatopera/cc/util/SystemEnvHelper.java
.../src/main/java/com/chatopera/cc/util/SystemEnvHelper.java
+15
-3
contact-center/app/src/main/resources/templates/apps/im/chatbot/index.pug
...pp/src/main/resources/templates/apps/im/chatbot/index.pug
+9
-9
contact-center/app/src/main/resources/templates/apps/im/chatbot/mobile.pug
...p/src/main/resources/templates/apps/im/chatbot/mobile.pug
+5
-5
public/plugins/README.md
public/plugins/README.md
+42
-2
public/plugins/chatbot/classes/ChatbotEventSubscription.java
public/plugins/chatbot/classes/ChatbotEventSubscription.java
+10
-1
未找到文件。
contact-center/app/src/main/java/com/chatopera/cc/util/SystemEnvHelper.java
浏览文件 @
79913174
...
...
@@ -68,7 +68,7 @@ public class SystemEnvHelper {
* @return
*/
public
static
String
parseFromApplicationProps
(
final
String
property
)
{
// 将 propert转化为环境变量
// 将 propert
y
转化为环境变量
String
P
=
StringUtils
.
upperCase
(
property
);
P
=
StringUtils
.
replaceChars
(
P
,
"-"
,
"_"
);
...
...
@@ -82,14 +82,26 @@ public class SystemEnvHelper {
}
/**
* 记载application.properties
* Get properties filename
* @return
*/
private
static
String
getPropsFileName
()
{
String
profile
=
getenv
(
"SPRING_PROFILES_ACTIVE"
,
""
);
if
(
StringUtils
.
isNotBlank
(
profile
))
{
return
"application-"
+
profile
+
".properties"
;
}
return
"application.properties"
;
}
/**
* 加载 application.properties
*
* @return
*/
private
static
Properties
getProps
()
{
if
(
props
==
null
)
{
try
(
InputStream
input
=
SystemEnvHelper
.
class
.
getClassLoader
().
getResourceAsStream
(
"application.properties"
))
{
getPropsFileName
()
))
{
// load a properties file
props
=
new
Properties
();
props
.
load
(
input
);
...
...
contact-center/app/src/main/resources/templates/apps/im/chatbot/index.pug
浏览文件 @
79913174
...
...
@@ -561,11 +561,11 @@ html
if (allowClick) {
allowClick = false;
socket.emit('message', {
appid: "
${appid!''
}",
userid: "
${userid!''
}",
appid: "
#{appid
}",
userid: "
#{userid
}",
type: "message",
session: "
${sessionid!''
}",
orgi: "
${orgi!''
}",
session: "
#{sessionid
}",
orgi: "
#{orgi
}",
message: key
});
}
...
...
@@ -587,11 +587,11 @@ html
var regClick = function (key) {
btn.click(function () {
socket.emit('message', {
appid: "
${appid!''
}",
userid: "
${userid!''
}",
appid: "
#{appid
}",
userid: "
#{userid
}",
type: "message",
session: "
${sessionid!''
}",
orgi: "
${orgi!''
}",
session: "
#{sessionid
}",
orgi: "
#{orgi
}",
message: key
});
});
...
...
@@ -629,7 +629,7 @@ html
content = createCard(message, expmsg);
}
var box = $('<div class="chat-left"> <img class="user-img" src="
<#if inviteData?? && inviteData.consult_dialog_headimg??>/res/image.html?id=${inviteData.consult_dialog_headimg?url}<#else>/images/agent.png</#if>
" alt=""><div class="chat-message"><label class="user">' + username + '</label><label class="time">' + createtime + '</label> </div><div class="chatting-left"><i class="arrow"></i><div class="chat-content"></div></div>');
var box = $('<div class="chat-left"> <img class="user-img" src="
#{dialog_headimg}
" alt=""><div class="chat-message"><label class="user">' + username + '</label><label class="time">' + createtime + '</label> </div><div class="chatting-left"><i class="arrow"></i><div class="chat-content"></div></div>');
box.find('.chat-content').append(content);
...
...
contact-center/app/src/main/resources/templates/apps/im/chatbot/mobile.pug
浏览文件 @
79913174
...
...
@@ -360,7 +360,7 @@ html
content = createCard(message, expmsg);
}
var box = $('<div class="chat-left"> <img class="user-img" src="
<#if inviteData?? && inviteData.consult_dialog_headimg??>/res/image.html?id=${inviteData.consult_dialog_headimg?url}<#else>/images/agent.png</#if>
" alt=""><div class="chat-message"><label class="user">' + username + '</label><label class="time">' + createtime + '</label> </div><div class="chatting-left"><i class="arrow"></i><div class="chat-content"></div></div>');
var box = $('<div class="chat-left"> <img class="user-img" src="
#{dialog_headimg}
" alt=""><div class="chat-message"><label class="user">' + username + '</label><label class="time">' + createtime + '</label> </div><div class="chatting-left"><i class="arrow"></i><div class="chat-content"></div></div>');
box.find('.chat-content').append(content);
...
...
@@ -405,11 +405,11 @@ html
var regClick = function (key) {
btn.click(function () {
socket.emit('message', {
appid: "
${appid!''
}",
userid: "
${userid!''
}",
appid: "
#{appid
}",
userid: "
#{userid
}",
type: "message",
session: "
${sessionid!''
}",
orgi: "
${orgi!''
}",
session: "
#{sessionid
}",
orgi: "
#{orgi
}",
message: key
});
});
...
...
public/plugins/README.md
浏览文件 @
79913174
# 春松客服插件
此目录包含春松客服的开源的插件,每个插件授权参考各子目录。
本文件夹包含春松客服的开源的插件,每个插件授权参考各子目录。
## 规范
目前,春松客服插件安装是在命令行终端内完成:使用 Bash Shell 命令,链接插件源码到春松客服源码,然后编译打包 WAR 后得到插件功能。
> 提示:Windows 上使用 Git Bash 获得 Bash Shell, [https://git-scm.com/downloads](https://git-scm.com/downloads)。
不同的插件均遵循以下的规范。
### 插件安装
执行命令:
```
cd plugins/PLUGIN
./scripts/install.sh
```
其中,
`PLUGIN`
是插件的名字。
### 卸载插件
执行命令:
```
cd plugins/PLUGIN
./scripts/uninstall.sh
```
## 应用打包
安装插件后,插件开发过程同
[
春松客服开发环境搭建
](
https://docs.chatopera.com/products/cskefu/osc/engineering.html
)
。
如果需要部署到系统测试、生产环境等,首先打包为 WAR 应用,方式如下:
```
cd contact-center
./admin/package.sh
```
春松客服的发布形式为 Docker 镜像,如果在更改源码后,也可以使用春松客服的 Docker 镜像构建脚本发布,参考
[
构建脚本
](
https://github.com/chatopera/cskefu/blob/osc/contact-center/admin/build.sh
)
。
## 机器人客服
-
[
源码和安装说明
](
./chatbot
)
-
[
使用介绍
](
https://docs.chatopera.com/products/cskefu/work-chatbot.html
)
-
[
使用介绍
](
https://docs.chatopera.com/products/cskefu/work-chatbot
/index
.html
)
public/plugins/chatbot/classes/ChatbotEventSubscription.java
浏览文件 @
79913174
...
...
@@ -121,7 +121,7 @@ public class ChatbotEventSubscription {
JSONArray
respParams
=
new
JSONArray
();
if
(!
StringUtils
.
equals
(
MainContext
.
ChannelType
.
WEBIM
.
toString
(),
c
.
getChannel
()))
{
if
(
data
.
getBoolean
(
"logic_is_fallback"
))
{
if
(
StringUtils
.
equals
(
Constants
.
CHATBOT_CHATBOT
_FIRST
,
c
.
getWorkmode
()))
{
if
(
!
StringUtils
.
equals
(
Constants
.
CHATBOT_HUMAN
_FIRST
,
c
.
getWorkmode
()))
{
JSONArray
faqReplies
=
data
.
getJSONArray
(
"faq"
);
JSONObject
message
=
new
JSONObject
();
JSONObject
attachment
=
new
JSONObject
();
...
...
@@ -141,6 +141,10 @@ public class ChatbotEventSubscription {
buttons
.
put
(
button
);
}
}
else
{
if
(
StringUtils
.
equals
(
c
.
getWorkmode
(),
Constants
.
CHATBOT_CHATBOT_ONLY
))
{
return
;
}
payload
.
put
(
"text"
,
data
.
getString
(
"string"
));
JSONObject
button
=
new
JSONObject
();
button
.
put
(
"type"
,
"postback"
);
...
...
@@ -154,6 +158,10 @@ public class ChatbotEventSubscription {
resp
.
setExpmsg
(
message
.
toString
());
}
}
else
if
(
StringUtils
.
equals
(
Constants
.
PROVIDER_FAQ
,
data
.
getJSONObject
(
"service"
).
get
(
"provider"
).
toString
()))
{
if
(
data
.
has
(
"params"
))
{
resp
.
setMessage
(
data
.
getJSONArray
(
"params"
).
getJSONObject
(
0
).
getString
(
"content"
));
}
respHelp
=
creatChatMessage
(
request
,
c
);
JSONObject
message
=
new
JSONObject
();
JSONObject
attachment
=
new
JSONObject
();
...
...
@@ -175,6 +183,7 @@ public class ChatbotEventSubscription {
payload
.
put
(
"buttons"
,
buttons
);
attachment
.
put
(
"payload"
,
payload
);
message
.
put
(
"attachment"
,
attachment
);
respHelp
.
setExpmsg
(
message
.
toString
());
}
else
if
(
data
.
has
(
"params"
))
{
Object
obj
=
data
.
get
(
"params"
);
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录