التوثيق | لقطات العرض التوضيحي |
OpenSCRM هو نظام إدارة حركة مرور المجال الخاص WeChat للمؤسسات عالي الجودة يعتمد على Go و React
نحن نعتمد على docker-compose لبدء MySQL وRedis. يتم تجميع واجهة برمجة التطبيقات الخلفية لخادم API وبدء تشغيلها محليًا، ويتم أيضًا تجميع الواجهة الأمامية للوحة المعلومات وبدء تشغيلها محليًا.
عامل الميناء يؤلف
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/
راجع للحصول على التفاصيل: https://github.com/openscrm/dashboard
لوحة إدارة خدمة أرشيف الجلسة Enterprise WeChat H5 الشريط الجانبي
أمان عالي : يتحكم Enterprise WeChat في البيانات الحساسة لجميع موظفي وعملاء الشركة، مثل أرقام الهواتف والمناصب وعلامات العملاء ومعلومات الاتصال وما إلى ذلك. وفي حالة التسريب، ستكون الضربة الموجهة للشركة قاتلة. يتمتع فريقنا بخبرة واسعة في مجال أمان الويب لضمان أمان المشروع.
أداء عالي وثبات عالي : بفضل القدرات الهندسية الممتازة لـ Go وإمكانيات التحكم في التزامن البسيطة والفعالة، يتمتع OpenSCRM بأداء وثبات عاليين يمكن مقارنتهما بأداء كبار موردي SaaS.
إعطاء الأولوية لقراءة التعليمات البرمجية : نحن نتفق بشدة مع آراء Google بشأن إدارة التعليمات البرمجية. إن إكمال تطوير المشروع هو مجرد بداية المشروع. ويكمن المزيد من العمل في الصيانة والتكرار. فقط التعليمات البرمجية القابلة للقراءة هي التي يمكنها ضمان الجودة والكفاءة العالية للتكرارات اللاحقة هو أيضًا هدف التصميم للغة Go. لدينا تعليقات كاملة على التعليمات البرمجية، وتسعى جميع الرموز إلى أن تكون واضحة وسهلة القراءة.
سهل التطوير : كمشروع مفتوح المصدر، من أجل السماح لمزيد من الأشخاص بالاستفادة من هذا المشروع، قمنا بالكثير من العمل لجعل المشروع بسيطًا وسهل الاستخدام. نحن نقوم فقط بالتجريدات الضرورية (MVC) ونتجنب تقديم مفاهيم جديدة. نحن نصر على وجود أقل عدد ممكن من تبعيات البرامج الوسيطة، والاعتماد فقط على Mysql وRedis، على سبيل المثال، نقوم بتنفيذ قائمة الانتظار المؤجلة بناءً على Redis دون تقديم Kafka، على سبيل المثال، يتم تنفيذ استرجاع النص الكامل بناءً على استرجاع النص الكامل Mysql8 دون تقديمه إس.
يمكن لمطوري Python وPHP وNodeJS استخدام هذا المشروع بثقة، وقد تم إنجاز الكثير من العمل في هذا المشروع لتسهيل البدء.
├─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 بروتوكول Apache2.0 وهو مجاني للاستخدام التجاري
get all departments from wx failedClientError { Code: 60020, Msg: "not allow to access from your ip, 错误
قم بتسجيل الدخول إلى الواجهة الخلفية لمسؤول Enterprise WeChat->الأمان والإدارة->أدوات الإدارة->مزامنة دفتر جهات الاتصال->عنوان IP الموثوق به للمؤسسة أضف عنوان IP عام يسمح بالوصول إلى واجهة Enterprise WeChat
يحتاج تسجيل الدخول إلى فحص WeChat للمؤسسات إلى تكوين اسم مجال عنوان تسجيل الدخول المعتمد. إذا كان اسم المجال غير متسق، فستتم المطالبة بهذا الخطأ. يستخدم الموقع التجريبي التكوين الخاص بي.
قم بتسجيل الدخول إلى الواجهة الخلفية لمسؤول Enterprise WeChat->إدارة التطبيقات->التطبيق->التطبيق الذاتي (تطبيقك)->تسجيل الدخول المعتمد لـ WeChat للمؤسسة->مجال رد الاتصال المعتمد
تحقق من تكوين nginx docker/nginx/conf/conf.d/dashboard.conf
عنوان IP للمضيف في عامل الإرساء هو 172.17.0.1. جميع منافذ الاستماع الافتراضية لخدمات عامل الإرساء للمضيف، في ملف التكوين، املأ 172.17.0.1 حيث يكون المضيف مطلوبًا.