发送关闭连接指令接口

pull/23/head
taoshihan1991 4 years ago
parent f7767033ee
commit b786521ce6

@ -135,6 +135,30 @@ func SendVisitorNotice(c *gin.Context) {
"msg": "ok",
})
}
func SendCloseMessage(c *gin.Context) {
visitorId := c.Query("visitor_id")
if visitorId == "" {
c.JSON(200, gin.H{
"code": 400,
"msg": "visitor_id不能为空",
})
return
}
msg := TypeMessage{
Type: "close",
Data: visitorId,
}
str, _ := json.Marshal(msg)
for _, visitor := range clientList {
if visitorId == visitor.id {
visitor.conn.WriteMessage(websocket.TextMessage, str)
}
}
c.JSON(200, gin.H{
"code": 200,
"msg": "ok",
})
}
func UploadImg(c *gin.Context) {
config := config.CreateConfig()
f, err := c.FormFile("imgfile")

@ -18,6 +18,8 @@ func InitApiRouter(engine *gin.Engine) {
engine.GET("/message_notice", controller.SendVisitorNotice)
//发送单条消息
engine.POST("/message", middleware.Ipblack, controller.SendMessage)
//发送关闭消息
engine.GET("/message_close", controller.SendCloseMessage)
//上传文件
engine.POST("/uploadimg", middleware.Ipblack, controller.UploadImg)
//获取未读消息数

@ -79,5 +79,5 @@
var KEFU_ID='{{.KEFU_ID}}';
var REFER='{{.Refer}}';
</script>
<script src="/static/js/chat-page.js?v=0.2.3"></script>
<script src="/static/js/chat-page.js?v=0.2.4"></script>
</html>

@ -17,6 +17,7 @@ new Vue({
//初始化websocket
initConn() {
let socket = new ReconnectingWebSocket(this.server);//创建Socket实例
socket.maxReconnectAttempts = 30;
this.socket = socket
this.socket.onmessage = this.OnMessage;
this.socket.onopen = this.OnOpen;
@ -68,6 +69,12 @@ new Vue({
this.scrollBottom();
flashTitle();//标题闪烁
}
if (redata.type == "close") {
this.chatTitle="连接关闭!请重新打开页面";
$(".chatBox").append("<div class=\"chatTime\">"+this.chatTitle+"</div>");
this.scrollBottom();
this.socket.close();
}
window.parent.postMessage(redata);
},
//发送给客户
@ -111,7 +118,8 @@ new Vue({
},
OnClose() {
this.chatTitle="连接关闭!"
this.chatTitle="连接关闭!请重新打开页面";
$(".chatBox").append("<div class=\"chatTime\">"+this.chatTitle+"</div>");
},
//获取当前用户信息
getUserInfo(){

Loading…
Cancel
Save