项目简介
本项目(wechat-im)是基于微信小程序框架开发的即时通讯系统,为开发者提供功能丰富、易于扩展的即时通讯解决方案。系统借助WebSocket实现实时通信,支持文本、图片、语音消息发送,有良好的用户体验与丰富的UI交互设计。
项目的主要特性和功能
- 实时通信:运用WebSocket实现即时通讯,涵盖会话列表、会话页面及好友页面。
- 消息类型丰富:支持发送文本、图片、语音消息,且输入法支持emoji表情。
- 多媒体支持:支持拍照、从图库选图以及图片预览。
- 自定义配置:可配置录制语音的最短和最长时间,支持自定义事件。
- 消息排序与回弹:聊天消息按时间排序,发送消息后页面自动回弹到最底部。
- 时间气泡优化:优化时间气泡显示逻辑,相邻信息间隔大于5分钟时显示后者信息的时间。
- 会话状态展示:在页面最上方展示会话状态的UI。
- 消息状态管理:支持消息发送中、成功、失败的状态更新,具备重发功能。
- 文件存储优化:实现文件存储算法,确保有限存储空间内语音和图片文件为最新。
安装使用步骤
第一步:导入项目
- 下载项目源码并解压。
- 打开微信开发者工具,选择“导入项目”,选中解压后的项目文件夹。
第二步:配置WebSocket服务
- 打开
app.js
文件,将如下配置中的URL修改为本地网络的IP地址及固定端口号8001:javascript this.imWebSocket.createSocket({url: 'ws://10.4.97.87:8001'});
- 在项目根目录下运行以下命令安装依赖:
bash npm install
- 运行以下命令启动WebSocket服务:
bash gulp
第三步:运行项目
- 在微信开发者工具中点击“编译”并运行项目。
- 按需进行调试和测试。
注意事项
- 目前项目中WebSocket所有功能仅供学习和参考,若需商用,请自行开发。
- 目前不支持群聊功能,头像旁未展示成员昵称。
- 本地未存储历史聊天消息,若需实现此功能,请自行开发服务器存储逻辑。
- 目前不支持以插件方式使用。
资源链接
- 文档:详细文档链接
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】