getGroupMemberList method

Future<V2TimValueCallback<V2TimGroupMemberInfoResult>> getGroupMemberList(
  1. {required String groupID,
  2. required GroupMemberFilterTypeEnum filter,
  3. required String nextSeq,
  4. int count = 15,
  5. int offset = 0}
)

Implementation

Future<V2TimValueCallback<V2TimGroupMemberInfoResult>> getGroupMemberList({
  required String groupID,
  required GroupMemberFilterTypeEnum filter,
  required String nextSeq,
  int count = 15,
  int offset = 0,
}) async {
  if (!TIMManager.instance.isInitSDK()) {
    return V2TimValueCallback<V2TimGroupMemberInfoResult>(code: TIMErrCode.ERR_SDK_NOT_INITIALIZED.value, desc: "sdk not init");
  }

  String userData = Tools.generateUserData('getGroupMemberList');
  Completer<V2TimValueCallback<V2TimGroupMemberInfoResult>> completer = Completer();
  NativeLibraryManager.timValueCallback2Future<V2TimGroupMemberInfoResult>(userData, completer);

  int? seq = 0;
  if (nextSeq.isNotEmpty) {
    seq = int.tryParse(nextSeq);
  }
  GroupGetMemberInfoListParam param = GroupGetMemberInfoListParam(groupID: groupID, filter: filter, nextSeq: seq);
  Pointer<Char> pJsonParam = Tools.string2PointerChar(json.encode(param.toJson()));
  Pointer<Void> pUserData = Tools.string2PointerVoid(userData);
  NativeLibraryManager.bindings.DartGetGroupMemberList(pJsonParam, pUserData);

  return completer.future;
}