mirror of
https://github.com/chatopera/cosin.git
synced 2025-08-01 16:38:02 +08:00
#153 支持 button 类型消息
This commit is contained in:
parent
8e5e44ab3f
commit
c1ac1ff2c3
@ -257,6 +257,18 @@
|
||||
|
||||
</script>
|
||||
<!-- kindeditor -->
|
||||
<style>
|
||||
.msg-btn{
|
||||
border: #4598ee 1px solid;
|
||||
padding: 5px;
|
||||
margin: 5px;
|
||||
min-width: 125px;
|
||||
text-align: center;
|
||||
display: inline-block;
|
||||
background-color: #e6f2ff;
|
||||
cursor: default;
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
<body style="overflow:hidden;" class="ukefu-point-text">
|
||||
<div class="large ukefu-im-theme <#if type?? && type='text'>ukefu-theme-border-${inviteData.consult_dialog_color!''}</#if>">
|
||||
@ -501,7 +513,12 @@
|
||||
if(data.calltype == "呼入"){
|
||||
output('<div class="chat-right"> <img class="user-img" src="/im/img/user.png" alt=""><div class="chat-message"><label class="time">'+data.createtime+'</label><label class="user">' + data.username + '</label></div><div class="chatting-right"><i class="arrow arrow${inviteData.consult_dialog_color!''}"></i><div class="chat-content theme${inviteData.consult_dialog_color!''}">'+chat+'</div></div>' , "chat-block");
|
||||
}else if(data.calltype == "呼出"){
|
||||
output('<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">'+data.username+'</label><label class="time">'+data.createtime+'</label> </div><div class="chatting-left"><i class="arrow"></i><div class="chat-content">'+chat+'</div></div>' , "chat-block");
|
||||
if(data.expmsg){
|
||||
showExtmsg(data.username, data.createtime,data.message ,data.expmsg);
|
||||
}
|
||||
else{
|
||||
output('<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">'+data.username+'</label><label class="time">'+data.createtime+'</label> </div><div class="chatting-left"><i class="arrow"></i><div class="chat-content">'+chat+'</div></div>' , "chat-block");
|
||||
}
|
||||
R3Ajax.audioplayer('audioplane', newmessage, false); // 播放
|
||||
}
|
||||
});
|
||||
@ -509,6 +526,67 @@
|
||||
socket.on('disconnect',function() {
|
||||
output('<span id="connect-message">连接坐席失败,在线咨询服务不可用</span>' , 'message connect-message');
|
||||
});
|
||||
|
||||
function createButton(message, data) {
|
||||
var element = $('<div><p>' + message + '</p><div class="button-box"></div></div>')
|
||||
var list = element.find('.button-box');
|
||||
for (let i = 0; i < data.length; i++) {
|
||||
var item = data[i];
|
||||
var allowClick = true;
|
||||
var btn = $('<div class="msg-btn" style="background-color: #e6f2ff !important;">' + item.label + '</div>');
|
||||
var regClick = function (key) {
|
||||
btn.click(function () {
|
||||
if (allowClick) {
|
||||
allowClick = false;
|
||||
socket.emit('message', {
|
||||
appid: "${appid!''}",
|
||||
userid: "${userid!''}",
|
||||
type: "message",
|
||||
session: "${sessionid!''}",
|
||||
orgi: "${orgi!''}",
|
||||
message: key
|
||||
});
|
||||
}
|
||||
});
|
||||
}
|
||||
regClick(item.text);
|
||||
list.append(btn);
|
||||
}
|
||||
|
||||
return element;
|
||||
}
|
||||
|
||||
function createQList(message,data){
|
||||
for (let i = 0; i < data.length; i++) {
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
function createCard(message,data){
|
||||
for (let i = 0; i < data.length; i++) {
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
function showExtmsg(username,createtime,message,json) {
|
||||
var expmsg = JSON.parse(json);
|
||||
var type = expmsg[0].type;
|
||||
var content;
|
||||
if (type == 'button') {
|
||||
content = createButton(message,expmsg);
|
||||
} else if (type == 'qlist') {
|
||||
content = createQList(message,expmsg);
|
||||
} else if (type == 'card') {
|
||||
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>');
|
||||
|
||||
box.find('.chat-content').append(content);
|
||||
|
||||
output(box,'chat-block')
|
||||
}
|
||||
|
||||
function sendDisconnect(){
|
||||
socket.disconnect();
|
||||
}
|
||||
@ -540,8 +618,10 @@
|
||||
inx++ ;
|
||||
}
|
||||
}
|
||||
var element = ("<div class='clearfix "+clazz+"'>" +" " + message + "</div>");
|
||||
document.getElementById('above').innerHTML= (document.getElementById('above').innerHTML + element);
|
||||
|
||||
var element = $("<div class='clearfix "+clazz+"'></div>");
|
||||
element.append(message);
|
||||
$('#above').append(element);
|
||||
if(scroll == null || scroll == true){
|
||||
document.getElementById('above').scrollTop = document.getElementById('above').scrollHeight ;
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user