Annotation Interface ChatMemberHandler
@Retention(RUNTIME)
@Target(METHOD)
@Repeatable(ChatMemberHandlers.class)
public @interface ChatMemberHandler
Annotation for handling chat member status updates in a declarative manner.
 Designed specifically for handling events when a chat member's status changes,
 such as when users join, leave, get promoted, demoted, or have their permissions changed.
 
Basic member status handler example:
 @ChatMemberHandler(status = ChatMemberStatus.MEMBER)
 void handleNewMember(BotContext context, ChatMemberUpdated update) {
     // Handle member demotion
 }
 Multiple status handler example:
 @ChatMemberHandler(status = {ChatMemberStatus.ADMINISTRATOR, ChatMemberStatus.CREATOR})
 void handleAdminPromotion(BotContext context, ChatMemberUpdated update) {
     // Handle when a user becomes an admin or creator
     context.sendMessage(update.chat.id, "New admin privileges granted!");
 }
 BotClient.onChatMember(FilterExecutor, UpdateHandler)- Since:
- 1.2.0
- 
Optional Element SummaryOptional ElementsModifier and TypeOptional ElementDescriptionClass<? extends CustomFilter> Custom filter class for advanced filtering of chat member update events.intPriority order for handler registration and execution.Specifies the chat member status changes to match.
- 
Element Details- 
statusChatMemberStatus[] statusSpecifies the chat member status changes to match. Multiple status values are combined using OR logic - the handler will trigger if the member's new status matches any of the specified status values.- Returns:
- array of ChatMemberStatusenum values to filter by
 - Default:
- {}
 
- 
filterClass<? extends CustomFilter> filterCustom filter class for advanced filtering of chat member update events. Use this to implement custom logic for determining which member status changes should trigger this handler, such as filtering by user roles, permission changes, chat-specific rules, or other application-specific criteria.- Returns:
- class implementing CustomFilterinterface
 - Default:
- io.github.natanimn.telebof.filters.DefaultCustomFilter.class
 
- 
priorityint priorityPriority order for handler registration and execution. Handlers with lower priority numbers are registered and executed before those with higher numbers. This allows controlling the order of handler processing when multiple handlers could match the same member status change event.- Returns:
- priority integer value (lower = earlier execution)
 - Default:
- 0
 
 
-