Group management
Manage group lifecycle operations such as creating, dismissing, and transferring ownership.
Create a group
TypeScript
import { GroupChannel } from '@nexconn/chat';
const { code, data: channel } = await GroupChannel.createGroup({
groupId: 'my-group-id', // Optional; if omitted, server generates an ID
groupName: 'My Group',
inviteeUserIds: ['user1', 'user2', 'user3'],
portraitUri: 'https://example.com/portrait.jpg',
});
if (code === 0) {
console.log('Group created:', channel);
}
Dismiss a group
Only the group owner can dismiss a group:
TypeScript
import { GroupChannel } from '@nexconn/chat';
const channel = new GroupChannel('<group-id>');
const { code } = await channel.dismiss();
if (code === 0) {
console.log('Group dismissed');
}
Transfer group ownership
Transfer the group owner role to another member:
TypeScript
import { GroupChannel } from '@nexconn/chat';
const channel = new GroupChannel('<group-id>');
const { code } = await channel.transferOwner({
newOwnerId: '<new-owner-user-id>',
});
if (code === 0) {
console.log('Ownership transferred');
}
Kick members from a group
TypeScript
import { GroupChannel } from '@nexconn/chat';
const channel = new GroupChannel('<group-id>');
const { code } = await channel.kickMembers({
userIds: ['user1', 'user2'],
});
if (code === 0) {
console.log('Members kicked');
}
Leave a group
TypeScript
import { GroupChannel } from '@nexconn/chat';
const channel = new GroupChannel('<group-id>');
const { code } = await channel.leave();
if (code === 0) {
console.log('Left group');
}
info
Management operations other than member management (e.g., updating group info, configuring join settings) are handled through the Server API.