Interface GroupChannelHandler

  • All Implemented Interfaces:

    
    public interface GroupChannelHandler
    
                        

    Group channel event handler.

    Listens for group-related event notifications, including:

    • Operations: group creation, member join/quit/kick, group dismissal, manager promotion/demotion, and ownership transfer

    • Info changes: group name, portrait, notice, permissions, and other property updates

    • Member changes: member nickname, extra info, and other profile updates within a group

    • Applications: join requests, invitation requests, and their approval/rejection results

    • Favorites sync: special-follow (favorites) changes synced across devices

    Register via NCEngine.addGroupChannelHandler. All callback methods have default empty implementations; override only the callbacks you need.

    NCEngine.addGroupChannelHandler("GROUP_HANDLER_ID", object : GroupChannelHandler {
        override fun onGroupOperation(event: GroupOperationEvent) {
            println("Group ${event.groupId} operation: ${event.operation}")
        }
    
        override fun onGroupInfoChanged(event: GroupInfoChangedEvent) {
            println("Group info changed, properties: ${event.changedProperties}")
        }
    
        override fun onGroupApplicationEvent(event: GroupApplicationEvent) {
            println("Group application: ${event.info.groupId}, type: ${event.info.type}")
        }
    })
    • Constructor Detail

    • Method Detail

      • onGroupOperation

         Unit onGroupOperation(GroupOperationEvent event)

        Called when a group operation event occurs.

        Triggered for operations such as group creation, member join/kick/quit, group dismissal, manager changes, and ownership transfer.

        Parameters:
        event - Group operation event info
      • onGroupMemberInfoChanged

         Unit onGroupMemberInfoChanged(GroupMemberInfoChangedEvent event)

        Called when a group member's info is changed.

        Triggered when a member's profile (nickname, extra, etc.) is updated within a group.

        Parameters:
        event - Group member info changed event info
      • onGroupApplicationEvent

         Unit onGroupApplicationEvent(GroupApplicationEvent event)

        Called when a group application event occurs.

        Includes events for:

        • User applying to join a group (request or result)

        • User being invited to join a group (request or result)

        Parameters:
        event - Group application info
      • onGroupFavoritesChangedSync

         Unit onGroupFavoritesChangedSync(GroupFavoritesChangedSyncEvent event)

        Called when group favorites (special-follow) changes are synced across devices.

        Triggered when favorites are added or removed on another device.

        Parameters:
        event - Group favorites changed sync event info