Compare commits

...

2 Commits

Author SHA1 Message Date
taoshihan 2e97afec06 部署方式
1 year ago
taoshihan 592e9566e8 readme
1 year ago

@ -1,24 +1,18 @@
# <b>GOFLY</b> [唯一客服]基于Golang语言和MySQL实现的WEB在线客服系统。
### 郑重提示
禁止将本项目用于含病毒、木马、色情、赌博、诈骗、违禁用品、假冒产品、虚假信息、数字货币、金融等违法违规业务
当前项目仅供个人学习测试,禁止一切线上商用行为,禁止一切违法使用!!!
### <b>GOFLY</b> 基于Golang语言和MySQL实现的WEB在线客服系统。
<a href="readme.md">中文</a> |
<a href="readme_en.md">English</a> |
<a href="https://gitee.com/taoshihan/go-fly">Gitee</a>
### 请注意当前项目仅供个人学习测试,禁止一切线上商用行为,禁止一切违法使用!!!
## 主要技术栈
gin + jwt-go + websocket + go.uuid + gorm + cobra + VueJS + ElementUI + MySQL
### 项目预览
![Image text](https://img2022.cnblogs.com/blog/726254/202211/726254-20221108002459990-32759129.png)
![Image text](https://img2022.cnblogs.com/blog/726254/202211/726254-20221108002516168-1465488645.png)
![Image text](https://img2022.cnblogs.com/blog/726254/202211/726254-20221108002619691-1817390882.png)
### 前言
此项目源于2019年学习golang时的练习作品主要使用了gin + jwt-go + websocket + go.uuid + gorm + cobra + VueJS + ElementUI + MySQL等技术
### 安装使用
@ -50,46 +44,23 @@ gin + jwt-go + websocket + go.uuid + gorm + cobra + VueJS + ElementUI + MySQL
在任意目录 git clone https://github.com/taoshihan1991/go-fly.git
进入go-fly 目录
2. 导入数据库 go run go-fly.go install
2. 源码运行 go run go-fly.go server
3. 源码运行 go run go-fly.go server
3. 源码打包 go build go-fly.go 会生成go-fly可以执行文件
3. 源码打包 go build -o kefu 会生成kefu可以执行文件
4. 导入数据库(会删除表清空数据) ./go-fly install
5. 二进制文件运行
linux: ./go-fly server [可选 -p 8082 -d]
linux: ./kefu server [可选 -p 8082 -d]
windows: go-fly.exe server [可选 -p 8082 -d]
windows: kefu.exe server [可选 -p 8082 -d]
6. 关闭程序
./go-fly stop
linux下使用ps命令结合kill命令杀掉进程
ps -ef|grep go-fly 看到父子进程id
kill 进程父进程id kill 进程子进程id
#### 3. 网页使用
1.服务端安装成功后可把域名换成自己的域名或IP
2.默认访问本地http://127.0.0.1:8081
```php
//下面js路径和GOFLY_URL 都要改成自己的
<script src="https://gofly.sopans.com/assets/js/gofly-front.js"></script>
<script>
GOFLY.init({
GOFLY_URL:"https://gofly.sopans.com",
GOFLY_KEFU_ID: "kefu2",
GOFLY_BTN_TEXT: "客服在线 欢迎咨询",
GOFLY_LANG:"cn"
})
</script>
```
killall kefu
### nginx部署
@ -185,8 +156,6 @@ location /
#PROXY-END/
```
### 如果在登录到后台后,出现了需要认证的弹窗,请前往官网注册账户并绑定手机。填入绑定的手机+自己的密码可以通过认证。如果没有中国手机号,请在官网联系我获取测试手机号和密码
### 版权声明

@ -208,4 +208,13 @@ function formatDate(dateString, format = 'yyyy-MM-dd HH:mm:ss') {
return formattedDate;
}
function copyText(text) {
var target = document.createElement('input')
target.value = text
document.body.appendChild(target)
target.select()
document.execCommand("copy");
document.body.removeChild(target);
return true;
}
;

@ -1,5 +1,5 @@
var GOFLY={
GOFLY_URL:"https://gofly.sopans.com",
GOFLY_URL:"",
GOFLY_KEFU_ID:"",
GOFLY_BTN_TEXT:"Chat with me",
GOFLY_LANG:"en",

@ -9,7 +9,7 @@
<script src="https://cdn.staticfile.org/vue/2.6.9/vue.min.js"></script>
<script src="https://cdn.staticfile.org/element-ui/2.15.1/index.js"></script>
<script src="https://cdn.staticfile.org/jquery/3.6.0/jquery.min.js"></script>
<script src="/static/js/functions.js"></script>
<link rel="stylesheet" href="/static/css/common.css">
<style>
html,

@ -7,6 +7,7 @@
el: '#app',
delimiters:["<{","}>"],
data: {
host:getBaseUrl(),
iframeUrl:"/setting_statistics",
fullscreenLoading:false,
kefuInfo:{},
@ -487,6 +488,13 @@
str = str.substr(num + 1);
return str;
},
copyText(text){
copyText(text);
this.$message({
message: "success",
type: 'success'
});
},
},
mounted:function(){

@ -1,7 +1,6 @@
{{template "header" }}
<style>
.el-table .cell{
font-size: 12px;
color: #666;
}
</style>

@ -4,34 +4,17 @@
<el-container>
<el-main class="mainMain">
<el-tabs>
<el-tab-pane label="默认JS模式">
<el-alert
:closable="false"
title="例如: 服务器搭建完成后可以把域名替换为自己的IP或域名 , GOFLY_KEFU_ID为自己添加的客服名称"
type="success"
effect="dark">
</el-alert>
<textarea style="width:100%;color:green;margin-top:10px;font-size:12px;height:290px;">
<script src="https://自己域名/static/js/gofly-front.js"></script>
<script>
GOFLY.init({
GOFLY_URL:"https://自己域名",
GOFLY_KEFU_ID: "kefu1",
GOFLY_BTN_TEXT: "客服在线 欢迎咨询",
GOFLY_LANG:"cn"
})
</script>
</textarea>
<el-tabs type="border-card" >
<el-tab-pane label="普通模式">
<el-descriptions style="margin-bottom: 10px;" direction="vertical" :column="1" border>
<el-descriptions-item label="通用聊天链接">
<a style="margin-right: 10px"><{host}>/chatIndex?kefu_id=kefu2</a>
<el-button size="mini" v-on:click="copyText(host+'/chatIndex?kefu_id=kefu2')">复制</el-button>
</el-descriptions-item>
</el-descriptions>
</el-tab-pane>
<el-tab-pane label="超链接模式">
<el-alert
:closable="false"
title="例如: 服务器搭建完成后可以把域名替换为自己的IP或域名 , GOFLY_KEFU_ID为自己添加的客服名称"
type="success"
effect="dark">
</el-alert>
<el-input style="margin-top:10px;" value="https://自己域名/chatIndex?kefu_id=kefu1"></el-input>
<el-tab-pane label="弹窗模式">
</el-tab-pane>
</el-tabs>
</el-main>

Loading…
Cancel
Save