整体的流程图如下:

 

[Go]GO语言实战项目-在线WEB客服GO-FLY即时通讯管理系统架构_编程开发

访客首次访问是通过websocket ,注册成一个新的用户 ,websocket的连接存储在全局变量clientList这个map里面  ,  key就是访客id ,value是连接

客服登陆也是通过websocket,把连接存储在全局变量kefuList这个map里 , key是客服id

http和websocket的调用中,都可以直接访问到两个全局变量

获取全局变量里面的连接进行数据的推送

github地址:

https://github.com/taoshihan1991/go-fly  欢迎star

测试地址:

https://gofly.sopans.com/  或者直接点击本页面的与我交流

 

项目界面:

[Go]GO语言实战项目-在线WEB客服GO-FLY即时通讯管理系统架构_Go语言_02

[Go]GO语言实战项目-在线WEB客服GO-FLY即时通讯管理系统架构_Go语言_03

[Go]GO语言实战项目-在线WEB客服GO-FLY即时通讯管理系统架构_编程开发_04

[Go]GO语言实战项目-在线WEB客服GO-FLY即时通讯管理系统架构_Go语言_05

[Go]GO语言实战项目-在线WEB客服GO-FLY即时通讯管理系统架构_编程开发_06