# 接入流程 完整的 XuqmGroup SDK 接入流程,从注册账号到客户端收发消息。 --- ## 1. 注册开发者账号 1. 访问 [XuqmGroup 控制台](https://dev.xuqinmin.com) 2. 点击注册,填写企业/个人信息 3. 完成邮箱/手机验证 --- ## 2. 创建应用 1. 登录控制台 → 应用管理 → 创建应用 2. 填写应用名称、平台类型(Android / iOS / Web / RN / 小程序 / HarmonyOS) 3. 创建成功后获得: - `appKey`(客户端使用) - `appSecret`(服务端使用,**不可泄露**) --- ## 3. 获取 AppKey 在应用详情页复制 `appKey`,用于客户端 SDK 初始化: ```kotlin // Android XuqmSDK.initialize(context, appKey = "your_app_key") ``` ```swift // iOS let config = SDKConfig(appKey: "your_app_key", appSecret: "your_app_secret") XuqmSDK.shared.initialize(config: config) ``` ```ts // Vue3 / Web init({ appKey: 'your_app_key', appSecret: 'your_app_secret' }) ``` --- ## 4. 服务端签发 UserSig `appSecret` 只应保存在业务服务端,用于为每个用户签发 `userSig`。 ### 签发逻辑(示例) ```ts // Node.js import jwt from 'jsonwebtoken' function generateUserSig(userId: string, appKey: string, appSecret: string): string { return jwt.sign( { userId, appKey }, appSecret, { algorithm: 'HS256' } ) } ``` ```python # Python import jwt def generate_user_sig(user_id: str, app_key: str, app_secret: str) -> str: return jwt.encode( {"userId": user_id, "appKey": app_key}, app_secret, algorithm="HS256" ) ``` ```go // Go import "github.com/golang-jwt/jwt/v5" func GenerateUserSig(userID, appKey, appSecret string) (string, error) { token := jwt.NewWithClaims(jwt.SigningMethodHS256, jwt.MapClaims{ "userId": userID, "appKey": appKey, }) return token.SignedString([]byte(appSecret)) } ``` ### 接口设计建议 ``` POST /api/auth/xuqm-login Headers: Authorization: Bearer {your-app-auth-token} Body: { "userId": "user_001" } Response: { "userSig": "jwt_token_string" } ``` --- ## 5. 客户端接入 SDK ### 登录流程 ``` 客户端 → 业务登录(用户名/密码) → 业务服务端验证成功 → 业务服务端调用 generateUserSig(userId, appKey, appSecret) → 返回 userSig 给客户端 → 客户端调用 XuqmSDK.login(userId, userSig) → SDK 自动连接 WebSocket → 开始收发消息 ``` ### 各平台接入 | 平台 | 文档 | |------|------| | Android | [Android SDK →](/android/) | | iOS | [iOS SDK →](/ios/) | | React Native | [RN SDK →](/rn/) | | Vue3 / Web | [Vue3 SDK →](/vue3/) | | HarmonyOS | [HarmonyOS SDK →](/harmony/) | | 微信小程序 | [小程序 SDK →](/miniprogram/) | --- ## 安全提示 - `appSecret` **绝不下发到客户端**,仅用于服务端签发 UserSig - 若需撤销用户权限,可在租户平台重置 `appSecret` 或拉黑账号 - 所有 API 通信使用 HTTPS / WSS - UserSig 当前版本不过期,业务方可自行控制签发逻辑 [→ 快速开始 →](./quickstart)