getGroupOnlineMemberCount method
Implementation
Future<V2TimValueCallback<int>> getGroupOnlineMemberCount({
required String groupID,
}) async {
if (!TIMManager.instance.isInitSDK()) {
return V2TimValueCallback<int>(code: TIMErrCode.ERR_SDK_NOT_INITIALIZED.value, desc: "sdk not init");
}
String userData = Tools.generateUserData('getGroupOnlineMemberCount');
Completer<V2TimValueCallback<int>> completer = Completer();
void handleApiCallback(Map jsonResult) {
V2TimValueCallback<Map<String, int>> result = V2TimValueCallback<Map<String, int>>.fromJson(jsonResult);
int count = result.data?['group_get_online_member_count_result'] ?? 0;
completer.complete(V2TimValueCallback<int>(code: result.code, desc: result.desc, data: count));
}
NativeLibraryManager.timApiValueCallback2Future(userData, handleApiCallback);
Pointer<Char> pGroupID = Tools.string2PointerChar(groupID);
Pointer<Void> pUserData = Tools.string2PointerVoid(userData);
NativeLibraryManager.bindings.DartGetOnlineMemberCount(pGroupID, pUserData);
return completer.future;
}