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

項目地址
項目簡介
MoChat, easy way to WeWork
MoChat 是開源的企業微信應用開發框架&引擎,是一套通用的企業微信管理系統,得益於 Hyperf 框架的優秀,MoChat 可提供超高性能的同時,也保持着極其靈活的可擴展性。
應用場景
可用於電商、金融、零售、餐飲服裝等服務行業的企業微信用戶,通過簡單的分流、引流轉化微信客戶為企業客戶,結合強大的后台支持,靈活的運營模式,建立企業與客戶的強聯系,讓企業的盈利模式有了多種不同的選擇。
功能特性
六大模塊助力企業營銷能力升級:
- 引流獲取:通過多渠道活碼獲取客戶,條理有序分類
- 客戶轉化:素材庫、歡迎語互動客戶,加強與客戶聯系
- 客戶管理:精准定位客戶,一對一標簽編輯,自定義跟蹤軌跡,流失客戶提醒與反饋
- 客戶群管理:於客戶的基礎,進一步獲取客戶裂變,自動拉群。集中管理,快速群發
- 聊天側邊欄:提高企業員工溝通效率,精准服務
- 企業風控:客戶聊天記錄存檔,並設立敏感詞庫、敏感詞報警,多方位跟進管理員工服務
業務架構
嚴格的分層來保證架構的靈活性

核心技術
- 前端技術棧:
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
運行系統
后端運行
# 目錄
git clone https://github.com/mochat-cloud/mochat.git
cd /path/to/mochat/api-server
# 安裝依賴
composer install
# 運行PHP服務
php bin/hyperf.php start
前端運行
# 進入項目目錄
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安裝必要依賴
cd /usr/local/src && wget https://mochatcloud.oss-cn-beijing.aliyuncs.com/deploy/CentOS-install.sh && ./CentOS-install.sh
- Nginx 配置:具體參考開發文檔
前端部署
當項目開發完畢,只需要運行一行命令就可以打包你的應用
# 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配置文件
聯系作者加入群

部分演示圖,持續更新









版權聲明
MoChat 開源版遵循 GPL-3.0 開源協議發布,並提供免費研究使用,但絕不允許修改后和衍生的代碼做為閉源的商業軟件發布和銷售!



