获取用户信息
通过 userId 批量获取用户
接口定义
swift
func getUsers(userIds: [String], completion: @escaping ((_ users: [KIMUser], _ error: KIMError?) -> Void))
1
Objective-C
- (void)getUsersWithUserIds:(NSArray<NSString *> *)userIds completion:(void (^)(NSArray<KIMUser *> *, KIMError *))completion;
1
参数说明
参数 | 类型 | 说明 |
---|---|---|
userIds | [String] | 用户Id数组,数组数量不得超过100。该用户Id为SDK内部使用的用户Id。 |
completion | (_ users: [KIMUser], _ error: KIMError?) -> Void | 获取结果回调。 users: 用户信息数组。 error: 错误信息,失败时有值。 |
KIMUser
说明:
属性 | 类型 | 说明 |
---|---|---|
userId | String | SDK内部使用的用户Id。 |
thirdUnionId | String? | 第三方UnionId,SDK内部用户Id与第三方用户Id的映射值,用于第三方已经同步账号信息到WPS账号系统的场景,账号信息未同步时为空。 |
name | String? | 用户名称。 |
代码示例
swift
KIM.userModule.getUsers(userIds: userIds) { users, error in
guard error == nil else {
return
}
// 获取用户成功。
}
1
2
3
4
5
6
2
3
4
5
6
Objective-C
[KIM.userModule getUsersWithUserIds:userIds completion:^(NSArray<KIMUser *> * users, KIMError * error) {
if (error == nil) {
// 获取成功
} else {
// 获取失败
}
}];
1
2
3
4
5
6
7
2
3
4
5
6
7
通过 thirdUninId 批量获取用户
接口定义
swift
func getUsers(thirdUninIds: [String], completion: @escaping ((_ users: [KIMUser], _ error: KIMError?) -> Void))
1
Objective-C
- (void)getUsersWithThirdUninIds:(NSArray<NSString *> *)thirdUninIds completion:(void (^)(NSArray<KIMUser *> *, KIMError *))completion;
1
参数说明
参数 | 类型 | 说明 |
---|---|---|
thirdUninIds | [String] | 第三方UninId数组,数组数量最大不超过100。thirdUninId 为第三方在进行账号同步时,同步给WPS开放平台的账号信息中标记用户的Id值,该值作为SDK账号与第三方账号的一个影射。 |
completion | (_ users: [KIMUser], _ error: KIMError?) -> Void | 获取结果回调。 users: 用户信息数组。 error: 错误信息,失败时有值。 |
代码示例
swift
KIM.userModule.getUsers(thirdUninIds: thirdUninIds) { users, error in
guard error == nil else {
return
}
// 获取用户成功。
}
1
2
3
4
5
6
2
3
4
5
6
Objective-C
[KIM.userModule getUsersWithThirdUninIds:thirdUninIds completion:^(NSArray<KIMUser *> * users, KIMError * error) {
if (error == nil) {
// 获取成功
} else {
// 获取失败
}
}];
1
2
3
4
5
6
7
2
3
4
5
6
7
获取指定用户详情
接口定义
swift
func getUserInfo(userId: String) -> KIMDynamicUserInfo
1
Objective-C
- (KIMDynamicUserInfo *)getUserInfoWithUserId:(NSString *)userId
1
参数说明
参数 | 类型 | 说明 |
---|---|---|
userId | [String] | SDK内部使用的用户Id。 |
返回说明
类型 | 说明 |
---|---|
KIMDynamicUserInfo | 可监听变化的用户信息。由于用户信息可能异步返回或相关属性会产生变化,用户信息需要通过 KIMDynamicUserInfo 进行包装,可以通过 KIMDynamicUserInfo 提供的attach(changedAction: ValueChanged?) 添加信息改变监听闭包,当信息发生改变时会调用闭包返回 KIMUserInfo 。 |
KIMUserInfo
说明:
属性 | 类型 | 说明 |
---|---|---|
userId | String | SDK内部使用的用户Id。 |
name | String | 用户名称。 |
avatar | String | 用户头像。 |
workingStatus | KIMUserWorkingStatus | 工作状态。 |
代码示例
swift
let userInfo = KIM.userModule.getUserInfo(userId: userId)
// 设置监听
userInfo.attach { [weak self] userInfoData in
let name = userInfoData?.name
}
1
2
3
4
5
2
3
4
5
Objective-C
KIMDynamicUserInfo *userInfo = [KIM.userModule getUserInfoWithUserId:@""];
// 设置监听
[userInfo attachWithChangedAction:^(KIMUserInfo *userInfoData) {
NSString *name = userInfoData.name;
}];
1
2
3
4
5
2
3
4
5