1. 程式人生 > >MoChat - 國內首款完全開源的 PHP 企業微信管理系統正式釋出

MoChat - 國內首款完全開源的 PHP 企業微信管理系統正式釋出

MoChat —— 讓企業微信開發更簡單

![輸入圖片說明](https://cdn.learnku.com/uploads/images/202101/18/1638/BCtJpMIwZ6.jpeg!large) ### 專案地址 * Github: [https://github.com/mochat-cloud/mochat](https://github.com/mochat-cloud/mochat "https://github.com/mochat-cloud/mochat") * Gitee: [https://gitee.com/mochat/mochat](https://gitee.com/mochat/mochat "https://gitee.com/mochat/mochat") ### 專案簡介 > MoChat, easy way to WeWork MoChat 是開源的企業微信應用開發框架&引擎,是一套通用的企業微信管理系統,得益於 `Hyperf` 框架的優秀,MoChat 可提供超高效能的同時,也保持著極其靈活的可擴充套件性。 #### 應用場景 可用於電商、金融、零售、餐飲服裝等服務行業的企業微信使用者,通過簡單的分流、引流轉化微信客戶為企業客戶,結合強大的後臺支援,靈活的運營模式,建立企業與客戶的強聯絡,讓企業的盈利模式有了多種不同的選擇。 #### 功能特性 六大模組助力企業營銷能力升級: * 引流獲取:通過多渠道活碼獲取客戶,條理有序分類 * 客戶轉化:素材庫、歡迎語互動客戶,加強與客戶聯絡 * 客戶管理:精準定位客戶,一對一標籤編輯,自定義跟蹤軌跡,流失客戶提醒與反饋 * 客戶群管理:於客戶的基礎,進一步獲取客戶裂變,自動拉群。集中管理,快速群發 * 聊天側邊欄:提高企業員工溝通效率,精準服務 * 企業風控:客戶聊天記錄存檔,並設立敏感詞庫、敏感詞報警,多方位跟進管理員工服務 #### 業務架構 嚴格的分層來保證架構的靈活性 ![架構](https://cdn.learnku.com/uploads/images/202101/18/1638/4jLhEhwtNs.jpeg!large "mochat微信.png") #### 核心技術 * 前端技術棧: `Vue`、`Vuex`、`Vant`、`Ant Design of Vue` * 後端技術棧: `PHP`、`MySQL`、`Redis`、`Hyperf` ### 環境部署 #### 準備工作 ``` PHP >= 7.2 (推薦7.4版本) Swoole >= 4.5 Composer MySQL >= 5.7 Redis FFmpeg Node.js >= 10 ``` #### 執行系統 ##### 後端執行 ```bash # 目錄 git clone https://github.com/mochat-cloud/mochat.git cd /path/to/mochat/api-server # 安裝依賴 composer install # 執行PHP服務 php bin/hyperf.php start ``` ##### 前端執行 ```bash # 進入專案目錄 cd /path/to/mochat/dashboard # 安裝依賴 yarn install # 編譯生成dist yarn run build ``` ##### 必要配置 1、後端配置執行指令碼 - `php bin/hyperf.php mc:init`,根據提示完成配置 2、前端配置 - 修改 .env 中的配置 VUE_APP_API_BASE_URL= 介面地址 #### 部署系統 ##### 後端部署 - Docker:推薦根據`api-server/Dockerfile`使用K8S部署 - Shell: 使用`linux-install.sh`安裝必要依賴 ```shell script cd /usr/local/src && wget https://mochatcloud.oss-cn-beijing.aliyuncs.com/deploy/CentOS-install.sh && ./CentOS-install.sh ``` - Nginx 配置:具體參考開發文件 ##### 前端部署 當專案開發完畢,只需要執行一行命令就可以打包你的應用 ```bash # dashboard 打包正式環境 yarn run build # sidebar 打包正式環境 yarn run build ``` 構建打包成功之後,會在根目錄生成 `dist` 資料夾,裡面就是構建打包好的檔案,通常是 `.js` 、`.css`、`index.html` 等靜態檔案。 通常情況下 `dist` 資料夾的靜態檔案釋出到你的 `nginx` 或者靜態伺服器即可,其中的 `index.html` 是後臺服務的入口頁面。 ### 專案介紹 #### 檔案結構 ``` . ├── api-server------------------------------------------ 後端介面程式碼 ├── dashboard------------------------------------------- 管理後臺前端程式碼 ├── sidebar--------------------------------------------- 聊天側邊欄前端程式碼 └── workbench------------------------------------------- 工作臺前端程式碼 ``` ##### 後端結構 ``` . ├── app │ ├── Action------------------------------------------- 控制器 │ ├── Command------------------------------------------ 命令列 │ ├── Constants---------------------------------------- 列舉 │ ├── Contract----------------------------------------- 契約 │ ├── Listener----------------------------------------- 監聽 │ ├── Logic-------------------------------------------- 邏輯層 │ ├── Middleware--------------------------------------- 中介軟體 │ ├── Model-------------------------------------------- 模型層 │ ├── Process------------------------------------------ (消費)程序 │ ├── QueueService------------------------------------- 非同步列隊 │ ├── Service------------------------------------------ 服務層 │ ├── Task--------------------------------------------- 任務 │ ├── Tool--------------------------------------------- 工具 ├── plugins--------------------------------------------- 外掛 │ ├── archive------------------------------------------ 外掛歸檔 │ └── vendor------------------------------------------- 外掛程式碼 ├── public ├── bin ├── composer.json ├── composer.lock ├── config ├── docker-compose.sample.yml ├── docker-entrypoint.sh ├── Dockerfile ├── migrations ├── package.json ├── phpstan.neon ├── phpunit.xml ├── README.MD ├── runtime ├── seeders ├── storage ├── test └── vendor ``` ##### 前端結構 ``` dashboard 和 sidebar 專案結構類似 . ├── README.md------------------------------------------- 專案說明 ├── babel.config.js------------------------------------- babel配置檔案 ├── config │   ├── plugin.config.js-------------------------------- 外掛配置檔案 │   └── themePluginConfig.js---------------------------- 主題配置檔案 ├── jest.config.js ├── jsconfig.json ├── package.json ├── postcss.config.js ├── public │   ├── favicon.ico------------------------------------- 瀏覽器icon │   └── index.html-------------------------------------- Vue 入口模板 ├── src │   ├── App.vue----------------------------------------- Vue 模板入口 │   ├── api--------------------------------------------- Api ajax 等 │   ├── assets------------------------------------------ 本地靜態資源 │   ├── components-------------------------------------- 業務通用元件 │   ├── core-------------------------------------------- 專案引導, 全域性配置初始化,依賴包引入等 │   ├── global.less------------------------------------- 全域性樣式 │   ├── layouts----------------------------------------- 控制器 │   ├── main.js----------------------------------------- Vue 入口 JS │   ├── router------------------------------------------ Vue-Router │   ├── store------------------------------------------- Vuex │   ├── utils------------------------------------------- 工具庫 │   └── views------------------------------------------- 業務頁面入口和常用模板 ├── vue.config.js--------------------------------------- Vue主配置 └── webstorm.config.js---------------------------------- ide配置檔案 ``` ### 聯絡作者加入群 ![輸入圖片說明](https://cdn.learnku.com/uploads/images/202101/18/1638/gcnCERWA1u.png!large "mochat微信.png") ### 部分演示圖,持續更新 ![輸入圖片說明](https://cdn.learnku.com/uploads/images/202101/18/1638/20WV5msdyw.jpeg!large "demo演示.png") ![輸入圖片說明](https://cdn.learnku.com/uploads/images/202101/18/1638/mSPu3dCfNY.jpeg!large "demo演示.png") ![輸入圖片說明](https://cdn.learnku.com/uploads/images/202101/18/1638/tyx3cnDW5L.jpeg!large "demo演示.png") ![輸入圖片說明](https://cdn.learnku.com/uploads/images/202101/18/1638/NI5uGbQkKH.jpeg!large "demo演示.png") ![輸入圖片說明](https://cdn.learnku.com/uploads/images/202101/18/1638/q2d22fisWm.jpeg!large "demo演示.png") ![輸入圖片說明](https://cdn.learnku.com/uploads/images/202101/18/1638/ITEHAaIe4a.jpeg!large "demo演示.png") ![輸入圖片說明](https://cdn.learnku.com/uploads/images/202101/18/1638/OC1H5n2Tku.jpeg!large "demo演示.png") ![輸入圖片說明](https://cdn.learnku.com/uploads/images/202101/18/1638/DEssOwcgBI.jpeg!large "demo演示.png") ![輸入圖片說明](https://cdn.learnku.com/uploads/images/202101/18/1638/3ray4wwl4a.jpeg!large "demo演示.png") ### 版權宣告 MoChat 開源版遵循 [`GPL-3.0`](https://github.com/mochat-cloud/mochat/blob/main/LICENSE "GPL-3.0") 開源協議釋出,並提供免費研究使用,但絕不允許修改後和衍生的程式碼做為閉源的商業軟體釋出和