XuqmGroup
afb57a5d5f
feat: ops应用列表支持租户筛选 + 返回租户名称 + 服务按类型展示
...
- AppRepository: 新增 JOIN 查询,返回应用+租户名称
- OpsService: listApps 支持 tenantId 筛选,getAppDetail 按 serviceType 去重
- OpsController: listApps 新增 tenantId 可选参数
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-16 00:24:10 +08:00
XuqmGroup
10f0043f15
License服务改造:平台无关、ops管理最大设备数、有效期不可变
...
- LICENSE审批只创建1条FeatureServiceEntity记录(不分平台)
- FeatureServiceManager扩展平台无关查询到LICENSE
- LicenseServiceClient新增getAppLicenseStatus/updateMaxDevices方法
- OpsController新增license管理接口(GET状态、PUT最大设备数)
- AppLicenseService.update中expiresAt一旦设置不可修改
- 审批流程支持传入expiresAt参数
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-15 22:38:46 +08:00
XuqmGroup
bc1165d22e
Align license service with app model
2026-05-15 21:42:10 +08:00
XuqmGroup
d5b8f03996
Fix license service activation visibility
2026-05-15 21:25:58 +08:00
XuqmGroup
7ce4d728cc
Use auth domain for license files
2026-05-15 21:09:24 +08:00
XuqmGroup
acfc2cbfbe
Add license service and tenant integration
2026-05-15 21:00:24 +08:00
XuqmGroup
b24e3669cb
一大波改动
2026-05-15 16:47:22 +08:00
XuqmGroup
1a18925034
feat: 厂商应用商店提交功能完善及push用户管理
...
update-service:
- 修复华为 appId 解析 NPE(支持直接从响应体顶层读取 value 字段)
- 修复 OPPO 更新描述不足5字符时自动补空格
- 修复 VIVO 签名中文字符需 URL 编码
- 修复 RestTemplate 无超时(30s连接/5min读取)
- AppVersionEntity 添加 grayCallbackUrl 字段
tenant-service:
- FeatureServiceController switch 添加 FILE 分支(修复编译错误)
- FeatureServiceManager 添加 buildFileConfig 方法
- AppController 添加应用用户列表代理端点
- AppUserClient 新增 IM/Push 用户列表客户端
push-service:
- 新增 PushUserEntity/PushUserRepository/PushAccountService
- 新增 PushAuthController(内部鉴权接口)
- PushManagementController 添加用户管理接口
- PushAppSecretClient 对接 tenant-service 鉴权
im-service:
- ImAccountRepository/ImAccountService 添加用户搜索接口
- ImAdminController 添加管理端用户列表
- InternalPresenceController 完善在线状态接口
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-14 23:40:35 +08:00
XuqmGroup
71929fef67
docs(deploy): 添加完整的部署文档和配置示例
...
- 新增 compose.production.yaml 和 compose.production.server.yaml 部署配置
- 添加 nginx.dev.xuqinmin.com.conf 和 nginx.sentry.xuqinmin.com.conf 反向代理配置
- 创建详细的部署指南文档 deploy/README.md,涵盖架构设计和部署步骤
- 添加前端访问文档 web/README.md,包含线上地址和接口说明
- 补充平台文档总览 README.md,整合各模块文档入口
- 配置多服务容器化部署,包括 tenant-service、im-service、push-service 等
- 设置外部数据库和 Redis 连接配置,确保服务间正确通信
- 配置 WebSocket 和 API 路由转发规则,支持实时通信和版本更新服务
2026-05-09 14:53:42 +08:00
XuqmGroup
cf2013a52d
feat(im): 添加平台事件通知功能支持应用审核状态实时更新
...
- 新增 ImPlatformEventController 提供令牌获取接口
- 新增 InternalImPlatformEventController 处理内部通知请求
- 实现 ImPlatformEventService 核心服务逻辑包括令牌签发和消息推送
- 添加 StoreReviewImNotifier 在更新服务中触发审核状态变更通知
- 在前端平台中集成实时审核状态更新功能
- 配置各项目环境版本管理文件 (.java-version, .nvmrc)
- 更新 Docker 忽略文件和 Maven 配置以优化构建流程
2026-05-08 18:32:46 +08:00
XuqmGroup
dc1ada94ea
docs(deploy): 添加部署文档和安全设计规范
...
- 新增 XuqmGroup 部署文档,包含部署方案、架构建议和部署步骤
- 添加安全设计规范,涵盖密码安全、AppSecret验证和服务端API认证
- 补充平台REST API规范,定义Server-to-Server调用接口和错误码
- 创建Java IM服务端SDK计划文档,规划Maven包发布和接口实现
2026-05-08 18:32:00 +08:00
XuqmGroup
0385b2010a
feat(update): 添加应用更新检查功能支持用户ID参数
...
- 在UpdateApi接口中新增可选的userId查询参数
- 新增UpdateSDK对象用于统一管理应用更新逻辑
- 实现应用版本检查、下载安装和APK文件处理功能
- 添加下载URL规范化处理逻辑
- 在Flutter SDK中新增update模块实现跨平台更新功能
- 在iOS SDK中新增UpdateSDK类提供应用更新检查接口
- 支持Android和iOS平台的应用商店跳转功能
- 添加React Native SDK的更新检查和插件注册功能
- 实现RN Bundle的检查、下载和缓存机制
2026-05-08 12:00:33 +08:00
XuqmGroup
3e55e9d9b6
fix: expose appKey on service activation requests
2026-05-08 10:22:39 +08:00
XuqmGroup
493bb73f5a
feat: use appKey as app identifier in tenant service
2026-05-08 10:09:22 +08:00
XuqmGroup
77dafd76bf
chore: sync local changes
2026-05-07 19:39:42 +08:00
XuqmGroup
a408b2b39a
feat(push): 添加推送服务功能支持
...
- 新增推送相关的类型定义,包括消息类型、聊天类型、推送配置等接口
- 实现 HarmonyOS 推送 SDK,集成 HarmonyOS NEXT Push Kit 服务
- 实现 iOS 推送 SDK,支持 APNS 推送注册和消息接收
- 添加服务器端 APNS 推送提供商,支持 JWT 认证和推送消息发送
- 添加服务器端 HarmonyOS 推送提供商基础框架
- 集成推送配置加载和路由功能,支持多渠道推送分类管理
2026-05-05 22:26:32 +08:00
XuqmGroup
824f11c7ea
feat(push): 添加推送SDK和消息服务实现
...
- 实现了 Android 推送 SDK,支持华为、小米、Oppo、Vivo、荣耀、FCM 等厂商推送
- 添加了推送配置管理和设备注册功能
- 实现了推送令牌管理和用户绑定功能
- 添加了消息发送、撤回、编辑等核心消息服务功能
- 实现了单聊和群聊消息历史记录管理
- 添加了消息读取回执和群组消息状态同步
- 实现了消息过滤、黑名单和权限控制
- 添加了离线消息推送和消息预览功能
- 实现了消息 Webhook 回调机制
2026-05-05 22:16:11 +08:00
XuqmGroup
249da309a3
feat(push): 添加推送服务功能支持
...
- 实现了 ConversationViewModel 来管理对话列表的刷新和状态
- 集成了 FCM 推送服务支持并实现了自动令牌获取机制
- 构建了完整的 PushSDK 推送系统,支持华为、小米、OPPO、VIVO、荣耀等厂商推送
- 添加了推送配置管理和设备注册/注销功能
- 实现了跨平台推送令牌管理和服务绑定逻辑
- 扩展了服务器端功能服务管理器以支持推送服务激活请求流程
2026-05-05 22:02:47 +08:00
XuqmGroup
99d6a8d6a4
feat(push): 添加多厂商推送集成支持
...
- 实现了华为 HMS 推送服务集成
- 实现了小米推送服务集成
- 实现了 OPPO 推送服务集成
- 实现了 vivo 推送服务集成
- 实现了荣耀推送服务集成
- 实现了 FCM 推送服务集成
- 添加了统一的厂商推送接口和检测机制
- 添加了推送配置 API 和存储管理
- 添加了推送令牌管理和设备注册功能
- 添加了模拟器环境的推送测试用例
2026-05-05 17:54:59 +08:00
XuqmGroup
d2dea0c332
feat(android-sdk): 添加完整的IM客户端SDK实现
...
- 实现了Android SDK的完整IM功能接口,包括消息、群组、好友、会话等核心功能
- 添加了消息收发、历史记录、撤回编辑等完整的消息操作能力
- 实现了群组管理功能,包括创建、成员管理、权限设置等操作
- 添加了好友关系链管理,支持添加、删除、分组等操作
- 实现了会话管理功能,包括置顶、免打扰、已读状态等
- 添加了黑名单、资料管理、搜索等辅助功能
- 补齐了批量操作接口,提升客户端操作效率
- 实现了WebSocket连接管理和事件监听机制
- 添加了离线消息同步和状态管理功能
2026-05-02 22:57:55 +08:00
XuqmGroup
dd465becea
feat(sdk): 更新 SDK 设计文档和 API 重构
...
- 添加 expiresAt 和 refreshUserSig 参数支持自动续签
- 修改 PushSDK 初始化方式,自动完成设备注册和厂商初始化
- 调整过期续签策略,从提前 15 分钟改为提前 5 分钟触发
- 重构 RN SDK 文档结构,简化安装和使用方式
- 更新统一登录流程,支持 profile 信息传递
- 添加 IM 数据库自动隔离功能
- 修复 Android 群消息聚合问题
- 补充自动化测试验证和错误处理机制
2026-05-01 21:27:39 +08:00
XuqmGroup
f6c06db04b
feat(deploy): 添加生产环境部署配置和联调环境切换功能
...
- 新增 .env.production.example 配置文件,包含所有微服务的数据库和Redis配置
- 添加 compose.production.yaml Docker Compose部署文件,定义web和各服务容器
- 实现Android SDK环境切换功能,支持外部服务和本地联调模式切换
- 添加推送注册状态管理和接收开关设置界面
- 集成演示服务的应用密钥客户端和认证服务实现
- 完善文档说明各SDK模块的集成和使用方法
2026-04-30 11:47:01 +08:00
XuqmGroup
32b0e49e61
docs(deploy): 添加生产环境部署配置示例和部署文档
...
- 新增 .env.production.example 环境变量配置模板
- 添加 compose.production.yaml Docker Compose 部署配置
- 创建 web.Dockerfile 前端构建部署文件
- 编写详细的 README.md 部署文档,涵盖架构、配置、步骤等内容
- 添加离线推送架构设计文档
- 更新 IM 多平台进度跟踪文档
2026-04-30 09:49:05 +08:00
XuqmGroup
f5a1eb4470
docs(sdk): 添加 React Native SDK 文档和 Android/HarmonyOS 发版脚本
...
- 新增 XuqmGroup React Native SDK 使用文档,包含安装、初始化、HTTP客户端、IM模块、推送模块、版本管理等功能说明
- 添加 Android Gradle 发版任务脚本,支持构建发布 APK 并上传到更新服务
- 添加 HarmonyOS hvigorw 发版任务脚本,支持 HAP 包构建和上传功能
- 实现多平台版本检查、自动重连、灰度发布等发版流程自动化
- 集成商店提交、定时发布、Webhook 回调等发布后处理功能
2026-04-29 17:35:52 +08:00
XuqmGroup
d13c6c9bc5
docs(api): 添加联调接口文档并实现功能服务管理
...
- 创建了完整的 API 联调文档,包含各服务地址、ID 约定和鉴权规则
- 实现了 FeatureServiceManager 用于管理服务激活和配置功能
- 添加了安全配置确保各服务间正确的身份验证机制
- 定义了统一的响应格式和错误码处理规范
- 集成了 IM、推送和更新服务的管理接口实现
2026-04-29 16:07:22 +08:00
XuqmGroup
d7f5fd02c2
docs(server): 添加服务器信息记录和联调接口文档
...
- 创建信息记录文档,包含项目管理要求、产物范围、Git仓库、制品仓库信息
- 添加服务器部署信息,包括应用服务器、MySQL/Redis服务器、Jenkins服务配置
- 记录邮件服务、DNS/HTTPS证书配置及安全备注
- 创建API联调文档,包含线上入口、ID约定、初始化管理员账号信息
- 添加统一响应格式、常见错误码、鉴权规则说明
- 提供核心接口清单,涵盖tenant-service、im-service、push-service等服务
- 补充curl示例,包含运营平台登录、IM登录、会话管理等操作示例
- 实现会话控制器,支持置顶、免打扰、标记已读、草稿等功能
- 添加全局异常处理器,统一处理业务异常和参数校验错误
- 创建IM管理控制器,提供用户管理、好友请求、黑名单等管理功能
2026-04-29 12:33:25 +08:00
XuqmGroup
962e1dc722
feat(sample): 添加示例应用的核心功能模块
...
- 实现环境配置管理,支持外部和本地主机模式切换
- 集成Demo API接口,包含登录、注册、文件上传等功能
- 构建附件处理仓库,支持图片、视频、音频和文件发送
- 开发认证仓库,管理用户会话和IM令牌刷新机制
- 添加语音录制功能,支持实时音频消息录制
- 创建依赖注入容器,统一管理应用组件实例
- 实现登录界面,提供用户认证交互功能
- 开发聊天界面,集成消息收发和媒体处理功能
2026-04-28 16:08:07 +08:00
XuqmGroup
bc329ec566
feat(chat): 添加聊天界面和会话管理功能
...
- 实现了本地IM缓存功能,支持会话、消息历史和草稿的存储
- 开发了聊天界面UI组件,包含消息列表、输入框和搜索功能
- 创建了聊天相关的ViewModel,处理消息收发和状态管理
- 构建了会话列表界面,支持置顶、免打扰和删除操作
- 集成了群组功能,实现群聊管理和群设置界面
- 添加了实时消息推送和会话状态同步机制
2026-04-27 23:41:58 +08:00
XuqmGroup
201f3d566f
feat(sdk): 添加认证仓库和登录会话管理功能
...
- 新增 AuthRepository 处理用户认证和加密存储
- 实现 SDK 登录会话管理和自动通知模块
- 添加 IM SDK 登录集成和会话传递
- 更新 API 响应结构支持 userSig 字段
- 添加文件存储服务和上传功能
- 完善文档说明 SDK 架构和集成方式
2026-04-27 19:23:11 +08:00
XuqmGroup
8f95100c7a
feat(sample): 添加示例应用的核心功能模块
...
- 集成依赖管理配置文件 libs.versions.toml,统一管理项目依赖版本
- 实现演示 API 接口定义,包含登录、注册、用户管理等 RESTful 端点
- 创建认证仓库 AuthRepository,处理用户会话管理和加密存储
- 开发登录和注册界面,实现用户身份验证流程
- 构建聊天界面 ChatScreen,支持消息收发和历史记录显示
- 实现联系人管理功能,包含好友搜索和添加删除操作
- 添加会话列表界面,展示最近聊天记录和未读消息提示
2026-04-27 19:00:54 +08:00
XuqmGroup
526f3cf944
feat: add demo-service, file-service; SDK remote config endpoint; IM fuzzy search
...
- demo-service (port 8085): auth, user profile, demo-to-IM token bridge
- file-service (port 8086): SHA-256 dedup upload, ImageIO thumbnails, 30-day reclaim
- tenant-service: GET /api/sdk/config?appId returns imWsUrl/fileServiceUrl/features
- im-service: GET /api/im/admin/users/search fuzzy match by userId or nickname
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-25 16:41:10 +08:00
XuqmGroup
6ce29edb4c
fix: remove findBySecretKey from FeatureServiceRepository
...
secretKey field was removed from FeatureServiceEntity in the previous
refactor, but the repository method was left behind, crashing startup.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-25 07:18:46 +08:00
XuqmGroup
b13820032d
feat(ops): add service activation request review endpoints
...
OpsController: GET /api/ops/service-requests (with optional status filter),
POST /api/ops/service-requests/{id}/approve, POST .../reject.
OpsService: listServiceRequests() delegates to existing repository queries.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-25 06:40:27 +08:00
XuqmGroup
161218420c
feat: IM admin APIs, appSecret security, remove SecretKey, CI/CD pipeline
...
- im-service: add admin register user and create group endpoints
- tenant-service: add reveal/reset appSecret with email verification
- tenant-service: remove secretKey from FeatureService (app appKey/appSecret is sufficient)
- tenant-service: service activation now requires ops approval via request-activation
- Add Jenkinsfile for parameterized build → Alibaba Cloud ACR → SSH deploy
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-24 20:53:48 +08:00
XuqmGroup
f79a27862f
feat(sample): 集成 Sentry 异常监控功能
...
- 添加 Sentry Android SDK 依赖 (版本 8.39.1)
- 在 sample-app 中集成 Sentry 监控插件
- 添加 Sentry 初始化配置到应用 Application 类
- 在 MainActivity 中添加异常上报测试按钮
- 添加闪退测试功能用于验证 Sentry 监控
- 更新 AndroidManifest.xml 配置应用入口点
- 添加新的 gradle wrapper 文件支持项目构建
- 创建 sdk-core、sdk-im、sdk-push、sdk-update 模块基础结构
- 配置各 SDK 模块的 build.gradle.kts 文件
- 更新 libs.versions.toml 添加 Sentry 版本定义
2026-04-24 16:46:38 +08:00
XuqmGroup
8fe4ae99cc
feat: finalize backend deployment and api docs
2026-04-24 10:42:11 +08:00
XuqmGroup
a719c08a5a
chore: initial commit
2026-04-21 22:07:29 +08:00