# IM即时聊天-php **Repository Path**: tomdev/im-instant-chat ## Basic Information - **Project Name**: IM即时聊天-php - **Description**: 即时聊天应用Raingad-IM后端代码,需要配合前端使用,可以为企业快速构建内部聊天应用。支持文本、文件、图片、语音、视频等消息格式,还支持点对点音视频聊天。 - **Primary Language**: PHP - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: https://im.raingad.com - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 239 - **Created**: 2022-11-19 - **Last Updated**: 2024-07-17 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # IM即时聊天 #### 介绍 IM后端代码,需要配合前端使用,本软件主要用于学习交流,开发的初衷旨在快速建立企业内部通讯系统,不能用于商业用途。 前端传送门:https://gitee.com/raingad/im-chat-front 体验地址:http://im.raingad.com/index.html 账号:13800000002 密码:123456 ······2-9都是 账号:13800000009 密码:123456 #### 支持功能 1. 单聊和群聊,新增消息管理器 2. 支持发送表情、图片、语音、视频和文件消息 3. 单聊支持消息已读未读的状态显示 4. 支持设置新消息声音提醒,浏览器通知 5. 支持部分Lemon-imui内功能设置 6. 支持文件、图片和绝大部分媒体文件在线预览 7. 群聊创建、删除和群成员管理、群公告、群禁言等 8. 可以置顶联系人,所有联系人可以设置消息免打扰 9. 全新支持增加音视频通话(一对一) > 移动端版本正在开发中哦,敬请期待! #### 最新更新 **2022年10月30日** 新增支持音视频通话 **2022年10月23日** 新增语音消息、视频消息 优化数据库消息表的 `extends` 字段为 `json` 格式 修复若干bug #### 软件架构 后端技术栈:`thinkphp6+workerman` 前端技术栈:`vue+Lemon-IMUI+element-UI` #### 安装教程 ##### 第一种方式 1. 克隆代码到本地: ``` git clone https://gitee.com/raingad/im-instant-chat.git ``` 2. 进入项目目录,执行: ``` composer install ``` 3. 进入 public\sql\database.sql 将数据库导入自己的数据库。 4. 进入项目根目录,修改 `example.env` 为 `.env` ,并修改数据库相应的参数。 ##### 第二种方式 1. 下载完整源码放到自己的服务器上[下载地址](https://gitee.com/raingad/im-instant-chat/releases/0.6.14)。 2. 开启伪静态,下面只展示nginx的,Apache的自己百度 ``` location / { if (!-e $request_filename){ rewrite ^(.*)$ /index.php?s=$1 last; break; } } ``` 3. 访问你的ip或者域名即可进入自定义安装向导。 PS:如需开启聊天文件存入oss,需要在 `.env` 中填写 `[OSS]` 参数信息,不填写默认使用本地文件系统。如果需要文件预览服务,还需填写 `[PREVIEW]` 一栏,具体查看 `example.env` 的配置说明。 #### 启动消息推送服务 因为是聊天软件需要用到websockt,所以我们需要启动workerman。 1. 进入项目根目录 运行 `./start.sh`,或者运行 `php start.php start -d` 即可运行消息服务。 2. 消息服务需要放行 8282 端口,如需修改,请修改 [ `app\push\start_gateway.php`] 中的 8282 端口。端口号根据情况需改,如果修改了端口号,需要将前端的程序修改并重新打包上传到项目的public目录下。 3. 更多关于workerman的使用,请进入[workerman官网](https://www.workerman.net/)官网进行查阅。 #### 安装部署服务 服务器要求: | 所需环境 | 版本 | 备注 | | --------- | ---- | ---- | | linux | >= 7.0 | 以下的版本未做测试 | | php | >= 7.1 | | | mysql | >= 5.7 | | | redis | >= 5.0 | | | workerman | >= 4.0 | 用于消息服务部署,仅支持linux | 作者提供本系统的安装服务,包括后端和前端部署到线上,保证项目的完美运行,188元/次,如有需要可以进群联系作者! #### 交流群 如果有什么问题,请留言,或者加入我们的QQ群! 创作不易,点个star吧 [QQ 交流群:336921267](https://jq.qq.com/?_wv=1027&k=jMQAt9lh).