Browse OpenIM Guides
Guides

Open-Source Capabilities

Included components, messaging features, server APIs, and capacity notes.

Copy

What the open-source edition includes

Core components

ComponentLicenseRoleDescription
OpenIMClientSDKAGPL-3.0Client SDKProvides client communication capabilities for messages, conversations, groups, and friends; integrate it into your own application
OpenIMServerApache-2.0Core IM serverProvides the core messaging path, message synchronization, REST APIs, and Webhooks
ChatServerApache-2.0Business extension serverProvides registration, login, and App management; integrate it as needed or omit it if you already have an account system
Client demos / sample UIAGPL-3.0SDK integration examplesDemonstrate how to integrate OpenIMClientSDK; they are not complete commercial clients

Extended components

ComponentLicenseRoleDescription
Pure JS SDKARR (closed source)Pure JavaScript client SDKCommonly used for Mini Program development
Web clientARR (closed source, free to use)Complete end-user interfaceReady to use
Admin console frontendARR (closed source, free to use)App Administrator consoleYou can also build your own with App Administrator APIs

OpenIMClientSDK and OpenIMServer capabilities

Friends and relationships

  • Find, request, search for, add, and delete friends
  • Accept or reject friend requests
  • Set friend remarks and friend-request permissions
  • Synchronize friend lists and profiles in real time

Blocklist

  • Add users to and remove users from the blocklist
  • Synchronize the blocklist in real time
  • Restrict messages and audio/video calls between blocked users

Groups

  • Create and dissolve groups
  • Request to join, invite users, leave groups, and remove members
  • Update and synchronize group names, avatars, and profiles
  • Configure join verification and transfer group ownership
  • Control whether members can view other member profiles or add them as friends
  • Appoint and remove administrators
  • Search for members and update their in-group profiles
  • Mute the entire group or specified members
  • Publish group announcements

Messages

  • Text, image, video, emoji, file, voice, contact card, location, custom, and group announcement messages
  • Offline, roaming, multi-device, and historical messages
  • Forward a single message or merge and forward multiple messages
  • Delete, clear, copy, and recall messages
  • Re-edit recalled messages
  • Group mentions, one-to-one typing status, burn after reading, message do-not-disturb, history visibility for new members, and new-message indicators
  • Local message search

Conversations

  • Pin and delete conversations
  • Search local conversations
  • Mark conversations as read and configure do-not-disturb

Server-side open capabilities

  • REST APIs for authentication, users, relationships, groups, conversations, and messages
  • Webhooks for groups, messages, push, relationships, and users

Capacity and deployment

  • Up to 3,000 friends
  • Groups with up to 100,000 members
  • Second-level synchronization
  • Source-based cluster deployment

Multi-device login policies

  • Do not force logout on any platform
  • Allow one device per platform
  • Allow one device each for PC, mobile, Pad, Web, and Mini Program

Audio and video capabilities

  • The open-source edition provides basic one-to-one audio and video calls.
  • Group audio/video calls and video conferencing are not open source.
  • The integrator must implement business behavior such as unanswered-call timeouts and cancellation.

Choosing components

  • If you only need core instant messaging, integrate OpenIMClientSDK and deploy OpenIMServer.
  • If you also need registration, login, and App management, deploy ChatServer as needed.
  • If you need a complete client or admin console, evaluate the available extended components or build your own based on the SDK, REST APIs, and business requirements.