版本與驗證範圍
npm 1.0.7
釋出日期:2026-11-10。增加遊戲房間,latest 指向 1.0.7。
npm install @deeprespond/im-server-sdk@1.0.7- 增加
im.game:listRegions、createRoom、getRoom、listRooms/iterRooms、listMembers、issueTickets、startRoom、closeRoom、removeMember。建房、開局、結束自動重試;籤票據不自動重試(重新簽發會作廢舊票據);移出玩家沒有給operation_id時自動生成,重試時不變。結果中的created、accepted、removed由狀態碼得出。介面說明見遊戲房間 · 服務端介面。 - 回撥增加 7 種
game_room.*事件的型別,game_room.closed帶每個玩家的線上時長和計費分鐘數,見遊戲回撥事件。 moderation.checkText預設關鍵詞和智慧稽核一起檢查,結果增加provider_skipped;只查關鍵詞時傳with_provider: false。- 修正單元測試中 Express 介面卡超大請求體用例在 Node.js 24 下的
write EPIPE失敗(測試用例本身的問題,SDK 行為不變)。 - 通過生成程式碼一致性、ESLint、型別檢查、單元與型別測試(153 項)、構建和包級檢查;連本地服務的遊戲房間整合測試通過。
npm 1.0.6
釋出日期:2026-11-03。增加 AI 對話,latest 指向 1.0.6。原始碼版本 1.0.5 只用於 2026-10-23 的測試版構建,沒有釋出到 npm。
npm install @deeprespond/im-server-sdk@1.0.6im.ai增加機器人管理和流式回覆:startStream開始一條回覆,writeText、writeReasoning、writeImage、writeFile、writeTool寫入,finish、fail結束;pipeOpenAI、pipeOpenAIResponses、pipeAnthropic、pipeGemini直接對接模型的流。用法見呼叫介面。- 回撥處理器增加
onAIMessage、onAIStreamStopped;收到ai.stream_stopped時自動觸發本程序中對應流的signal。 - 通過生成程式碼一致性、型別檢查、構建和包級檢查;公開安裝後連本地服務跑 AI 流式回覆的端到端測試 18 項通過。單元測試中 Express 介面卡的兩個用例在 Node.js 24 下因
write EPIPE失敗(測試用例本身的問題,與本版本的改動無關),其餘通過。
npm 1.0.1
釋出日期:2026-10-23。這是回撥模組匯出修復版本,latest 指向 1.0.1。
npm install @deeprespond/im-server-sdk@1.0.1- 補齊
/callback的EVENT_REQUIRED、EVENT_RAW_PATHS、HOOK_ACTIONS、HOOK_RAW_PATHS執行時匯出,ESM 與 CommonJS 均可讀取。 - 主入口的 Service 保持純型別匯出,修正宣告打包後誤呈現為執行時建構函式的問題。
- 增加全部公開入口的宣告值與執行時匯出一致性檢查,覆蓋 ESM、CommonJS 及 NodeNext 使用方。
- 通過生成程式碼一致性、型別檢查、單元測試、構建和包級檢查;4 項可選 Redis 測試因未配置測試地址而跳過。業務介面協議不變,無需為此更新 IM 服務端。
npm 1.0.0
釋出日期:2026-10-22。公共包為 @deeprespond/im-server-sdk,首次釋出時 latest 指向 1.0.0。包保留 UNLICENSED 授權標記,具體使用授權請聯絡深應智慧。
npm install @deeprespond/im-server-sdk@1.0.0| 專案 | 1.0.0 的內容 |
|---|---|
| 環境 | Node.js 22.17.0 以上;ESM/CommonJS 與 TypeScript 宣告;零執行時依賴 |
| 應用介面 | 使用者、好友、黑名單、群組、訊息、會話、聊天室、檔案、推送、內容安全、線上狀態、IM 通話與獨立 RTC 頻道 |
| 請求能力 | App Token 換取與重新整理、按介面分類重試、限流等待、本地限速、取消、超時、分頁、批次拆分及原始 JSON 保留 |
| 回撥 | 簽名和防重放檢查、事件去重、同步回撥、金鑰輪換;Node HTTP、Express、Koa、Fastify 與 Node.js 環境的標準 Request 適配 |
| 共享儲存 | ioredis 與 node-redis 的 App Token、隨機數及事件去重適配 |
| 包內容 | 執行與型別產物、README、package.json;指令碼和框架示例由原始碼倉庫提供,訪問需要倉庫許可權 |
釋出時驗證
本輪發布在 Node.js 22.22.2 上完成以下檢查:
| 檢查 | 結果 |
|---|---|
| 生成程式碼一致性、ESLint、Prettier、TypeScript | 通過 |
| 單元與型別測試 | 126 項通過,4 項可選 Redis 測試跳過,無型別錯誤 |
| 本機一致性測試服務的整合與回撥端到端 | 15 項通過,未跳過 |
| ESM/CommonJS 構建與打包 | 通過;12 項打包檢查覆蓋 publint、attw、NodeNext 型別、雙模組互操作及程序退出 |
| 公共 npm 安裝 | 在獨立工程從官方 registry 安裝成功;ESM/CommonJS 各 9 個入口、雙模組互操作及 NodeNext strict 型別檢查通過 |
| 製品完整性 | npm registry 的 SHA-1、SHA-512 與受檢釋出包一致 |
這些結果覆蓋本機測試服務和包接入,不代表所有部署環境的完整業務驗收。釋出時未配置可選測試 Redis,未補做 TypeScript 5.2、NestJS 10 相容專項,也未替代真實雲端應用下許可權隔離、客戶端收發和回撥全流程的專項驗收。接入後按快速開始、回撥聯調在自己的測試應用驗證。
從本地 tgz 切換到 npm
之前使用原始碼構建的 deeprespond-im-server-sdk-1.0.0.tgz 時,在同一業務工程執行本頁最新版本的 npm 安裝命令即可將依賴來源切換到公共包。提交更新後的 package.json 和 lockfile,部署時沿用專案鎖定依賴的安裝方式。
確認實際版本與來源:
npm ls @deeprespond/im-server-sdk
node -p "require('@deeprespond/im-server-sdk/package.json').version"lockfile 中的製品地址應來自 registry.npmjs.org,或來自專案明確配置並信任的映象。私有映象尚未同步時可為本次安裝指定 --registry=https://registry.npmjs.org/。
後續升級
業務專案可固定 @deeprespond/im-server-sdk@1.0.7 並提交 lockfile。升級時先閱讀對應版本說明,在測試應用驗證介面、回撥和框架配置後更新依賴。自行構建的原始碼包需要重新構建再安裝,不會隨公共 npm 包自動變化。
獨立 RTC 頻道 API 和九種頻道事件已包含在 1.0.0 中。頻道管理與使用者媒體加入分工見頻道方法和使用獨立頻道。
