產品概述
IM 服務是一套即時通訊雲服務:你不用自己搭聊天伺服器,通過 SDK 和 REST API 就能在 App、網頁或小程式裡做出單聊、群聊、聊天室、音視訊通話和離線推送,並通過事件回撥把聊天裡發生的事同步到你的業務系統。
工作方式
你的業務服務端持有 App Token
你的 App / 網頁使用者登入後持有 User Token
服務端 REST API + 事件回呼管理使用者、群組和聊天室 · 傳送訊息 · 接收事件
客戶端介面 + 長連線登入 · 即時收發訊息 · 同步會話
深应智联使用者好友群組訊息會話聊天室音影片檔案推送內容安全回呼
多租戶隔離 · 執行策略 · 配額與熔斷
一次接入涉及三方:
- 你的業務服務端:用應用的憑據換取 App Token,呼叫服務端 REST API,建立使用者,管理好友、群組和聊天室,上傳檔案,以使用者或系統的身份發訊息,查詢和匯出訊息,管理通話。它還接收 IM 服務發來的事件回撥,可以在使用者發訊息、加好友、入群之前做業務校驗。
- 你的客戶端(App、網頁、小程式):以使用者的身份登入,通過長連線即時收發訊息、同步會話。登入、重連、同步和本地儲存都由客戶端 SDK 完成。
- 控制台:你的團隊在這裡管理應用、憑據、執行策略、推送、回撥和內容安全,檢視使用者、群組、訊息、用量和賬單。
從哪裡開始
| 要做什麼 | 看哪裡 |
|---|---|
| 10 分鐘跑通一條訊息 | 快速開始 |
| 弄清租戶、應用、AppKey、使用者、會話這些詞 | 基本概念 |
| 選客戶端 SDK | 客戶端 SDK |
| 從服務端建立使用者、發訊息 | 服務端接入概述 |
| 查人數、長度、頻率等上限 | 使用限制 |
| 做會議、語音房這類音影片頻道 | 加入第一個頻道 |
| 做多人即時對戰遊戲 | 開第一局遊戲 |
| 遇到問題 | 常見問題 |
已提供的能力
| 能力 | 包括 |
|---|---|
| 使用者 | 註冊與資料、自定義屬性;密碼登入,或由服務端簽發一次性登入憑證;多端登入與裝置管理;封禁、刪除、全域性禁言 |
| 好友與黑名單 | 好友申請與稽核、好友備註、黑名單;加好友方式(需要驗證、允許任何人、拒絕所有人) |
| 群組 | 建群與解散、群主和管理員、邀請與入群審批、入群連結、公開群、群資料與設定、全員禁言與成員禁言、群黑名單 |
| 訊息 | 單聊和群聊;文本、圖片、語音、影片、檔案、位置和自定義訊息;多端同步、離線訊息與歷史訊息;撤回、編輯、刪除、表情回應、置頂、@ 提及、回覆引用;只推給線上裝置的訊息 |
| 會話 | 會話列表與未讀數、已讀回執、置頂、標記未讀、刪除和清空會話 |
| 檔案 | 訊息附件、使用者頭像、群頭像和群檔案的上傳與儲存;大檔案分片上傳、斷點續傳;圖片去除拍攝資訊並生成縮圖;下載地址短期有效,只有本應用的使用者能換取;附件保留期可配置;儲存用量統計 |
| 聊天室 | 沒有固定成員、不存離線訊息的大規模聊天室:所有者和管理員、訊息按優先順序下發、禁言、封禁與白名單、聊天室屬性、線上人數與成員列表 |
| 音視訊通話 | 一對一和多人通話:振鈴、接聽、拒絕與超時、多端同時振鈴、斷線恢復;服務端查詢和結束通話;通話記錄與統計 |
| 獨立 RTC 頻道 | 按業務 channel_id 建音影片頻道;開放或憑票據加入;釋出者和訂閱者角色;成員處置和單獨的用量,見頻道概述 |
| 遊戲房間 | 多人即時對戰:你的服務端建房、簽發加入票據,玩家用 SDK 直連遊戲節點收發操作和幀;幀同步或即時轉發、斷線重連、補幀、快照;對局結束回撥帶結算結果和線上時長,見遊戲房間概述 |
| 離線推送 | APNs(含 VoIP)、FCM,以及華為、榮耀、小米、OPPO、vivo、魅族、鴻蒙通道;通知預覽、角標、免打擾、撤回後更新通知、推送統計 |
| 內容安全 | 訊息、聊天室訊息、資料、群資料、申請附言和檔案的傳送前檢查與事後稽核;詞庫、人工稽核、使用者舉報、違規記錄與自動處罰 |
| 事件回撥 | 使用者、好友、群、訊息、聊天室、通話和獨立頻道的事件回撥與訊息抄送;發訊息、加好友、入群前的同步回撥;請求籤名、重試與投遞記錄 |
| 長連線與線上狀態 | WebSocket 長連線即時推送;線上狀態的查詢與訂閱;多端線上 |
| AI 對話 | 機器人賬號;接入你自己的大模型,以機器人的身份流式回覆;客戶端逐字顯示、斷線續傳、停止生成;服務端 SDK 可直接對接 OpenAI、Anthropic、Gemini 的流 |
| 安全與管控 | App Token 與 Secret 輪換、IP 白名單、控制台成員角色與兩步驗證、操作日誌、按應用的呼叫額度與熔斷 |
| 套餐與賬單 | 按應用訂閱套餐,各項額度按套餐執行;用量每日統計、每月出賬;在控制台檢視用量、賬單和收款記錄 |
客戶端 SDK
| 你在開發 | 用這個 SDK |
|---|---|
| 網頁、H5、Electron,React / Vue 專案 | Web SDK |
| Android、iOS(一套程式碼)或桌面 App | Flutter SDK |
| Android 原生 App(Kotlin / Java) | Android SDK |
| Windows、macOS、Linux 桌面應用(Tauri 2) | Tauri SDK |
| 微信小程式 | 微信小程式 SDK |
| UniApp(H5、小程式、App) | UniApp SDK |
| 機器人、客服號、後臺常駐程式(Go) | Go SDK |
iOS 原生(Swift)還在規劃中,iOS 現在請用 Flutter SDK。各 SDK 的版本和已知限制見版本與支援狀態。
接入流程
- 註冊控制台賬號,使用自動建立的
demo應用或建立應用,拿到 AppKey 和服務端憑據; - 業務服務端換取 App Token,在你的使用者註冊或第一次用聊天時建立 IM 使用者;
- 客戶端用 SDK 以這個使用者的身份登入,收發訊息、同步會話,例如 Web SDK 快速整合;
- 按業務需要配置離線推送、事件回撥和內容安全,在執行策略中調整撤回時限、同時登入的裝置數、是否只能給好友發訊息等。
獨立音影片頻道
除了單聊通話和群通話,還可以用業務 channel_id 組織獨立的 RTC 頻道,適合會議、語音房和臨時協作。服務端建立頻道、簽發票據、管理成員;使用者用 SDK 登入後直接加入,釋出者傳送音影片,訂閱者只接收。頻道不會建立 IM 群,也不產生聊天訊息。