Agent JS SDK v2.7.3
發佈日期:2026-02-12 狀態:✅ 最新版本 支持狀態:完全支持
版本摘要
AICC Agent JS SDK v2.7.3 是一個穩定版本更新,主要著重於性能優化、穩定性改進和新功能支持。此版本修復了多個 bug,改善了 WebRTC 連接可靠性,並增加了對監督者功能的更好支持。
新增功能
1. 增強的錯誤恢復
改進內容:
- 自動檢測並修復 WebSocket 連接狀態不一致
- 改進的重連機制,支持指數級退避
- 更好的 Token 過期處理
受益場景:
- 網絡不穩定環境
- 移動網絡切換
- 長時間在線
javascript
// 自動重連已改進,無需應用干預
sdk.on('connectionLost', (event) => {
console.log('連接已丟失,SDK 自動重連中...');
// SDK 會自動進行重連,無需調用任何方法
});2. WebRTC 媒體質量監測
新增 API:
javascript
const stats = sdk.getCallStats(callId);
// 返回實時的媒體質量數據:
// - audioPacketLoss: 音頻丟包率
// - rtt: 往返延遲
// - jitter: 抖動
// - availableBandwidth: 可用帶寬應用示例:
javascript
// 根據網絡質量動態調整
sdk.on('callStateChanged', async (event) => {
if (event.state === 'CONNECTED') {
const stats = sdk.getCallStats(event.callId);
if (stats.packetLoss > 5) {
console.warn('網絡質量不佳,建議降低視頻質量');
await sdk.setVideoQuality('low');
}
}
});3. 增強的監督者功能
改進內容:
- 支援同時監聽多個座席
- 改進的強制插話音頻質量
- 耳語功能現在支持更清晰的音頻編碼
新增事件:
javascript
sdk.on('multipleMonitorsDetected', (event) => {
// 當多個監督者監聽同一座席時觸發
console.log('當前有', event.monitorCount, '個監督者正在監聽');
});4. 語音識別增強
改進內容:
- 支援更高精度的語音識別
- 實時語音識別結果更新
- 支援中英文混合識別
改進的事件:
javascript
sdk.on('speechRecognized', (event) => {
console.log('文本:', event.text);
console.log('置信度:', event.confidence); // 精度更高
console.log('語言:', event.language); // 新增語言字段
console.log('是否最終:', event.isFinal); // 改進的判定
});改進和優化
性能改進
| 項目 | v2.7.2 | v2.7.3 | 改善 |
|---|---|---|---|
| 初始化時間 | 1.2s | 0.8s | ⬇️ 33% |
| 連接建立時間 | 2.5s | 1.8s | ⬇️ 28% |
| 內存使用 (通話 1h) | 150MB | 95MB | ⬇️ 37% |
| 登出時間 | 0.5s | 0.3s | ⬇️ 40% |
穩定性改進
- ✅ 修復長時間連接時的內存洩漏
- ✅ 改進 WebRTC 連接超時處理
- ✅ 增強了信號通話轉接可靠性
- ✅ 改善了瀏覽器兼容性問題
瀏覽器支持
| 瀏覽器 | 版本 | 支持狀況 |
|---|---|---|
| Chrome | 60+ | ✅ 完全支持 |
| Firefox | 55+ | ✅ 完全支持 |
| Safari | 11+ | ✅ 完全支持 (含 iOS) |
| Edge | 15+ | ✅ 完全支持 |
| Opera | 47+ | ✅ 完全支持 |
| IE 11 | - | ❌ 不支持 |
Bug 修復
已修復的 bug
WebRTC 連接超時 (優先級:高)
- 描述:某些瀏覽器上 WebRTC 連接在不穩定網絡下超時
- 修復:改進了 ICE 候選收集邏輯
- 影響版本:v2.7.0-v2.7.2
轉接掛機 (優先級:中)
- 描述:轉接進行中座席掛機時未正確處理
- 修復:改進了轉接狀態機
靜音狀態不同步 (優先級:中)
- 描述:座席靜音狀態與實際不符
- 修復:改進了靜音狀態同步機制
重連時 Token 失效 (優先級:高)
- 描述:重連後使用舊 Token 導致連接失敗
- 修復:重連時自動使用新 Token
長時間通話內存增長 (優先級:高)
- 描述:通話時間越長內存占用越多
- 修復:改進了內存管理和垃圾回收
IVR 轉接丟失數據 (優先級:中)
- 描述:通過 IVR 轉接時自定義數據丟失
- 修復:改進了數據傳遞機制
已知限制
- IE 11 不支持:建議升級到 Edge 或其他現代瀏覽器
- WebRTC 在某些企業網絡中限制:某些企業防火牆可能阻止 WebRTC,需要 TURN 中繼
- 實時語音識別延遲:在高延遲網絡上,語音識別結果延遲可能達 2-3 秒
升級指南
升級前檢查清單
- [ ] 備份現有生產環境配置
- [ ] 在測試環境驗證新版本
- [ ] 準備回滾方案
- [ ] 通知用戶可能的短暫服務中斷
升級步驟
方式 1:通過 CDN
html
<!-- 舊版本 -->
<script src="https://cdn.aicc.example.com/uni4cc-v2.7.2.js"></script>
<!-- 新版本 -->
<script src="https://cdn.aicc.example.com/uni4cc-v2.7.3.js"></script>無需修改代碼,直接更新 CDN 鏈接。
方式 2:通過 npm
bash
# 更新包版本
npm update @aicc/uni4cc-sdk
# 或指定具體版本
npm install @aicc/uni4cc-sdk@2.7.3方式 3:手動下載
- 從 https://cdn.aicc.example.com/uni4cc-v2.7.3.js 下載
- 替換本地舊版本文件
- 清理瀏覽器緩存
升級驗證
升級後執行以下測試:
javascript
// 驗證版本
console.log(uni4cc.VERSION); // 應輸出 "2.7.3"
// 驗證基本功能
const sdk = uni4cc.init({...});
await sdk.login('password');
const status = sdk.getStatus();
console.log('座席狀態:', status.status); // 應為 "LOGGEDIN"遷移指南(從 v2.7.2)
API 變更
✅ 完全向後兼容 - 無需修改現有代碼
新增推薦用法
javascript
// v2.7.3 推薦:使用 getCallStats() 監測媒體質量
setInterval(() => {
const stats = sdk.getCallStats(currentCallId);
if (stats && stats.packetLoss > 5) {
console.warn('網絡質量下降');
}
}, 5000);性能建議
內存優化
javascript
// v2.7.3 改善了內存使用,但建議仍要清理資源
sdk.on('callEnded', () => {
// 清理通話相關數據
currentCallId = null;
transcriptBuffer = [];
});網絡優化
javascript
// 根據媒體統計調整品質
sdk.on('callStateChanged', async (event) => {
if (event.state === 'CONNECTED') {
const stats = sdk.getCallStats(event.callId);
// 動態調整視頻比特率
if (stats.availableBandwidth < 500) {
await sdk.setVideoBitrate(256); // 降低質量
} else if (stats.availableBandwidth > 2000) {
await sdk.setVideoBitrate(1000); // 提高質量
}
}
});支持和反饋
- 問題報告:https://bugs.aicc.example.com
- 技術支援:support@aicc.example.com
- 郵件反饋:feedback@aicc.example.com
下載
- CDN:https://cdn.aicc.example.com/uni4cc-v2.7.3.js
- npm:
npm install @aicc/uni4cc-sdk@2.7.3 - GitHub:https://github.com/aicc/uni4cc-sdk/releases/tag/v2.7.3
許可和法律
本軟件受 AICC 軟件許可協議約束。詳見 LICENSE 文件。