提交图

11 次代码提交

作者 SHA1 备注 提交日期
XuqmGroup
edbffce815 feat(sdk): 初始化 Android SDK 核心功能模块
- 添加 SDK 配置管理、网络请求客户端和令牌存储功能
- 实现即时通讯 IM 模块,包括消息收发、群组管理和会话功能
- 集成推送服务和应用更新功能模块
- 创建示例应用演示 SDK 使用方法
- 配置项目依赖管理和构建设置
2026-04-27 17:18:56 +08:00
XuqmGroup
afe13d1c90 fix(im): add toId/chatType filters to MessageSearchParams and searchMessages
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-27 13:36:44 +08:00
XuqmGroup
21f27c1770 feat: add leaveGroup, addGroupMember, removeGroupMember, setConversationMuted/Pinned
- ImSDK: leaveGroup removes current user from group via DELETE /groups/{id}/members/{userId}
- ImSDK: addGroupMember / removeGroupMember for admin operations
- ImSDK: setConversationMuted / setConversationPinned exposed from ImDatabase methods
- ImSDK: fetchGroupHistory uses new /messages/group-history/{groupId} endpoint

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-27 11:57:52 +08:00
XuqmGroup
03261f3416 feat(im): add listFriends, addFriend, removeFriend to ImSDK
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-25 17:27:19 +08:00
XuqmGroup
d7e7cd8e2d feat: async remote init, file upload in SDK, device info, ScaledImage, DB v2
- XuqmSDK.initialize(appId, serverUrl): fetches config from tenant platform
- ImSDK: sendImageMessage/sendVideoMessage/sendAudioMessage/sendFileMessage
- upload.ts: FormData upload to file-service with Bearer auth
- device.ts: deviceId (UUID), brand→pushVendor detection, platform info
- ScaledImage component: aspect-ratio bounded image rendering
- WatermelonDB schema v2: is_muted, is_pinned on conversations
- subscribeConversations: reactive WatermelonDB observable
- searchMessages: keyword/date/chat-type/target filtering

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-25 16:41:19 +08:00
XuqmGroup
4e821b280b feat(rn-im): add WatermelonDB local message database
- Add schema for im_conversations and im_messages tables
- ConversationModel/MessageModel: WatermelonDB ORM models
- ImDatabase: init/saveMessage/getMessages/getConversations/markRead/bulkSave
- ImSDK: fetchHistory/fetchGroupHistory read local DB first, cache server results
- ImSDK: incoming WebSocket messages auto-saved to local DB
- ImSDK: new listConversations() and markRead() public APIs
- @nozbe/watermelondb >=0.27.0 added as peer dependency

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-24 20:54:12 +08:00
XuqmGroup
febefc8d69 refactor: SDK monorepo with modular packages + clean init API
- Restructure as yarn workspace with packages/common, im, push, update
- @xuqm/rn-common: built-in URLs (no apiBaseUrl/imWsUrl in init), init({appId, debug})
- @xuqm/rn-im: login(userId) handles token internally, no token in public API
- @xuqm/rn-update: registerPlugin({moduleId,version}) for self-registration,
  checkAppUpdate() auto-detects version via XuqmVersionModule native bridge,
  checkRnUpdate(moduleId) uses registered version (no app-layer arg)
- Add XuqmVersionModule native stubs for Android/iOS
- Keep @xuqm/rn-sdk as convenience meta-package re-exporting all

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-24 16:16:31 +08:00
XuqmGroup
97150538bc feat(im): 添加群组管理 API 和群历史消息接口
- types.ts:新增 ImGroup 类型
- imSDK.ts:新增 createGroup / listGroups / fetchGroupHistory
- index.ts:导出 ImGroup 类型

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-24 11:14:41 +08:00
XuqmGroup
b747901cfe feat: add rn sdk chat and update support 2026-04-24 10:42:11 +08:00
XuqmGroup
61ffd1bc8c docs: add detailed documentation 2026-04-21 22:25:34 +08:00
XuqmGroup
ad0a31bd91 chore: initial commit 2026-04-21 22:07:29 +08:00