diff --git a/docs/guides/introduction/features.md b/docs/guides/introduction/features.md index ad06695e19..9f477c5325 100644 --- a/docs/guides/introduction/features.md +++ b/docs/guides/introduction/features.md @@ -4,135 +4,102 @@ hide_title: true sidebar_position: 4 --- -## 开源版功能明细 +# 开源功能明细 -开源版包含以下组件,每个组件的具体功能描述如下: +## 一、开源版包含什么 -### 1. IM SDK/IM Server +### 核心组件 -- **功能描述:** - - 提供即时通讯的基础功能。 - - 由客户端 IMSDK 和服务端 IMServer 组成。 -- **特性:** - - 不包含用户界面(UI),需要开发者自行集成到应用中。 - - 支持消息发送、接收及管理等核心功能。 +| 组件 | 协议 | 定位 | 说明 | +| --- |-----------------| --- | --- | +| OpenIMClientSDK | `AGPL-3.0` | 客户端 SDK | 负责消息、会话、群组、好友等客户端通信能力,需要开发者集成到自己的应用 | +| OpenIMServer | `Apache-2.0` | IM 基础服务端 | 负责即时通讯核心链路、消息同步、REST API、Webhook 等能力 | +| ChatServer | `Apache-2.0` | 业务扩展服务端 | 负责注册、登录、APP 管理等业务扩展能力;如果你已有自有账号体系,可按需接入或不部署 | +| 客户端 Demo / 示例 UI | `AGPL-3.0` | SDK 集成示例 | 提供示例代码,用于演示如何接入 OpenIMClientSDK,不代表完整商用客户端 | -### 2. 客户端 UI +### 扩展组件 -- **功能描述:** - - 提供demo,仅用于演示如何引入和使用客户端 SDK。 -- **特性:** - - 提供基础的用户界面示例,帮助开发者理解 SDK 的集成方式。 - - 不包括完整的应用功能,需根据需求自行扩展。 - - 完整的客户端UI不开源。 +| 组件 | 协议 | 定位 | 说明 | +| --- |----------------| --- | --- | +| 纯 JS SDK | `ARR`(闭源) | 纯 JS 的客户端 SDK | 一般用于小程序开发 | +| Web客户端 | `ARR`(闭源,可免费使用) | 面向终端用户的完整产品界面 | 开箱即用 | +| 管理后台前端 | `ARR`(闭源,可免费使用) | APP 管理员使用的后台页面 | 如需管理能力,可基于 APP 管理员接口自行构建 | -### 3. 音视频通话 +## 二、OpenIMClientSDK + OpenIMServer 开源能力明细 -- **功能描述:** - - 支持一对一的音视频通话功能。 -- **特性:** - - 提供基本的音视频通话接口。 - - 群组音视频通话或视频会议功能不开源。 +本文重点说明 OpenIMClientSDK 与 OpenIMServer 在开源版中已经提供的核心能力。 -### 4. 管理后台前端 +### 1. 好友与关系链 -- **功能描述:** - - 用于管理和展示 IM 系统的前端界面。 -- **特性:** - - 提供基本的后台管理功能,如用户管理、消息管理等。 - - 前端代码不开源。 ---- +- 支持查找、申请、搜索、添加及删除好友。 +- 支持同意和拒绝好友申请。 +- 支持好友备注。 +- 支持是否允许添加好友的设置。 +- 好友列表及好友资料支持实时同步。 + +### 2. 黑名单 + +- 支持限制消息和音视频通话。 +- 黑名单列表实时同步。 +- 支持添加和移出黑名单。 + +### 3. 群组 + +- 支持创建和解散群组。 +- 支持申请加群、邀请加群、退出群组及移除群成员。 +- 支持群名、群头像更改及群资料变更通知和实时同步。 +- 支持进群验证设置。 +- 支持群主转让。 +- 支持不允许查看其他群成员资料和不允许添加其他群成员为好友的设置。 +- 支持设置和移除群管理员。 +- 支持搜索群成员和设置群成员群内资料。 +- 支持全体禁言及指定群成员禁言。 +- 支持发布群公告。 + +### 4. 消息 + +- 支持文本、图片、视频、表情、文件、语音、名片、地理位置、自定义及群公告消息。 +- 支持离线消息、漫游消息、多端消息及历史消息。 +- 支持单选消息转发和多选消息合并转发。 +- 支持消息删除、消息清空、消息复制及消息撤回。 +- 支持撤回后重新编辑消息。 +- 支持群组内 @、单聊正在输入、阅后即焚、新消息勿扰、清空聊天记录、新成员查看群聊历史消息、新消息提示。 +- 支持本地消息搜索。 + +### 5. 会话 + +- 支持置顶会话。 +- 支持删除会话。 +- 支持搜索本地会话。 +- 支持会话已读。 +- 支持会话免打扰。 + +### 6. 服务端开放能力 + +- 提供认证管理、用户管理、关系链管理、群组管理、会话管理、消息管理等 REST API。 +- 提供群组回调、消息回调、推送回调、关系链回调及用户回调等 Webhook 能力。 + +### 7. 容量与部署 + +- 好友容量最高支持 3000。 +- 群组最高支持 10 万人规模。 +- 支持秒级同步。 +- 支持源码部署集群。 + +### 8. 多端登录策略 + +- 支持所有平台不互踢。 +- 支持每个平台各登录一个设备。 +- 支持 PC 端、移动端、Pad 端、Web 端及小程序端各登录一个设备。 +### 9. 音视频能力 +- 支持一对一音视频通话基础能力。 +- 群组音视频通话或视频会议能力不开源。 +- 一对一音视频通话接入时,超时未接通、取消等业务细节需开发者自行完善。 -## IMSDK/IMServer 功能说明 - -本文档详细介绍IMSDK/IMServer 开源版的各项功能,帮助用户了解其具体能力。 -### 好友功能 - -- **基本操作** - - 支持查找、申请、搜索、添加及删除好友。 -- **好友申请** - - 支持同意和拒绝好友申请。 -- **好友备注** - - 用户可以为好友添加备注信息。 -- **添加好友权限** - - 支持是否允许添加好友的设置。 -- **实时同步** - - 好友列表及好友资料支持实时同步。 - -### 黑名单功能 - - 支持限制消息和音视频通话。 - - 黑名单列表实时同步。 - - 支持添加和移出黑名单。 - -### 群组功能 - -- **群组管理** - - 支持创建和解散群组。 -- **群成员管理** - - 支持申请加群、邀请加群、退出群组及移除群成员。 -- **群资料同步** - - 群名、群头像更改及群资料变更通知和实时同步。 -- **进群验证** - - 支持进群验证设置。 -- **群主管理** - - 支持群主转让。 -- **成员权限设置** - - 支持不允许查看其他群成员资料和不允许添加其他群成员为好友的设置。 - - 支持设置和移除群管理员。 - - 支持搜索群成员和设置群成员群内资料。 -- **禁言功能** - - 支持全体禁言及指定群成员禁言。 -- **群公告** - - 支持发布群公告。 - -### 消息功能 -- **消息类型** - - 支持文本、图片、视频、表情、文件、语音、名片、地理位置、自定义及群公告消息。 -- **消息管理** - - 支持离线消息、漫游消息、多端消息及历史消息。 - - 支持单选消息转发和多选消息合并转发。 - - 支持消息删除、消息清空、消息复制及消息撤回。 - - 支持撤回后重新编辑消息。 -- **消息互动** - - 支持群组内@功能、单聊正在输入、阅后即焚、新消息勿扰、清空聊天记录、新成员查看群聊历史消息、新消息提示。 - - 支持本地消息搜索。 - -### 会话功能 -- **支持置顶会话** -- **删除会话** -- **搜索本地会话** -- **会话已读** -- **会话免打扰** - -### REST API -- **认证管理** -- **用户管理** -- **关系链管理** -- **群组管理** -- **会话管理** -- **消息管理** - -### Webhook 回调 -- **支持群组回调、消息回调、推送回调、关系链回调及用户回调** - -### 容量和性能 - -- **好友容量** - - 支持最多 3000 好友。 -- **群组容量** - - 支持 10 万人规模的大群。 -- **同步速度** - - 支持秒级同步。 -- **部署方式** - - 支持源码部署集群。 - -### 互踢策略 -- **所有平台不互踢** -- **每个平台各只能登录一个设备** -- **PC端、移动端、Pad端、Web端及小程序端各只能登录一个设备** - -### 音视频通话 -- **一对一音视频通话,需自行完善细节,如超时未接通,取消等逻辑** +## 三、如何理解 OpenIMSDK 的开源范围 +- 如果你只需要即时通讯核心能力,重点集成 OpenIMClientSDK,并部署 OpenIMServer。 +- 如果你还需要注册、登录、APP 管理等业务扩展能力,再按需部署 ChatServer。 +- 如果你需要面向终端用户的完整产品界面或 APP 管理员后台页面,需要基于 SDK、REST API 与业务需求自行实现。 diff --git a/docs/guides/introduction/version.md b/docs/guides/introduction/version.md index 07ef7db333..504d258d05 100644 --- a/docs/guides/introduction/version.md +++ b/docs/guides/introduction/version.md @@ -6,127 +6,44 @@ sidebar_position: 5 # 版本说明 +## 一、生产环境版本选择建议 +生产环境请以 GitHub 上发布的**最新稳定版**为准,也就是 GitHub Releases 页面绿色 **Latest** 标记对应的**最新正式发布版**。 -**OpenIMSDK** 长期维护的版本包括: +| 组件 | 版本来源 | +| --- | --- | +| OpenIMServer | 以 [OpenIMServer Releases](https://github.com/openimsdk/open-im-server/releases) 页面绿色 **Latest** 对应的正式发布版为准 | +| ChatServer | 以 [ChatServer Releases](https://github.com/openimsdk/chat/releases) 页面绿色 **Latest** 对应的正式发布版为准 | +| OpenIMClientSDK | 以你实际集成的客户端 SDK 仓库 Releases 页面绿色 **Latest** 对应的正式发布版为准 | -- **SDK** v3.8 系列 -- **Server** v3.8 系列 -- **Chat** v1.8 系列 +- 建议始终使用明确的稳定版 `tag`,不要只依赖分支名或手动猜测版本顺序。 +- 如需问题复现、灰度回滚或多环境统一,请固定到明确的正式版 `tag`。 +- OpenIMServer 与 ChatServer 一起部署时,建议按发布说明选择相互对应的正式版 `tag`。 +- OpenIMClientSDK 接入时,建议同时核对目标服务端版本范围与对应 release note,避免跨版本能力差异。 -在同一大版本内,不同小版本之间数据兼容。我们建议您升级到最新的子版本,升级时请使用 **tag** 以确保版本的准确性和稳定性。 +## 二、如何查看当前最新稳定版 -由于维护资源有限,其他版本将不再得到支持。请各位用户尽快完成升级,以享受最新的功能和优化。 +可以直接通过 GitHub 的 `releases/latest` 跳转获取当前正式版 `tag`: -## 当前最新稳定版本 +```bash +SERVER_LATEST_TAG=$(basename "$(curl -fsSLI -o /dev/null -w '%{url_effective}' https://github.com/openimsdk/open-im-server/releases/latest)") +echo "$SERVER_LATEST_TAG" -- **Server**: v3.8.3-patch.3 -- **SDK**: v3.8.3-patch.3 -- **Chat**: v1.8.4-patch.2 +CHAT_LATEST_TAG=$(basename "$(curl -fsSLI -o /dev/null -w '%{url_effective}' https://github.com/openimsdk/chat/releases/latest)") +echo "$CHAT_LATEST_TAG" +``` ---- - -# 版本更新日志 - -# v3.8.3-patch (2025-3-7) - -## Server v3.8.3-patch.3 更新内容 - -| **类别** | **内容** | -| ------------ | ------------------------------------------------------------------------------ | -| **bug 修复** | 修复了 seq 转换工具在失败时没有正确退出的问题。 | -| | 修复了设置 KickedToken 错误的问题。 | -| | 修复了定时销毁信息错误的问题。 | -| | 修复了异常消息缺少时间,导致 SDK 异常的问题。 | -| | 修复了撤回已经退出群聊成员的信息,会导致崩溃的问题。 | -| | 修复了用户设置定时销毁信息的时间单位不正确的问题。 | -| | 修复了 seq 转换工具没有在 docker 环境下被正确读取的问题。 | -| | 修复了离线推送推送错误和没有角标的问题。 | -| | 修复了设置群信息没有正确通知到 SDK 的问题。 | -| | 修复了管理员变更后排序错误的问题。 | -| | 修复了加入群聊的通知类型不正确的问题。 | -| **功能优化** | 优化了 sendNotification 的传递方式,可以通过参数来选择是否携带发送信息的标识。 | -| | 优化了 docker 中映射 mongo 备份文件夹,并优化了日志打印 | -| | 优化了批量获取增量群成员的方法。 | - -## SDK v3.8.3-patch.3 更新内容 - -| **类别** | **内容** | -| ------------ | ------------------------------------------------------ | -| **bug 修复** | 修复了在较差网络环境时,异常消息可能重复的问题。 | -| | 修复了会话 id 获取序列化的处理错误的问题。 | -| | 修复了服务器崩溃或 req 缓存过期而导致消息间隙的问题。 | -| | 修复了改变自己头像时,会话中的头像不会同步更新的问题。 | -| | 修复了 seq 为 0 时,会导致同步失败的问题。 | -| | 修复了获取群成员信息可能会失效的问题。 | -| | 修复了在服务器直接拉取的消息会重复的问题。 | -| **功能优化** | 优化了好友申请和群组申请过多时,会导致卡顿的问题。 | - -## Chat v1.8.4-patch.2 更新内容 - -| **类别** | **内容** | -| ------------ | ---------------------------------------------------- | -| **bug 修复** | 修复了用户属性迁移工具,转换时无限循环的问题。 | -| | 修复了获取缓存中的 AdminToken 可能会导致死锁的问题。 | -| **功能优化** | 优化了 proto gen,并使用了新版本的 grpc 生成工具。 | +## 三、到哪里看发布说明 ---- - -# v3.8.3 (2025-1-10) - -## Server v3.8.3 更新内容 - -| **类别** | **内容** | -| ------------ | --------------------------------------------------------------------------- | -| **新特性** | 实现了 GetLastMessage 接口。 | -| | 实现了同步 seq_user 的最大最小 seq 到 conversation 集合中用于 isEnd 判定 | -| **功能优化** | 优化了 Crontask 定时删除消息的实现。 | -| | 将 upload log 接口的 `systemType` 字段改成 `AppFramework` | -| | 优化的 RPC 调用的通用方法 | -| | 优化了消息缓存的逻辑 | -| | 优化了日志输出函数 | -| | 在 NotificationAccountInfo 结构体添加`AppMangerLevel`字段 | -| **bug 修复** | 修复群成员头像设置无效。 | -| | 修复了打印 log.ZPanic 的问题。 | -| | 修复了当 SDK 拉取信息时,Server 返回 isEnd 来控制拉取信息。 | -| | 修复了 rpc 发生 panic 时的恢复。 | -| | 修复了设置 IsPrivateChat 时,修改其他字段不会生效。 | -| | 修复了当引用消息时,偶现的原消息被删除的问题。 | -| | 修复了关闭 `EnableHistoryForNewMembers`时,新成员仍能读到最后一条历史信息。 | -| | 修复了 KickTokens 保存错误的问题。 | -| | 修复了转发@消息到其他群中,造成异常会话生成的问题。 | -| | 修复了在线状态错误的问题。 | -| | 修复了服务发现和自动设置端口的错误 | -| | 修复了 GetUsersOnline 时获取了错误的在线列表。 | -| **其他** | 更新了前端镜像的版本 | - -## SDK v3.8.3 更新内容 +- OpenIMServer:查看 [OpenIMServer Releases](https://github.com/openimsdk/open-im-server/releases) +- ChatServer:查看 [ChatServer Releases](https://github.com/openimsdk/chat/releases) +- OpenIMClientSDK:查看你实际使用的客户端 SDK 仓库 Releases 页面与对应 release note -| **类别** | **内容** | -| ------------ | --------------------------------------------------------------------------- | -| **功能优化** | 添加参数来定位消息与方向拉取消息,避免 UI 数据干扰。 | -| | 优化了消息获取逻辑 | -| **bug 修复** | 修复了当 chatlog 表名包含`-`时创建索引错误。 | -| | 修复了重装 APP 后,当前用户信息可能为空的问题。 | -| | 修复了当关键字为空时,搜索消息不会过滤语音消息。 | -| | 修复了当 APP 从后台打开或状态更新时,引用消息不会正确切换为撤销信息的错误。 | - -## Chat v1.8.4 更新内容 - -| **类别** | **内容** | -| ------------ | ---------------------------------------------- | -| **新特性** | 实现了管理后台的配置中心对应功能。 | -| **功能优化** | 优化了与 kubernetes 适配与对应服务的镜像生成。 | -| | 优化了消息获取逻辑 | -| **bug 修复** | 修复了 grpc 在 windows 时的连接内存泄漏。 | -| | 修复了错误栈的打印问题。 | - ---- +如果你需要长期维护某个版本,请把所用 `tag` 明确记录在部署文档、构建脚本和回滚方案中。 -# 版本兼容性 +## 四、当前最新稳定版 -| 模块 | 版本号 | 兼容版本 | -| ---------- | ------ | ---------------------------- | -| **SDK** | v3.8.3 | Server v3.8.3 | -| **Server** | v3.8.3 | SDK v3.8.2, SDK v3.8.3 | -| **Chat** | v1.8.4 | Server v3.8.2, Server v3.8.3 | +- **OpenIMServer** `v3.8.3-patch.12` `2025-10-24` + - [changelog](https://github.com/openimsdk/open-im-server/releases/tag/v3.8.3-patch.12) +- **ChatServer** `v1.8.4-patch.3` `2025-07-29` + - [changelog](https://github.com/openimsdk/chat/releases/tag/v1.8.4-patch.3) diff --git a/i18n/en/docusaurus-plugin-content-docs-guides/current/introduction/features.md b/i18n/en/docusaurus-plugin-content-docs-guides/current/introduction/features.md index bbde401314..aba90149ba 100644 --- a/i18n/en/docusaurus-plugin-content-docs-guides/current/introduction/features.md +++ b/i18n/en/docusaurus-plugin-content-docs-guides/current/introduction/features.md @@ -4,135 +4,102 @@ hide_title: true sidebar_position: 4 --- -## Open Source Edition Feature Details +# Open Source Feature Details -The open-source edition includes the following components, each with specific capabilities described below: +## 1. What the Open Source Edition Includes -### 1. IM SDK / IM Server +### Core Components -- **Description:** - - Provides the core functionality for instant messaging. - - Comprises the client-side IMSDK and the server-side IMServer. -- **Features:** - - Does not include a user interface (UI) — developers must integrate it into their applications. - - Supports core features such as message sending, receiving, and management. +| Component | License | Positioning | Description | +| --- | --- | --- | --- | +| OpenIMClientSDK | `AGPL-3.0` | Client SDK | Responsible for client-side communication capabilities such as messages, conversations, groups, and friends, and needs to be integrated into your own application | +| OpenIMServer | `Apache-2.0` | IM core server | Responsible for core instant messaging links, message synchronization, REST APIs, Webhook capabilities, and more | +| ChatServer | `Apache-2.0` | Business extension server | Responsible for business extension capabilities such as registration, login, and APP management; if you already have your own account system, you can integrate it as needed or skip deployment | +| Client Demo / Sample UI | `AGPL-3.0` | SDK integration example | Provides sample code to demonstrate how to integrate OpenIMClientSDK, and does not represent a complete production-ready client | -### 2. Client UI +### Extended Components -- **Description:** - - Provides a demo for demonstrating how to import and use the client SDK. -- **Features:** - - Offers basic UI examples to help developers understand SDK integration. - - Does not include full application functionality — must be extended as needed. - - The complete client UI is not open source. +| Component | License | Positioning | Description | +| --- | --- | --- | --- | +| Pure JS SDK | `ARR` (closed source) | Pure JavaScript client SDK | Generally used for mini program development | +| Web Client | `ARR` (closed source, free to use) | Complete end-user product interface | Ready to use out of the box | +| Admin Frontend | `ARR` (closed source, free to use) | Backend page used by APP Administrators | If you need management capabilities, you can also build your own frontend based on the APP Administrator APIs | -### 3. Audio/Video Calls +## 2. Open Source Capabilities of OpenIMClientSDK + OpenIMServer -- **Description:** - - Supports one-on-one audio and video calls. -- **Features:** - - Provides basic audio/video call interfaces. - - Group audio/video calls and video conferencing are not open source. +This section focuses on the core capabilities already provided by the open-source edition of OpenIMClientSDK and OpenIMServer. -### 4. Admin Dashboard Frontend +### 1. Friends and Relationships -- **Description:** - - Frontend interface for managing and monitoring the IM system. -- **Features:** - - Provides basic management features such as user management and message management. - - Frontend code is not open source. ---- +- Supports finding, requesting, adding, and deleting friends. +- Supports accepting and rejecting friend requests. +- Supports friend remarks. +- Supports settings for whether friend requests are allowed. +- Friend lists and friend profiles support real-time synchronization. + +### 2. Blocklist + +- Supports restricting messages and audio/video calls. +- The blocklist synchronizes in real time. +- Supports adding and removing blocked users. + +### 3. Groups + +- Supports creating and dissolving groups. +- Supports join requests, invitations, leaving groups, and removing group members. +- Supports real-time notifications and synchronization for group names, avatars, and profile changes. +- Supports join verification settings. +- Supports group ownership transfer. +- Supports settings that prevent viewing other group members' profiles or adding them as contacts. +- Supports appointing and removing group administrators. +- Supports searching group members and setting member-specific group profiles. +- Supports muting everyone or muting designated group members. +- Supports publishing group announcements. + +### 4. Messages + +- Supports text, image, video, emoji, file, voice, contact card, location, custom, and group announcement messages. +- Supports offline messages, roaming messages, multi-device messages, and message history. +- Supports forwarding a single selected message and merged forwarding for multiple selected messages. +- Supports deleting, clearing, copying, and recalling messages. +- Supports editing messages after recall. +- Supports group @mentions, typing indicators in one-to-one chats, burn after reading, do-not-disturb for new messages, clearing chat history, allowing new members to view group history, and new message alerts. +- Supports local message search. + +### 5. Conversations + +- Supports pinned conversations. +- Supports deleting conversations. +- Supports searching local conversations. +- Supports conversation read state. +- Supports conversation do-not-disturb. + +### 6. Server-Side Open Capabilities + +- Provides REST APIs for authentication management, user management, relationship management, group management, conversation management, and message management. +- Provides Webhook capabilities such as group callbacks, message callbacks, push callbacks, relationship callbacks, and user callbacks. + +### 7. Capacity and Deployment + +- Supports up to 3,000 contacts. +- Supports groups with up to 100,000 members. +- Supports second-level synchronization. +- Supports cluster deployment from source code. + +### 8. Multi-Device Login Policy + +- Supports no forced logout across platforms. +- Supports one logged-in device per platform. +- Supports one logged-in device each on PC, mobile, tablet, web, and mini program. + +### 9. Audio and Video Capabilities +- Supports basic one-to-one audio/video call capabilities. +- Group audio/video calls and video conferencing are not open source. +- When integrating one-to-one audio/video calls, business details such as unanswered timeout and cancellation need to be implemented by developers themselves. +## 3. How to Understand the Open Source Scope of OpenIMSDK -## IMSDK/IMServer Feature Reference - -This document provides a detailed description of all features available in the IMSDK/IMServer open-source edition. - -### Contacts - -- **Basic Operations** - - Search, request, find, add, and delete contacts. -- **Friend Requests** - - Accept or reject friend requests. -- **Contact Alias** - - Users can set alias names for their contacts. -- **Add Contact Permissions** - - Configure whether to allow friend requests. -- **Real-Time Sync** - - Contact list and contact profiles support real-time synchronization. - -### Blocklist - - Blocks messages and audio/video calls from blocked users. - - Blocklist synchronizes in real time. - - Add and remove users from the blocklist. - -### Groups - -- **Group Management** - - Create and dissolve groups. -- **Member Management** - - Request to join, invite members, leave groups, and remove members. -- **Group Profile Sync** - - Group name, avatar changes, and profile updates are notified and synchronized in real time. -- **Join Verification** - - Configure group join verification settings. -- **Ownership** - - Transfer group ownership. -- **Member Permission Settings** - - Restrict viewing other members' profiles or adding other members as contacts. - - Appoint and remove group administrators. - - Search group members and set member-specific group profiles. -- **Muting** - - Group-wide mute and individual member muting. -- **Announcements** - - Publish group announcements. - -### Messages -- **Message Types** - - Text, image, video, emoji, file, voice, contact card, location, custom messages, and group announcements. -- **Message Management** - - Offline messages, roaming messages, multi-device sync messages, and message history. - - Single message forwarding and multi-message merge forwarding. - - Delete, clear, copy, and recall messages. - - Edit after recall. -- **Message Interactions** - - Group @mentions, typing indicator in private chats, burn after reading, do not disturb for new messages, clear chat history, allow new members to view group history, new message alerts. - - Local message search. - -### Conversations -- **Pin conversations** -- **Delete conversations** -- **Search local conversations** -- **Mark conversations as read** -- **Conversation do-not-disturb** - -### REST API -- **Authentication Management** -- **User Management** -- **Relationship Management** -- **Group Management** -- **Conversation Management** -- **Message Management** - -### Webhooks -- **Supports group callbacks, message callbacks, push callbacks, relationship callbacks, and user callbacks** - -### Capacity & Performance - -- **Contact Capacity** - - Supports up to 3,000 contacts. -- **Group Capacity** - - Supports large groups with up to 100,000 members. -- **Sync Speed** - - Second-level synchronization. -- **Deployment** - - Supports cluster deployment from source code. - -### Multi-Device Login Policy -- **All platforms — no mutual kick-off** -- **One device per platform** -- **PC, Mobile, Pad, Web, and Mini Program — one device each** - -### Audio/Video Calls -- **One-on-one audio/video calls. Developers need to implement additional logic such as timeout handling, cancellation, etc.** +- If you only need core IM capabilities, focus on integrating OpenIMClientSDK and deploying OpenIMServer. +- If you also need business extension capabilities such as registration, login, and APP management, deploy ChatServer as needed. +- If you need a complete end-user product interface or an APP Administrator backend page, you need to implement it yourself based on the SDK, REST APIs, and your business requirements. diff --git a/i18n/en/docusaurus-plugin-content-docs-guides/current/introduction/version.md b/i18n/en/docusaurus-plugin-content-docs-guides/current/introduction/version.md index b5321b0b15..b53ddd98d7 100644 --- a/i18n/en/docusaurus-plugin-content-docs-guides/current/introduction/version.md +++ b/i18n/en/docusaurus-plugin-content-docs-guides/current/introduction/version.md @@ -6,127 +6,44 @@ sidebar_position: 5 # Version Notes +## 1. Production Version Selection Recommendations +For production, use the latest stable release published on GitHub, which means the latest official release marked with GitHub Releases' green **Latest** badge. -**OpenIMSDK** maintains long-term support for the following versions: +| Component | Version Source | +| --- | --- | +| OpenIMServer | Use the official release marked with the green **Latest** badge on the [OpenIMServer Releases](https://github.com/openimsdk/open-im-server/releases) page | +| ChatServer | Use the official release marked with the green **Latest** badge on the [ChatServer Releases](https://github.com/openimsdk/chat/releases) page | +| OpenIMClientSDK | Use the official release marked with the green **Latest** badge on the Releases page of the client SDK repository you actually integrate | -- **SDK** v3.8 series -- **Server** v3.8 series -- **Chat** v1.8 series +- Always use an explicit stable `tag` instead of relying only on branch names or guessing version order manually. +- If you need issue reproduction, staged rollback, or multi-environment consistency, pin an explicit official `tag`. +- When deploying OpenIMServer and ChatServer together, choose the corresponding official `tag`s according to the release notes. +- When integrating OpenIMClientSDK, also check the target server-side version range and the corresponding release notes to avoid cross-version capability differences. -Within the same major version, data is compatible across different minor versions. We recommend upgrading to the latest minor version, and using **tags** to ensure version accuracy and stability. +## 2. How to Check the Current Latest Stable Release -Due to limited maintenance resources, other versions will no longer be supported. Please upgrade as soon as possible to benefit from the latest features and optimizations. +You can resolve the current official `tag` directly through GitHub's `releases/latest` redirect: -## Current Latest Stable Versions +```bash +SERVER_LATEST_TAG=$(basename "$(curl -fsSLI -o /dev/null -w '%{url_effective}' https://github.com/openimsdk/open-im-server/releases/latest)") +echo "$SERVER_LATEST_TAG" -- **Server**: v3.8.3-patch.3 -- **SDK**: v3.8.3-patch.3 -- **Chat**: v1.8.4-patch.2 +CHAT_LATEST_TAG=$(basename "$(curl -fsSLI -o /dev/null -w '%{url_effective}' https://github.com/openimsdk/chat/releases/latest)") +echo "$CHAT_LATEST_TAG" +``` ---- - -# Changelog - -# v3.8.3-patch (2025-3-7) - -## Server v3.8.3-patch.3 - -| **Category** | **Description** | -| -------------------- | ---------------------------------------------------------------------------------------- | -| **Bug Fixes** | Fixed seq conversion tool not exiting correctly on failure. | -| | Fixed incorrect KickedToken setting. | -| | Fixed timed message destruction errors. | -| | Fixed abnormal messages missing timestamps, causing SDK exceptions. | -| | Fixed crash when recalling messages from members who already left the group. | -| | Fixed incorrect time unit for user-set timed message destruction. | -| | Fixed seq conversion tool not being read correctly in Docker environments. | -| | Fixed offline push errors and missing badge counts. | -| | Fixed group info changes not being notified to the SDK correctly. | -| | Fixed incorrect sorting after admin changes. | -| | Fixed incorrect notification type for group join events. | -| **Improvements** | Optimized sendNotification parameter passing to optionally include sender identification. | -| | Mapped Mongo backup folder in Docker and improved log output. | -| | Optimized batch incremental group member retrieval. | - -## SDK v3.8.3-patch.3 - -| **Category** | **Description** | -| -------------------- | ----------------------------------------------------------------------- | -| **Bug Fixes** | Fixed potential message duplication under poor network conditions. | -| | Fixed conversation ID serialization errors. | -| | Fixed message gaps caused by server crashes or request cache expiration. | -| | Fixed conversation avatars not updating when user changes their avatar. | -| | Fixed sync failures when seq is 0. | -| | Fixed group member info retrieval failures. | -| | Fixed duplicate messages when pulling directly from the server. | -| **Improvements** | Optimized performance when handling large numbers of friend/group requests. | - -## Chat v1.8.4-patch.2 - -| **Category** | **Description** | -| -------------------- | ------------------------------------------------------------------ | -| **Bug Fixes** | Fixed infinite loop in user attribute migration tool. | -| | Fixed potential deadlock when getting cached AdminToken. | -| **Improvements** | Optimized proto gen and adopted new version of gRPC generation tool. | +## 3. Where to Read Release Notes ---- - -# v3.8.3 (2025-1-10) - -## Server v3.8.3 - -| **Category** | **Description** | -| -------------------- | -------------------------------------------------------------------------------------------------- | -| **New Features** | Implemented GetLastMessage API. | -| | Implemented syncing max/min seq from seq_user to the conversation collection for isEnd evaluation. | -| **Improvements** | Optimized Crontask scheduled message deletion implementation. | -| | Changed upload log API `systemType` field to `AppFramework`. | -| | Optimized common RPC call methods. | -| | Optimized message caching logic. | -| | Optimized log output functions. | -| | Added `AppMangerLevel` field to the NotificationAccountInfo struct. | -| **Bug Fixes** | Fixed group member avatar setting not taking effect. | -| | Fixed log.ZPanic printing issues. | -| | Fixed Server returning isEnd to control message pulling by SDK. | -| | Fixed RPC panic recovery. | -| | Fixed other fields not taking effect when setting IsPrivateChat. | -| | Fixed occasional deletion of original messages when quoting messages. | -| | Fixed new members being able to read the last history message when `EnableHistoryForNewMembers` is disabled. | -| | Fixed incorrect KickTokens persistence. | -| | Fixed forwarding @messages to other groups causing abnormal conversation creation. | -| | Fixed online status errors. | -| | Fixed service discovery and automatic port assignment errors. | -| | Fixed GetUsersOnline returning incorrect online user list. | -| **Other** | Updated frontend image versions. | - -## SDK v3.8.3 +- OpenIMServer: see [OpenIMServer Releases](https://github.com/openimsdk/open-im-server/releases) +- ChatServer: see [ChatServer Releases](https://github.com/openimsdk/chat/releases) +- OpenIMClientSDK: see the Releases page and corresponding release notes of the client SDK repository you actually use -| **Category** | **Description** | -| -------------------- | ------------------------------------------------------------------------------------------ | -| **Improvements** | Added parameters for message positioning and directional pulling, avoiding UI data interference. | -| | Optimized message retrieval logic. | -| **Bug Fixes** | Fixed index creation error when chatlog table name contains `-`. | -| | Fixed current user info potentially being empty after reinstalling the app. | -| | Fixed voice messages not being filtered when searching with empty keywords. | -| | Fixed quoted messages not correctly switching to recalled state when app resumes from background. | - -## Chat v1.8.4 - -| **Category** | **Description** | -| -------------------- | ---------------------------------------------------------- | -| **New Features** | Implemented admin dashboard configuration center features. | -| **Improvements** | Optimized Kubernetes adaptation and service image builds. | -| | Optimized message retrieval logic. | -| **Bug Fixes** | Fixed gRPC connection memory leak on Windows. | -| | Fixed error stack printing issues. | - ---- +If you need to maintain a long-lived version, record the exact `tag` in your deployment docs, build scripts, and rollback plan. -# Version Compatibility +## 4. Current Latest Stable Versions -| Module | Version | Compatible Versions | -| ---------- | ------- | -------------------------------- | -| **SDK** | v3.8.3 | Server v3.8.3 | -| **Server** | v3.8.3 | SDK v3.8.2, SDK v3.8.3 | -| **Chat** | v1.8.4 | Server v3.8.2, Server v3.8.3 | +- **OpenIMServer** `v3.8.3-patch.12` `2025-10-24` + - [changelog](https://github.com/openimsdk/open-im-server/releases/tag/v3.8.3-patch.12) +- **ChatServer** `v1.8.4-patch.3` `2025-07-29` + - [changelog](https://github.com/openimsdk/chat/releases/tag/v1.8.4-patch.3)