Documentação | Capturas de tela | Demonstração |
OpenSCRM é um sistema de gerenciamento de tráfego de domínio privado WeChat empresarial de alta qualidade baseado em Go e React
Contamos com o docker-compose para iniciar o mysql e o redis. A API back-end do api-server é compilada e iniciada localmente, e a interface front-end do painel também é compilada e iniciada localmente.
docker-compose up
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/
Veja para detalhes: https://github.com/openscrm/dashboard
Painel de gerenciamento de serviço de arquivo de sessão Barra lateral Enterprise WeChat H5
Alta segurança : o Enterprise WeChat controla os dados confidenciais de todos os funcionários e clientes da empresa, como números de telefone, cargos, etiquetas de clientes, informações de contato, etc. Nossa equipe possui ampla experiência em segurança web para garantir a segurança do projeto.
Alto desempenho e alta estabilidade : Graças aos excelentes recursos de engenharia e aos recursos de controle de simultaneidade simples e eficazes do Go, o OpenSCRM tem alto desempenho e estabilidade comparáveis aos dos principais fornecedores de SaaS.
Priorize a legibilidade do código : Concordamos profundamente com as opiniões do Google sobre o gerenciamento de código. A conclusão do desenvolvimento do projeto é apenas o começo do projeto. Somente o código legível pode garantir a alta qualidade e eficiência das iterações posteriores. também é o objetivo de design da linguagem Go. Temos comentários de código muito completos e todos os códigos se esforçam para serem claros e fáceis de ler.
Fácil de desenvolver : Como um projeto de código aberto, para permitir que mais pessoas se beneficiem deste projeto, trabalhamos muito para tornar o projeto simples e fácil de usar. Fazemos apenas abstrações necessárias (MVC) e evitamos introduzir novos conceitos. Insistimos em ter o mínimo possível de dependências de middleware, contando apenas com Mysql e Redis. Por exemplo, implementamos a fila de atraso com base no Redis sem introduzir o Kafka, por exemplo, a recuperação de texto completo é implementada com base na recuperação de texto completo do Mysql8; ES.
Os desenvolvedores de Python, PHP e NodeJS podem usar este projeto com confiança. Muito trabalho foi feito neste projeto para torná-lo simples e muito fácil de começar.
├─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 segue o protocolo Apache2.0 e é gratuito para uso comercial
get all departments from wx failedClientError { Code: 60020, Msg: "not allow to access from your ip, 错误
Faça login no back-end do administrador do Enterprise WeChat->Segurança e gerenciamento->Ferramentas de gerenciamento->Sincronização da agenda de contatos->IP confiável da empresa Adicione um IP público que permita acesso à interface do Enterprise WeChat
O login de varredura do Enterprise WeChat precisa configurar o nome de domínio do endereço de login autorizado. Se o nome de domínio for inconsistente, este erro será solicitado. O site de demonstração usa minha configuração.
Faça login no back-end do administrador do Enterprise WeChat-> Gerenciamento de aplicativos-> Aplicativo-> Aplicativo autoconstruído (seu aplicativo) -> Login autorizado do Enterprise WeChat-> Domínio de retorno de chamada autorizado
Verifique a configuração do nginx docker/nginx/conf/conf.d/dashboard.conf
O endereço IP do host no docker é 172.17.0.1. Todas as portas de escuta padrão dos serviços do docker para o host. No arquivo de configuração, preencha 172.17.0.1 onde host é necessário.