1 Star 0 Fork 1.4K

wanghongyuan / V-IM

forked from 乐天 / V-IM 
加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
贡献代码
同步代码
取消
提示: 由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
Loading...
README

需要购买的阿里云的同学 请点击支持 阿里云优惠券2000元

灰产请离开(包括部署到国外服务器,香港服务器,诈骗的等非法勾当的),聊天记录会多处存储(包括用户本地),你清理不干净的,一经发现会把微信等信息提交公安部门。

请勿加作者微信为了问问题,我很忙,我把你拉群里,看看大家能不能解答,谢谢理解。

加微:zkp_java 务必备注:v-im 并且附上点赞的 gitee 用户名,不点赞不让加哦

doc 文件夹里面有uni-app手机版的apk,手机版源码微信联系。

测试地址:http://101.200.151.183/ PC端网页版,app也能连这个地址,需要在网页版上面注册用户。

exe下载:https://v-im-oss.oss-cn-beijing.aliyuncs.com/v-im%20Setup%201.1.5.exe

Create by [webstorm and intellij IDEA]

说明

1、此版本是个全新开发的版本,和之前的老版本除了界面相似,别的都不一样,完全不一样。主要用vue3.0 + ts开发。消息可靠性更高,如果发送人能够看到自己发送的消息,那么对方100%可达。 2、系统是在RuoYi-vue(https://gitee.com/y_project/RuoYi-Vue) 的基础上开发的,但是把数据库操作改成mybatis-plus,原先的是mybatis(如果你想完全迁移到RuoYi系统里面,可能还需要一定的工作量)。

结构

  1. v-im-pc 是聊天客户端,支持打包成exe 和 h5网页。
  2. v-im-server 是服务端代码,集成了ruoyi的模块。
  3. RuoYi-ui-vue3 是ruoyi管理系统的前端代码。
  4. doc 下面有数据库等。
  5. 1、2、3都是要启动的,务必先启动2

v-im-pc文档 https://juejin.cn/post/7267417634470953019

  1. 安装依赖命令:yarn 。
  2. 开发环境命令:npm run serve 和 npm run electron:serve。
  3. 打包exe安装文件:npm run electron:build,打包完成的文件在/dist_electron 下。
  4. 打包web文件:npm run build,打包完成的文件在/dist 下。
  5. 启动:npm run serve。

v-im-server文档

  1. 启动:直接run v-im-server 下的 VimApplication,不是ruoyi-admin下的 RuoYiApplication。
  2. 数据库配置在ruoyi-admin resources下的application-druid.yml。

RuoYi-ui-vue3文档

  1. 这里是管理后台,是若依默认的UI。
  2. 启动:npm run dev。
  3. 具体功能参考ruoyi

注意事项

  1. 如果出现electron 安装失败,Electron failed to install correctly,请参考此文章https://blog.csdn.net/XLL20001022/article/details/122777710
  2. 使用yarn 安装依赖,npm 不是很好用,尝试过,都不能打包成功。如果yarn 不能安装依赖成功,可以多试几次!
  3. 基于 t-io websocket 协议, 据说能支持百万级并发,但是此项目并没有进行此方面的测试,还请知晓 !
  4. 数据库mysql,缓存redis,消息聊天记录在redis里面存着,私聊key:message-{minUserID}-{maxUserId}(两个人的id肯定是大小值不一样),群聊key:message-{groupId},表im-message暂时没有用。
  5. 如果希望实现同一账号多端登录,可以将 src/main/java/com/ruoyi/tio/TioWsMsgHandler.java 77行注释掉
  6. 系统的通知功能使用的uni-push,需要去uni-cloud后台开通通知功能,因为使用了云空间服务。
  7. 现在系统不能发送离线通知,需要在手机设置两个地方 a> 系统设置-通知与状态栏-v-im-mobile 把所有的都选中,b>电池-更多-耗电行为-找的应用-允许后台行为。
  8. 要实现离线推送需要给每个厂家进行注册开发者对接,比较麻烦。

常见问题

  1. 如果出现 Parsing error: x-invalid-end-tag vue/no-parsing-error 类似的错误,可用用 webstorm 右键src 目录 Fix eslint problems,
  2. 安装不成功,请先执行 npm install node-sass。如果还是错误请多重试下!
  3. 很多同学安装electron失败,导致不能打包,可以尝试用cnpm或者yarn安装,或者多重试几次。
  4. 历史记录分页第一页数据不对问题:第一页是带发送给对方的未读消息,所以第一页可能是超过每页的分页记录。

截图

消息列表/聊天 好友 组织 群组 添加好友 手机 手机 手机 手机 手机 手机 手机 手机 手机 手机 手机 手机 手机 手机 手机

功能点

  1. 文本聊天
  2. 聊天表情
  3. 发送图片(http)
  4. 发送文件(http)
  5. 单聊
  6. 群聊
  7. 用户分组(后端支持)
  8. 离线消息(单聊+群聊,支持消息提醒)
  9. 聊天记录(单聊、群聊)
  10. 支持心跳检测,断线重连
  11. 使用SpringBoot security oauth2.0 支持单点登录。
  12. 好友添加。(新增)
  13. 群管理(新增)
  14. 带有管理后台(原ruoyi-vue)
  15. 树状组织机构
  16. PC端消息转发
  17. 手机语音消息
  18. 手机通知
  19. 截图(exe)

参考项目及技术

  1. RuoYi-vue(https://gitee.com/y_project/RuoYi-Vue)
  2. layIM(主要是聊天表情,文件处理方面)。
  3. 使用SpringBoot、oauth2.0、t-io 开发后端服务。
  4. vue3.0、element-plus、typescript开发前端。
  5. 界面高仿微信,如有侵权请告知。
  6. 其他:使用 fetch 发送ajax 请求,支持跨域,electron 支持打包成为exe,也支持linux 和 mac 目前还没测试,有条件的同学可以测试。

交流授权

  1. 如果您觉得好用,可以给点个star,或者给个捐赠。
  2. 如需定制或者私有化部署,请加微:zkp_java。
  3. 商用请捐赠并在捐赠【留言】里留下公司名称,没有留公司名商用视为侵权。

空文件

简介

V-IM(中文名:乐聊)基于JS的超轻量级聊天软件。前端:vue3.0、element plus、electron、TypeScript 实现的 PC&Web版聊天程序,主要适用于私有云项目内部聊天,企业内部管理通讯等功能,主要通讯协议websocket。支持web网页聊天实现。 服务端: springboot、tio、oauth2.0等技术。界面:高仿微信。 展开 收起
JavaScript
取消

发行版

暂无发行版

贡献者

全部

近期动态

加载更多
不能加载更多了
JavaScript
1
https://gitee.com/whymable/V-IM.git
git@gitee.com:whymable/V-IM.git
whymable
V-IM
V-IM
master

搜索帮助