腾讯云即时通信IMAndroid&iOS&Windows&Mac_AI解决方案_同尘科技

即时通信 IM 1年前 (2023-11-03) 浏览 35

功能描述

群成员资料类为 V2TIMGroupMemberFullInfo,内含群成员 userID、自定义信息、角色、禁言等信息。
相关方法在核心类 V2TIMGroupManager(Android) / V2TIMManager(Group)(iOS & Mac) 中。

获取群成员资料

您可以调用 getGroupMembersInfo (Android / iOS & Mac / Windows) 获取群成员资料。该接口支持批量获取,您可以一次传入多个 userID 获取多个群成员的资料,从而提升网络传输效率。示例代码如下:AndroidiOS & MacWindows

List userIDList = new ArrayList();userIDList.add("userA");userIDList.add("userB");V2TIMManager.getGroupManager().getGroupMembersInfo("groupA", userIDList, new V2TIMValueCallback<List>() {  @Override  public void onSuccess(List v2TIMGroupMemberFullInfos) {        // 获取成功  }
@Override public void onError(int code, String desc) { // 获取失败 }});
[[V2TIMManager sharedInstance] getGroupMembersInfo:@"groupA" memberList:@[@"user1"] succ:^(NSArray *memberList) {    // 获取成功} fail:^(int code, NSString *desc) {    // 获取失败}];
template class ValueCallback final : public V2TIMValueCallback {public:    using SuccessCallback = std::function;    using ErrorCallback = std::function;
ValueCallback() = default; ~ValueCallback() override = default;
void SetCallback(SuccessCallback success_callback, ErrorCallback error_callback) { success_callback_ = std::move(success_callback); error_callback_ = std::move(error_callback); }
void OnSuccess(const T& value) override { if (success_callback_) { success_callback_(value); } } void OnError(int error_code, const V2TIMString& error_message) override { if (error_callback_) { error_callback_(error_code, error_message); } }
private: SuccessCallback success_callback_; ErrorCallback error_callback_;};
V2TIMString groupID = "groupA";V2TIMStringVector memberList;memberList.PushBack("userA");memberList.PushBack("userB");
auto callback = new ValueCallback{};callback->SetCallback( [=](const V2TIMGroupMemberFullInfoVector& groupMemberFullInfoList) { // 获取成功 delete callback; }, [=](int error_code, const V2TIMString& error_message) { // 获取失败 delete callback; });
V2TIMManager::GetInstance()->GetGroupManager()->GetGroupMembersInfo(groupID, memberList, callback);

修改群成员资料

群主或管理员可以调用 setGroupMemberInfo (Android / iOS & Mac / Windows) 接口修改群成员的群名片(nameCard)、自定义字段(customInfo)等与群成员相关的资料。普通群成员可以调用 setGroupMemberInfo 设置自己的群名片(nameCard)、自定义字段(customInfo)等信息。说明 直播群(AVChatRoom)不存储群成员信息,设置直播群成员名片不适用于直播群。如果要修改群成员自定义字段,您必须提前在 即时通信 IM 控制台 配置好该字段,配置页面如下图所示:注意 群成员自定义字段最多可设置 5 个。字段创建后,该字段将不可删除,也无法修改字段名与字段类型。示例代码如下:Android

V2TIMGroupMemberFullInfo memberFullInfo = new V2TIMGroupMemberFullInfo();// 指定修改的群成员memberFullInfo.setUserID("userA");// 设置修改的 nameCard 值memberFullInfo.setNameCard("userA_namecard");// 设置群成员自定义字段Map customMap = new HashMap();customMap.put("member_key1", "value1".getBytes());memberFullInfo.setCustomInfo(customMap);V2TIMManager.getGroupManager().setGroupMemberInfo("groupA", memberFullInfo, new V2TIMCallback() {  @Override  public void onSuccess() {        // 修改成功  }
@Override public void onError(int code, String desc) { // 修改失败 }});



对即时通讯IM解决方案有疑惑?想了解解决方案收费? 联系解决方案专家

腾讯云限时活动1折起,即将结束: 马上收藏

同尘科技为腾讯云授权服务中心,购买腾讯云享受折上折,更有现金返利:同意关联,立享优惠

阿里云解决方案也看看?: 点击对比阿里云的解决方案

- 0人点赞 -

发表点评 (0条)

not found

暂无评论,你要说点什么吗?