OpenIM iOS SDK overview
Integrate users, conversations, groups, messages, calling, and events into an iOS application with OpenIM SDK.
OpenIM iOS SDK exposes OpenIMSDK capabilities to iPhone and iPad applications through Objective-C APIs. Obtain the shared manager through [OIMManager manager] and reuse that instance throughout the application lifecycle.
This documentation uses the public Objective-C declarations of OpenIM iOS SDK as its API baseline. It covers only currently public business APIs and delegates. Deprecated methods do not receive separate pages, and the friend and conversation lists use only paginated APIs. The fixed SDK commit used for review remains in the content audit record rather than being repeated in public guides.
Integration flow
- Install
OpenIMSDKand prepare accessible OpenIMServer endpoints. - Obtain the current user's
userIDand token from a trusted backend. - Configure
OIMInitConfigand callinitSDKWithConfig:.... - Register business delegates before calling
login:token:.... - Build your interface with user, friend, conversation, group, message, and audio/video call signaling APIs.
- When logging out or changing accounts, remove delegates and clear application state associated with the current account.
Documentation structure
| Domain | Content |
|---|---|
| Getting started | Installation, initialization, authentication, connection lifecycle, and the first message. |
| Users | User profiles, friends, blacklist, and online status. |
| Conversations | Conversation queries, settings, drafts, unread counts, hiding, clearing, and conversation groups. |
| Groups | Group profiles, members, applications, permissions, and group events. |
| Messages | Message creation, sending, receiving, querying, searching, revocation, and read receipts. |
| Audio and video calls | Call signaling, room credentials, custom signaling, and call events. |
| Events | Delegate registration, removal, and initial synchronization. |
Enterprise capabilities are documented only when backed by real Objective-C APIs in the enterprise iOS SDK or OpenIMCore interfaces distributed with the SDK. These include conversation groups, message modification, pinning or unpinning messages, audio transcription, and audio and video calls. Conversation groups and audio transcription call OpenIMCore's JSON interfaces directly; the other capabilities use higher-level Objective-C selectors on OIMManager. Each page states the applicable boundary instead of inferring models from similar names.
Key data boundaries
- Set
recvIDwhen sending a one-to-one message andgroupIDwhen sending a group message. OIMConversationInfostores conversation presentation data and unread counts;OIMGroupInfoandOIMGroupMemberInfostore group and membership data.- Query callbacks establish snapshots, while delegates merge subsequent incremental changes. A successful state-change callback does not mean every client's delegate has already arrived.
- Tokens and room credentials are sensitive and must not be written to ordinary logs or persisted in uncontrolled storage.
References
Was this page helpful?