Friend management
Manage friend relationships through the Chat SDK.
Send a friend request
TypeScript
import { NCEngine } from '@nexconn/chat';
const { code } = await NCEngine.userModule.addFriend({
userId: '<target-user-id>',
extra: 'Hi, let\'s connect!',
});
if (code === 0) {
console.log('Friend request sent');
}
Accept a friend request
TypeScript
const { code } = await NCEngine.userModule.acceptFriendApplication('<requester-user-id>');
if (code === 0) {
console.log('Friend request accepted');
}
Reject a friend request
TypeScript
const { code } = await NCEngine.userModule.refuseFriendApplication('<requester-user-id>');
if (code === 0) {
console.log('Friend request rejected');
}
Get the friend list
TypeScript
const { code, data } = await NCEngine.userModule.getFriendsInfo(['<user-id-1>', '<user-id-2>']);
if (code === 0) {
console.log('Friends:', data);
}
Remove a friend
TypeScript
const { code } = await NCEngine.userModule.deleteFriends(['<friend-user-id>']);
if (code === 0) {
console.log('Friend removed');
}
Listen for friendship events
Register a UserHandler to receive friendship-related events:
TypeScript
import {
NCEngine,
UserHandler,
FriendAddEvent,
FriendDeleteEvent,
FriendApplicationStatusChangedEvent,
FriendInfoChangedSyncEvent,
} from '@nexconn/chat';
NCEngine.addUserHandler('friend-handler', new UserHandler({
onFriendAdd(event: FriendAddEvent): void {
console.log('Friend added:', event);
},
onFriendDelete(event: FriendDeleteEvent): void {
console.log('Friend removed:', event);
},
onFriendApplicationStatusChanged(event: FriendApplicationStatusChangedEvent): void {
console.log('Friend application status changed:', event);
},
onFriendCleared({ operationTime }): void {
console.log('Friend list cleared at:', operationTime);
},
onFriendInfoChangedSync(event: FriendInfoChangedSyncEvent): void {
console.log('Friend info synced:', event);
},
}));
Remove the handler when it is no longer needed:
TypeScript
NCEngine.removeUserHandler('friend-handler');
info
- By default, non-friends can still send messages to each other. Enable Restrict direct messaging to friends in the Console under Chat > Chat settings > Friend to restrict messaging.