Documentation | Captures d'écran | Démo |
OpenSCRM est un système de gestion du trafic de domaine privé WeChat d'entreprise de haute qualité basé sur Go et React.
Nous comptons sur docker-compose pour démarrer MySQL et Redis. L'API back-end du serveur api est compilée et démarrée localement, et l'interface frontale du tableau de bord est également compilée et démarrée localement.
docker-composer
http://localhost:9000/
https://go.dev/doc/install
conf/config.example.yaml -> conf/config.yaml
go run main.go
http://dashboard.dev.openscrm.cn:9000/
Voir pour plus de détails : https://github.com/openscrm/dashboard
Panneau de gestion du service d'archivage de session Barre latérale Enterprise WeChat H5
Haute sécurité : Enterprise WeChat contrôle les données sensibles de tous les employés et clients de l'entreprise, telles que les numéros de téléphone, les postes, les tags des clients, les coordonnées, etc. En cas de fuite, le coup porté à l'entreprise sera fatal. Notre équipe possède une vaste expérience en matière de sécurité Web pour assurer la sécurité des projets.
Hautes performances et haute stabilité : Grâce aux excellentes capacités d'ingénierie de Go et aux capacités de contrôle de concurrence simples et efficaces, OpenSCRM offre des performances et une stabilité élevées comparables à celles des principaux fournisseurs SaaS.
Donner la priorité à la lisibilité du code : nous sommes profondément d'accord avec le point de vue de Google sur la gestion du code. L'achèvement du développement du projet n'est que le début du projet. Seul le code lisible peut garantir la haute qualité et l'efficacité des itérations ultérieures. C'est aussi l'objectif de conception du langage Go. Nous avons des commentaires de code très complets, et tous les codes s'efforcent d'être clairs et faciles à lire.
Facile à développer : En tant que projet open source, afin de permettre à plus de personnes de bénéficier de ce projet, nous avons fait beaucoup de travail pour rendre le projet simple et facile à utiliser. Nous faisons uniquement les abstractions nécessaires (MVC) et évitons d'introduire de nouveaux concepts. Nous insistons pour avoir le moins de dépendances middleware possible, en nous appuyant uniquement sur Mysql et Redis. Par exemple, nous implémentons une file d'attente différée basée sur Redis sans introduire Kafka. Par exemple, la récupération de texte intégral est implémentée sur la base de la récupération de texte intégral Mysql8 sans introduire ; ES.
Les développeurs Python, PHP et NodeJS peuvent utiliser ce projet en toute confiance. Beaucoup de travail a été effectué dans ce projet pour le rendre simple et très facile à démarrer.
├─app
│ ├─callback 企业微信事件回调处理
│ │ ├─customer_event
│ │ ├─department_event
│ │ ├─group_chat_event
│ │ ├─msg_arch_event
│ │ ├─staff_event
│ │ └─tag_event
│ ├─constants 常量定义
│ ├─consumers 队列消费
│ ├─controller 控制器
│ ├─entities 消息实体,主要定义参数,请求,响应结构体
│ ├─middleware gin请求中间件
│ ├─models 数据库模型
│ ├─requests 请求定义
│ ├─responses 响应定义
│ ├─services 服务
│ ├─tasks 定时任务
├─bin 二进制文件
├─common 共同库
│ ├─app 基于Gin封装的常用请求响应处理函数
│ ├─delay_queue 基于Redis延迟队列
│ ├─ecode 错误码
│ ├─id_generator uuid生成
│ ├─log 日志
│ ├─redis redis操作库
│ ├─session session会话
│ ├─storage 存储
│ ├─util 常用工具函数
│ └─validator 请求验证
├─conf 配置文件
├─docker
│ ├─data
│ │ ├─dashboard
│ │ │ └─dist 管理后台构建的前端静态文件
│ │ ├─mysql
│ │ │ ├─conf mysql容器配置文件
│ │ │ └─db mysql容器数据文件
│ │ ├─nginx
│ │ │ ├─conf nginx容器配置文件
│ │ │ │ └─conf.d
│ │ │ └─logs
│ │ ├─redis
│ │ │ └─db redis容器数据文件
│ │ └─sidebar
│ │ └─dist 侧边栏构建的前端静态文件
│ └─lib 企业微信提供的会话存档动态链库
├─docs 文档
├─pkg 三方库
│ └─easywework 企业微信Api调用库
│ ├─errcodes 企业微信Api错误码
├─routers Gin路由
├─scripts 脚本
└─test 测试代码
https://github.com/openscrm/api-server/wiki/%E5%AE%89%E8%A3%85%E6%95%99%E7%A8%8B
docs目录包含postman导出文件,可方便调试api
OpenSCRM suit le protocole Apache2.0 et est gratuit pour un usage commercial
get all departments from wx failedClientError { Code: 60020, Msg: "not allow to access from your ip, 错误
Connectez-vous au backend de l'administrateur Enterprise WeChat->Sécurité et gestion->Outils de gestion->Synchronisation du carnet de contacts->Enterprise Trusted IP Ajoutez une adresse IP publique qui permet d'accéder à l'interface Enterprise WeChat.
La connexion à l'analyse Enterprise WeChat doit configurer le nom de domaine de l'adresse de connexion autorisée. Si le nom de domaine est incohérent, cette erreur s'affichera. Le site de démonstration utilise ma configuration. Vous devez créer votre propre application pour terminer la configuration appropriée.
Connectez-vous au backend de l'administrateur Enterprise WeChat-> Gestion des applications-> Application-> Application auto-construite (votre application) -> Connexion autorisée Enterprise WeChat-> Domaine de rappel autorisé
Vérifiez la configuration de nginx docker/nginx/conf/conf.d/dashboard.conf
L'adresse IP de l'hôte dans Docker est 172.17.0.1. Tous les ports d'écoute par défaut des services Docker sur l'hôte, remplissez 172.17.0.1 là où l'hôte est requis.