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
開源協議發佈,並提供免費研究使用,但絕不允許修改後和衍生的代碼做爲閉源的商業軟件發佈和銷售!