395 Star 3.2K Fork 975

乐天 / V-IM

加入 Gitee
与超过 800 万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
取消
提示: 由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
Loading...
README.md

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

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

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系统里面,可能还需要一定的工作量)。 3、老版本在 old-master 分支。

结构

  1. v-im-pc 是客户端
  2. v-im-server 是服务端代码
  3. RuoYi-ui-vue3 是管理系统的前端代码
  4. doc 下面有数据库
  5. 1、2、3都是要启动的

v-im-pc文档

  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. 启动:num 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. 启动:num run dev。
  3. 具体功能参考ruoyi

注意事项

  1. 打包时候项目路径不能有中文,包括你 windows 用户都不能有中文字符,因为npm 缓存都是在用户目录下(如果原先的用户名是中文,再修改成英文也不好用,因为原先的npm包都还在中文目录下,可以新建个window 英文账号,登录新账号打包)。
  2. 使用yarn 安装依赖,npm 不是很好用,尝试过,都不能打包成功。如果yarn 不能安装依赖成功,可以多试几次!
  3. 基于 t-io websocket 协议, 据说能支持百万级并发,但是此项目并没有进行此方面的测试,还请知晓 !
  4. 数据库mysql,缓存redis,消息聊天记录在redis里面存着,私聊key:message-{minUserID}-{maxUserId}(两个人的id肯定是大小值不一样),群聊key:message-{groupId},表im-message暂时没有用。

常见问题

  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. 树状组织机构

登录测试

  1. admin/admin123,ry/admin123。

参考项目及技术

  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。

简介

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

V-IM

贡献者

全部

近期动态

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

搜索帮助