获取全部用户
This commit is contained in:
@@ -343,6 +343,41 @@ class CallStateManager {
|
||||
return this._signaling;
|
||||
}
|
||||
|
||||
/**
|
||||
* 在仅建立WebSocket连接时同步当前用户信息
|
||||
* @param {{ id?: string, name?: string, avatar?: string } | null} userInfo - 用户信息
|
||||
*/
|
||||
syncSocketUserInfo(userInfo = null) {
|
||||
const settings = userInfo || (() => {
|
||||
try {
|
||||
return JSON.parse(localStorage.getItem('userSettings') || '{}');
|
||||
} catch (error) {
|
||||
console.error('Error parsing user settings:', error);
|
||||
return {};
|
||||
}
|
||||
})();
|
||||
|
||||
const payload = {
|
||||
id: settings.id || settings.userId || this.state.session.localUser.id || '',
|
||||
name: settings.name || this.state.session.localUser.name || '我',
|
||||
avatar: settings.avatar || this.state.session.localUser.avatar || '/images/p1.png'
|
||||
};
|
||||
|
||||
this.state.session.localUser = {
|
||||
...this.state.session.localUser,
|
||||
id: payload.id,
|
||||
name: payload.name,
|
||||
avatar: payload.avatar
|
||||
};
|
||||
|
||||
if (this._signaling && typeof this._signaling.sendMessage === 'function') {
|
||||
this._signaling.sendMessage('', {
|
||||
type: 'user-info',
|
||||
data: payload
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 创建信令和RTC实例
|
||||
* @async
|
||||
|
||||
Reference in New Issue
Block a user