Guides
Open-Source Capabilities
Included components, messaging features, server APIs, and capacity notes.
What the open-source edition includes
Core components
| Component | License | Role | Description |
|---|---|---|---|
| OpenIMClientSDK | AGPL-3.0 | Client SDK | Provides client communication capabilities for messages, conversations, groups, and friends; integrated directly into client applications |
| OpenIMServer | Apache-2.0 | Core IM server | Provides the core instant messaging transport, message synchronization, REST APIs, and Webhooks |
| ChatServer | Apache-2.0 | Business extension server | Provides registration, login, and application administration services; optional if you already have an existing authentication system |
| Client demos / sample UI | AGPL-3.0 | SDK integration examples | Demonstrate how to integrate OpenIMClientSDK; not intended as finished commercial client products |
Extended components
| Component | License | Role | Description |
|---|---|---|---|
| Pure JS SDK | ARR (closed source) | Pure JavaScript client SDK | Typically used for Mini Program development |
| Web client | ARR (closed source, free to use) | End-user interface | Ready to use out of the box |
| Admin console frontend | ARR (closed source, free to use) | App Administrator console | Can also be built independently using App Administrator REST APIs |
OpenIMClientSDK and OpenIMServer capabilities
Friends and relationship chains
- Search, discover, request, add, and delete friends
- Accept or reject friend applications
- Set friend remarks and configure friend request permissions
- Synchronize friend lists and profile data in real time
Blocklist
- Add users to and remove users from the blocklist
- Synchronize blocklists in real time
- Block messages and audio/video calls between blocked users
Groups
- Create and dissolve groups
- Apply to join, invite members, leave groups, and kick group members
- Update and synchronize group names, avatars, and descriptions
- Configure join verification rules and transfer group ownership
- Control member profile visibility and member-to-member friend addition permissions
- Appoint and remove group administrators
- Search group members and customize in-group member profiles
- Mute the entire group or silence specific members
- Publish group announcements
Messages
- Text, image, video, emoji/sticker, file, voice, contact card, location, custom, and group announcement messages
- Offline messages, roaming messages, multi-device synchronized messages, and historical messages
- Single message forwarding and merged multi-message forwarding
- Delete, clear, copy, and recall messages
- Re-edit recalled messages
- Group
@mentions, 1-on-1 typing status indicators, burn-after-reading (ephemeral messages), message do-not-disturb (DND), history visibility for new members, and unread badges - Local message search
Conversations
- Pin and delete conversations
- Search local conversations
- Mark conversations as read and configure conversation DND
Server-side open capabilities
- REST APIs for authentication, users, relationship chains, groups, conversations, and message administration
- Webhooks for group, message, push, relationship chain, and user lifecycle events
Capacity and deployment
- Up to 3,000 friends per user
- Groups supporting up to 100,000 members
- Sub-second real-time synchronization
- Source-based clustered deployments
Multi-device login policies
- No cross-platform session eviction
- Enforces a single active device per platform
- Allows one concurrent device each for PC, mobile, tablet, Web, and Mini Program
Audio and video capabilities
- The open-source edition provides foundational 1-on-1 audio and video calling capabilities.
- Group audio/video calls and multi-party video conferencing are not open source.
- Integrators must implement application-level handling for timeouts, missed calls, cancellations, and related call states.
Choose components
- If you only need core instant messaging, integrate OpenIMClientSDK and deploy OpenIMServer.
- If you also need user registration, authentication, and application administration, deploy ChatServer as needed.
- If you need a complete ready-made client UI or administration console, evaluate the available extended components or build custom frontends using the SDK and REST APIs.