createGroup method
创建群组。
群组创建成功后,会更新内存及数据库中的数据,多端多设备会收到相应的通知事件,将群组更新到内存及数据库中。 可通过设置 ChatClient.addMultiDeviceEventHandler 监听相关事件,事件回调函数为 ChatMultiDeviceEventHandler.onGroupEvent,第一个参数为事件,创建群组事件为 ChatMultiDevicesEvent.GROUP_CREATE。
Param groupName
群组名称。
Param desc
群组描述。
Param inviteMembers
群成员数组。群主 ID 可选。
Param inviteReason
用户入群邀请信息。
Param options
群组的其他选项。请参见 ChatGroupOptions。
群组的其他选项。
- 群最大成员数,默认值为 200;
- 群组类型,详见 ChatGroupStyle,默认为 ChatGroupStyle.PrivateOnlyOwnerInvite;
- 邀请进群是否需要对方同意,默认为 false,即邀请后直接进群;
- 群组详情扩展。
Return 创建成功的群对象。
Throws 如果有异常会在此抛出,包括错误码和错误信息,详见 ChatError。
Implementation
Future<ChatGroup> createGroup({
String? groupName,
String? desc,
List<String>? inviteMembers,
String? inviteReason,
required ChatGroupOptions options,
}) async {
Map req = {'options': options.toJson()};
req.putIfNotNull("groupName", groupName);
req.putIfNotNull("desc", desc);
req.putIfNotNull("inviteMembers", inviteMembers);
req.putIfNotNull("inviteReason", inviteReason);
Map result = await _channel.invokeMethod(ChatMethodKeys.createGroup, req);
try {
ChatError.hasErrorFromResult(result);
return ChatGroup.fromJson(result[ChatMethodKeys.createGroup]);
} on ChatError catch (e) {
throw e;
}
}