modifyTopicPermissionInPermissionGroup method
Future<V2TimValueCallback<List<V2TimTopicOperationResult> > >
modifyTopicPermissionInPermissionGroup({})
Implementation
Future<V2TimValueCallback<List<V2TimTopicOperationResult>>>
modifyTopicPermissionInPermissionGroup({
required String groupID,
required String permissionGroupID,
required Map<String, int> topicPermissionMap,
}) async {
if (!TIMManager.instance.isInitSDK()) {
return V2TimValueCallback<List<V2TimTopicOperationResult>>(code: TIMErrCode.ERR_SDK_NOT_INITIALIZED.value, desc: "sdk not init");
}
String userData = Tools.generateUserData('modifyTopicPermissionInPermissionGroup');
Completer<V2TimValueCallback<List<V2TimTopicOperationResult>>> completer = Completer();
NativeLibraryManager.timValueCallback2Future(userData, completer);
Pointer<Char> pGroupID = Tools.string2PointerChar(groupID);
Pointer<Char> pPermissionGroupID = Tools.string2PointerChar(permissionGroupID);
List<Map<String, dynamic>> jsonTopicPermissionList = Tools.map2JsonList(topicPermissionMap, 'topic_permission_key', 'topic_permission_value');
Pointer<Char> pJsonTopicPermissionList = Tools.string2PointerChar(json.encode(jsonTopicPermissionList));
Pointer<Void> pUserData = Tools.string2PointerVoid(userData);
NativeLibraryManager.bindings.DartModifyTopicPermissionInPermissionGroup(pGroupID, pPermissionGroupID, pJsonTopicPermissionList, pUserData);
return completer.future;
}