fix module name

master
taoshihan 2 months ago
parent 222b840e09
commit c68a58efdb

@ -2,8 +2,8 @@ package cmd
import (
"github.com/spf13/cobra"
"github.com/taoshihan1991/imaptool/models"
"github.com/taoshihan1991/imaptool/tools"
"goflylivechat/models"
"goflylivechat/tools"
"log"
"os"
"strings"

@ -4,11 +4,11 @@ import (
"fmt"
"github.com/gin-gonic/gin"
"github.com/spf13/cobra"
"github.com/taoshihan1991/imaptool/middleware"
"github.com/taoshihan1991/imaptool/router"
"github.com/taoshihan1991/imaptool/tools"
"github.com/taoshihan1991/imaptool/ws"
"github.com/zh-five/xdaemon"
"goflylivechat/middleware"
"goflylivechat/router"
"goflylivechat/tools"
"goflylivechat/ws"
"log"
"os"
)

@ -2,7 +2,7 @@ package common
import (
"encoding/json"
"github.com/taoshihan1991/imaptool/tools"
"goflylivechat/tools"
"io/ioutil"
)

@ -2,7 +2,7 @@ package controller
import (
"github.com/gin-gonic/gin"
"github.com/taoshihan1991/imaptool/models"
"goflylivechat/models"
)
func GetAbout(c *gin.Context) {

@ -2,8 +2,8 @@ package controller
import (
"github.com/gin-gonic/gin"
"github.com/taoshihan1991/imaptool/models"
"github.com/taoshihan1991/imaptool/tools"
"goflylivechat/models"
"goflylivechat/tools"
"time"
)

@ -2,7 +2,7 @@ package controller
import (
"github.com/gin-gonic/gin"
"github.com/taoshihan1991/imaptool/models"
"goflylivechat/models"
)
func Index(c *gin.Context) {

@ -2,8 +2,8 @@ package controller
import (
"github.com/gin-gonic/gin"
"github.com/taoshihan1991/imaptool/common"
"github.com/taoshihan1991/imaptool/models"
"goflylivechat/common"
"goflylivechat/models"
"strconv"
)

@ -2,9 +2,9 @@ package controller
import (
"github.com/gin-gonic/gin"
"github.com/taoshihan1991/imaptool/models"
"github.com/taoshihan1991/imaptool/tools"
"github.com/taoshihan1991/imaptool/ws"
"goflylivechat/models"
"goflylivechat/tools"
"goflylivechat/ws"
"net/http"
)

@ -2,8 +2,8 @@ package controller
import (
"github.com/gin-gonic/gin"
"github.com/taoshihan1991/imaptool/models"
"github.com/taoshihan1991/imaptool/tools"
"goflylivechat/models"
"goflylivechat/tools"
"time"
)

@ -5,10 +5,10 @@ import (
"fmt"
"github.com/gin-gonic/gin"
"github.com/jinzhu/gorm"
"github.com/taoshihan1991/imaptool/common"
"github.com/taoshihan1991/imaptool/models"
"github.com/taoshihan1991/imaptool/tools"
"github.com/taoshihan1991/imaptool/ws"
"goflylivechat/common"
"goflylivechat/models"
"goflylivechat/tools"
"goflylivechat/ws"
"io/ioutil"
"log"
"os"

@ -5,10 +5,10 @@ import (
"fmt"
"github.com/gin-gonic/gin"
"github.com/gorilla/websocket"
"github.com/taoshihan1991/imaptool/common"
"github.com/taoshihan1991/imaptool/models"
"github.com/taoshihan1991/imaptool/tools"
"github.com/taoshihan1991/imaptool/ws"
"goflylivechat/common"
"goflylivechat/models"
"goflylivechat/tools"
"goflylivechat/ws"
"os"
"path"
"strconv"

@ -2,7 +2,7 @@ package controller
import (
"github.com/gin-gonic/gin"
"github.com/taoshihan1991/imaptool/models"
"goflylivechat/models"
)
func GetNotice(c *gin.Context) {

@ -2,7 +2,7 @@ package controller
import (
"github.com/gin-gonic/gin"
"github.com/taoshihan1991/imaptool/models"
"goflylivechat/models"
"log"
)

@ -2,7 +2,7 @@ package controller
import (
"github.com/gin-gonic/gin"
"github.com/taoshihan1991/imaptool/models"
"goflylivechat/models"
)
func GetRoleList(c *gin.Context) {

@ -2,7 +2,7 @@ package controller
import (
"github.com/gin-gonic/gin"
"github.com/taoshihan1991/imaptool/models"
"goflylivechat/models"
)
func GetConfigs(c *gin.Context) {

@ -3,9 +3,9 @@ package controller
import (
"encoding/json"
"fmt"
"github.com/taoshihan1991/imaptool/models"
"github.com/taoshihan1991/imaptool/tools"
"github.com/taoshihan1991/imaptool/ws"
"goflylivechat/models"
"goflylivechat/tools"
"goflylivechat/ws"
"log"
"strconv"
"time"

@ -3,10 +3,10 @@ package controller
import (
"encoding/json"
"github.com/gin-gonic/gin"
"github.com/taoshihan1991/imaptool/common"
"github.com/taoshihan1991/imaptool/models"
"github.com/taoshihan1991/imaptool/tools"
"github.com/taoshihan1991/imaptool/ws"
"goflylivechat/common"
"goflylivechat/models"
"goflylivechat/tools"
"goflylivechat/ws"
"strconv"
)

@ -4,7 +4,7 @@ import (
"crypto/sha1"
"encoding/hex"
"github.com/gin-gonic/gin"
"github.com/taoshihan1991/imaptool/models"
"goflylivechat/models"
"log"
"sort"
)

@ -1,4 +1,4 @@
module github.com/taoshihan1991/imaptool
module goflylivechat
go 1.16
@ -6,7 +6,6 @@ require (
github.com/dchest/captcha v0.0.0-20200903113550-03f5f0333e1f
github.com/emersion/go-sasl v0.0.0-20200509203442-7bfe0ed36a21
github.com/emersion/go-smtp v0.13.0
github.com/gin-contrib/pprof v1.3.0
github.com/gin-contrib/sessions v0.0.3
github.com/gin-gonic/gin v1.7.7
github.com/go-sql-driver/mysql v1.5.0

@ -23,14 +23,11 @@ github.com/emersion/go-smtp v0.13.0/go.mod h1:qm27SGYgoIPRot6ubfQ/GpiPy/g3PaZAVR
github.com/erikstmartin/go-testdb v0.0.0-20160219214506-8d10e4a1bae5 h1:Yzb9+7DPaBjB8zlTR87/ElzFsnQfuHnVUVqpZZIcV5Y=
github.com/erikstmartin/go-testdb v0.0.0-20160219214506-8d10e4a1bae5/go.mod h1:a2zkGnVExMxdzMo3M0Hi/3sEU+cWnZpSni0O6/Yb/P0=
github.com/fsnotify/fsnotify v1.4.7/go.mod h1:jwhsz4b93w/PPRr/qN1Yymfu8t87LnFCMoQvtojpjFo=
github.com/gin-contrib/pprof v1.3.0 h1:G9eK6HnbkSqDZBYbzG4wrjCsA4e+cvYAHUZw6W+W9K0=
github.com/gin-contrib/pprof v1.3.0/go.mod h1:waMjT1H9b179t3CxuG1cV3DHpga6ybizwfBaM5OXaB0=
github.com/gin-contrib/sessions v0.0.3 h1:PoBXki+44XdJdlgDqDrY5nDVe3Wk7wDV/UCOuLP6fBI=
github.com/gin-contrib/sessions v0.0.3/go.mod h1:8C/J6cad3Il1mWYYgtw0w+hqasmpvy25mPkXdOgeB9I=
github.com/gin-contrib/sse v0.1.0 h1:Y/yl/+YNO8GZSjAhjMsSuLt29uWRFHdHYUb5lYOV9qE=
github.com/gin-contrib/sse v0.1.0/go.mod h1:RHrZQHXnP2xjPF+u1gW/2HnVO7nvIa9PG3Gm+fLHvGI=
github.com/gin-gonic/gin v1.5.0/go.mod h1:Nd6IXA8m5kNZdNEHMBd93KT+mdY3+bewLgRvmCsR2Do=
github.com/gin-gonic/gin v1.6.2/go.mod h1:75u5sXoLsGZoRN5Sgbi1eraJ4GU3++wFwWzhwvtwp4M=
github.com/gin-gonic/gin v1.7.7 h1:3DoBmSbJbZAWqXJC3SLjAPfutPJJRN1U5pALB7EeTTs=
github.com/gin-gonic/gin v1.7.7/go.mod h1:axIBovoeJpVj8S3BwE0uPMTeReE4+AfFtqpqaZ1qq1U=
github.com/globalsign/mgo v0.0.0-20181015135952-eeefdecb41b8/go.mod h1:xkRDCp4j0OGD1HRkm4kmhM+pmpv3AKq5SU7GMg4oO/Q=
@ -42,7 +39,6 @@ github.com/go-playground/locales v0.13.0/go.mod h1:taPMhCMXrRLJO55olJkUXHZBHCxTM
github.com/go-playground/universal-translator v0.16.0/go.mod h1:1AnU7NaIRDWWzGEKwgtJRd2xk99HeFyHw3yid4rvQIY=
github.com/go-playground/universal-translator v0.17.0 h1:icxd5fm+REJzpZx7ZfpaD876Lmtgy7VtROAbHHXk8no=
github.com/go-playground/universal-translator v0.17.0/go.mod h1:UkSxE5sNxxRwHyU+Scu5vgOQjsIJAF8j9muTVoKLVtA=
github.com/go-playground/validator/v10 v10.2.0/go.mod h1:uOYAAleCW8F/7oMFd6aG0GOhaH6EGOAJShg8Id5JGkI=
github.com/go-playground/validator/v10 v10.4.1 h1:pH2c5ADXtd66mxoE0Zm9SUhxE20r7aM3F26W0hOn+GE=
github.com/go-playground/validator/v10 v10.4.1/go.mod h1:nlOn6nFhuKACm19sB/8EGNn9GlaMV7XkbRSipzJ0Ii4=
github.com/go-sql-driver/mysql v1.5.0 h1:ozyZYNQW3x3HtqT1jira07DN2PArx2v7/mN66gGcHOs=

@ -1,7 +1,7 @@
package main
import (
"github.com/taoshihan1991/imaptool/cmd"
"goflylivechat/cmd"
)
func main() {

@ -2,7 +2,7 @@ package middleware
import (
"github.com/gin-gonic/gin"
"github.com/taoshihan1991/imaptool/models"
"goflylivechat/models"
)
func Ipblack(c *gin.Context) {

@ -2,7 +2,7 @@ package middleware
import (
"github.com/gin-gonic/gin"
"github.com/taoshihan1991/imaptool/tools"
"goflylivechat/tools"
"time"
)

@ -2,7 +2,7 @@ package middleware
import (
"github.com/gin-gonic/gin"
"github.com/taoshihan1991/imaptool/tools"
"goflylivechat/tools"
"time"
)

@ -3,7 +3,7 @@ package models
import (
"fmt"
"github.com/jinzhu/gorm"
"github.com/taoshihan1991/imaptool/common"
"goflylivechat/common"
"log"
"time"
)

@ -2,9 +2,9 @@ package router
import (
"github.com/gin-gonic/gin"
"github.com/taoshihan1991/imaptool/controller"
"github.com/taoshihan1991/imaptool/middleware"
"github.com/taoshihan1991/imaptool/ws"
"goflylivechat/controller"
"goflylivechat/middleware"
"goflylivechat/ws"
)
func InitApiRouter(engine *gin.Engine) {

@ -2,8 +2,8 @@ package router
import (
"github.com/gin-gonic/gin"
"github.com/taoshihan1991/imaptool/middleware"
"github.com/taoshihan1991/imaptool/tmpl"
"goflylivechat/middleware"
"goflylivechat/tmpl"
)
func InitViewRouter(engine *gin.Engine) {

@ -1,138 +0,0 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="renderer" content="webkit">
<meta name="viewport" content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
<title>独立私有化智能在线客服系统</title>
<style>
body{
display: flex;
align-items: center;
justify-content: center;
line-height: 23px;
}
h1{
border-bottom: 1px solid #eee;
}
h1, h2, h3{
margin: 15px 0px!important;
padding: 15px 0px!important;
}
ul,pre{
margin: 10px!important;
padding: 10px!important;
}
pre{
border: 1px solid #e7eaed;
background-color: #f8f8f8;
}
a {
color: #4183C4;
}
p{
line-height: 30px;
}
.main{
max-width: 900px;
width: 100%;
margin:30px 0px;
}
</style>
</head>
<body>
<div class="main">
<h1>开源在线客服系统</h1>
<h3 id="郑重提示">郑重提示</h3>
<p>禁止将本项目用于含病毒、木马、色情、赌博、诈骗、违禁用品、假冒产品、虚假信息、数字货币、金融等违法违规业务</p>
<p>当前项目仅供个人学习测试,禁止一切线上商用行为,禁止一切违法使用!!!</p>
<h3 id="项目简介">项目简介</h3>
<p>Golang语言开源客服系统主要使用了gin + jwt-go + websocket + go.uuid + gorm + cobra + VueJS + ElementUI + MySQL等技术</p>
<h3 id="安装使用">安装使用</h3>
<ul>
<li>先安装和运行mysql数据库 ,版本&gt;=5.5 ,创建数据库
<pre><code> create database gofly charset utf8mb4;</code></pre>
</li>
</ul>
<ul>
<li><p>配置数据库链接信息在config目录mysql.json中</p>
<pre><code class="language-php">{
&quot;Server&quot;:&quot;127.0.0.1&quot;,
&quot;Port&quot;:&quot;3306&quot;,
&quot;Database&quot;:&quot;gofly&quot;,
&quot;Username&quot;:&quot;go-fly&quot;,
&quot;Password&quot;:&quot;go-fly&quot;
}</code></pre>
</li>
<li><p>安装配置Golang运行环境请参照下面的命令去执行</p>
<pre><code class="language-php">wget https://studygolang.com/dl/golang/go1.20.2.linux-amd64.tar.gz
tar -C /usr/local -xvf go1.20.2.linux-amd64.tar.gz
mv go1.20.2.linux-amd64.tar.gz /tmp
echo &quot;PATH=\$PATH:/usr/local/go/bin&quot; &gt;&gt; /etc/profile
echo &quot;PATH=\$PATH:/usr/local/go/bin&quot; &gt;&gt; ~/.bashrc
source /etc/profile
go version
go env -w GO111MODULE=on
go env -w GOPROXY=https://goproxy.cn,direct</code></pre>
</li>
<li><p>下载代码</p>
<p> 在任意目录 git clone <a href="https://github.com/taoshihan1991/go-fly.git">https://github.com/taoshihan1991/go-fly.git</a></p>
<p> 进入go-fly 目录</p>
</li>
<li><p>导入数据库 go run go-fly.go install</p>
</li>
<li><p>源码运行 go run go-fly.go server</p>
</li>
<li><p>源码打包 go build -o kefu 会生成kefu可以执行文件</p>
</li>
<li><p>二进制文件运行</p>
<p> linux: ./kefu server [可选 -p 8082 -d]</p>
<p> windows: kefu.exe server [可选 -p 8082 -d]</p>
</li>
<li><p>关闭程序</p>
<p> killall kefu</p>
</li>
</ul>
<p>程序正常运行后监听端口8081可以直接ip+端口8081访问</p>
<p>也可以配置域名访问反向代理到8081端口就能隐藏端口号</p>
<h3 id="客服对接">客服对接</h3>
<p>聊天链接</p>
<p><a href="http://127.0.0.1:8081/chatIndex?kefu_id=kefu2">http://127.0.0.1:8081/chatIndex?kefu_id=kefu2</a></p>
<p>弹窗使用</p>
<pre><code> (function(a, b, c, d) {
let h = b.getElementsByTagName(&#39;head&#39;)[0];let s = b.createElement(&#39;script&#39;);
s.type = &#39;text/javascript&#39;;s.src = c+&quot;/static/js/kefu-front.js&quot;;s.onload = s.onreadystatechange = function () {
if (!this.readyState || this.readyState === &quot;loaded&quot; || this.readyState === &quot;complete&quot;) d(c);
};h.appendChild(s);
})(window, document,&quot;http://127.0.0.1:8081&quot;,function(u){
KEFU.init({
KEFU_URL:u,
KEFU_KEFU_ID: &quot;kefu2&quot;,
})
});
</code></pre>
<h3 id="版权声明">版权声明</h3>
<p>当前项目是完整功能代码 , 但是仍然仅支持个人演示测试 , 不包含线上使用 ,禁止一切商用行为。
使用本软件时,请遵守当地法律法规,任何违法用途一切后果请自行承担.</p>
</div>
<script type='text/javascript'>
(function(a, b, c, d) {
let h = b.getElementsByTagName('head')[0];let s = b.createElement('script');
s.type = 'text/javascript';s.src = c+"/static/js/kefu-front.js";s.onload = s.onreadystatechange = function () {
if (!this.readyState || this.readyState === "loaded" || this.readyState === "complete") d(c);
};h.appendChild(s);
})(window, document,"http://127.0.0.1:8081",function(u){
KEFU.init({
KEFU_URL:u,
KEFU_KEFU_ID: "kefu2",
})
});
</script>
</body>
</html>

@ -2,7 +2,7 @@ package tmpl
import (
"github.com/gin-gonic/gin"
"github.com/taoshihan1991/imaptool/tools"
"goflylivechat/tools"
"html/template"
"net/http"
)
@ -41,7 +41,7 @@ func (obj *CommonHtml) Display(file string, data interface{}) {
t.Execute(obj.Rw, data)
}
//首页
// 首页
func PageIndex(c *gin.Context) {
if c.Request.RequestURI == "/favicon.ico" {
return
@ -52,7 +52,7 @@ func PageIndex(c *gin.Context) {
c.HTML(http.StatusOK, "index.html", gin.H{})
}
//登陆界面
// 登陆界面
func PageMain(c *gin.Context) {
nav := tools.FileGetContent("html/nav.html")
c.HTML(http.StatusOK, "main.html", gin.H{
@ -60,12 +60,12 @@ func PageMain(c *gin.Context) {
})
}
//客服界面
// 客服界面
func PageChatMain(c *gin.Context) {
c.HTML(http.StatusOK, "chat_main.html", nil)
}
//安装界面
// 安装界面
func PageInstall(c *gin.Context) {
if noExist, _ := tools.IsFileNotExist("./install.lock"); !noExist {
c.Redirect(302, "/login")
@ -73,7 +73,7 @@ func PageInstall(c *gin.Context) {
c.HTML(http.StatusOK, "install.html", nil)
}
//面板界面
// 面板界面
func PagePannel(c *gin.Context) {
c.HTML(http.StatusOK, "pannel.html", nil)
}

@ -2,7 +2,7 @@ package tmpl
import (
"github.com/gin-gonic/gin"
"github.com/taoshihan1991/imaptool/models"
"goflylivechat/models"
"html"
"html/template"
"net/http"

@ -2,18 +2,19 @@ package tmpl
import (
"github.com/gin-gonic/gin"
"github.com/taoshihan1991/imaptool/tools"
"goflylivechat/tools"
"net/http"
)
//登陆界面
// 登陆界面
func PageLogin(c *gin.Context) {
if noExist, _ := tools.IsFileNotExist("./install.lock"); noExist {
c.Redirect(302, "/install")
}
c.HTML(http.StatusOK, "login.html", nil)
}
//绑定界面
// 绑定界面
func PageBind(c *gin.Context) {
c.HTML(http.StatusOK, "bind.html", gin.H{})
}
}

@ -4,8 +4,8 @@ import (
"encoding/json"
"github.com/gin-gonic/gin"
"github.com/gorilla/websocket"
"github.com/taoshihan1991/imaptool/models"
"github.com/taoshihan1991/imaptool/tools"
"goflylivechat/models"
"goflylivechat/tools"
"log"
"time"
)

@ -4,8 +4,8 @@ import (
"encoding/json"
"github.com/gin-gonic/gin"
"github.com/gorilla/websocket"
"github.com/taoshihan1991/imaptool/common"
"github.com/taoshihan1991/imaptool/models"
"goflylivechat/common"
"goflylivechat/models"
"log"
"time"
)

@ -5,8 +5,8 @@ import (
"fmt"
"github.com/gin-gonic/gin"
"github.com/gorilla/websocket"
"github.com/taoshihan1991/imaptool/models"
"github.com/taoshihan1991/imaptool/tools"
"goflylivechat/models"
"goflylivechat/tools"
"log"
"net/http"
"strconv"
@ -85,7 +85,7 @@ func SendFlyServerJiang(title string, content string, domain string) string {
return ""
}
//定时给更新数据库状态
// 定时给更新数据库状态
func UpdateVisitorStatusCron() {
for {
visitors := models.FindVisitorsOnline()
@ -103,7 +103,7 @@ func UpdateVisitorStatusCron() {
}
}
//后端广播发送消息
// 后端广播发送消息
func WsServerBackend() {
for {
message := <-message

Loading…
Cancel
Save