Interface UserBlockClient


public interface UserBlockClient
Centrifugo user block API client for managing user blocking functionality.

This client provides access to Centrifugo's user blocking functionality, allowing you to temporarily or permanently prevent users from connecting to your Centrifugo server. Blocked users will be unable to establish connections until unblocked.

Key features:

  • Block users with optional expiration time
  • Unblock users to restore access
  • Permanent or temporary blocking
  • Immediate connection termination for blocked users
Since:
1.0.0
See Also:
  • Method Details

    • blockUser

      BlockUserResponse blockUser(BlockUserRequest request)
      Block a user.

      Blocks a user from connecting to Centrifugo. Once blocked, the user will be immediately disconnected if currently connected and will not be able to establish new connections until unblocked.

      Blocking features:

      • Immediate disconnection of existing user connections
      • Prevention of new connection attempts
      • Optional expiration time for temporary blocks
      • Permanent blocking when no expiration is set

      Use cases:

      • Implementing user bans and suspensions
      • Temporary timeouts for misbehavior
      • Administrative user management
      • Abuse prevention and moderation

      Example - permanent block:

      
       BlockUserRequest request = BlockUserRequest.builder().user("user123").build();
      
       BlockUserResponse response = client.blockUser(request);
       

      Example - temporary block (1 hour):

      
       long oneHourFromNow = System.currentTimeMillis() / 1000 + 3600;
       BlockUserRequest request = BlockUserRequest.builder().user("user123")
       		.expireAt(oneHourFromNow).build();
      
       BlockUserResponse response = client.blockUser(request);
       
      Parameters:
      request - the block user request containing user ID and optional expiration
      Returns:
      the block user response
      See Also:
    • blockUser

      Block a user.

      Blocks a user from connecting to Centrifugo. Once blocked, the user will be immediately disconnected if currently connected and will not be able to establish new connections until unblocked.

      Blocking features:

      • Immediate disconnection of existing user connections
      • Prevention of new connection attempts
      • Optional expiration time for temporary blocks
      • Permanent blocking when no expiration is set

      Use cases:

      • Implementing user bans and suspensions
      • Temporary timeouts for misbehavior
      • Administrative user management
      • Abuse prevention and moderation

      Example - permanent block:

      
       BlockUserRequest request = BlockUserRequest.builder().user("user123").build();
      
       BlockUserResponse response = client.blockUser(request);
       

      Example - temporary block (1 hour):

      
       long oneHourFromNow = System.currentTimeMillis() / 1000 + 3600;
       BlockUserRequest request = BlockUserRequest.builder().user("user123")
       		.expireAt(oneHourFromNow).build();
      
       BlockUserResponse response = client.blockUser(request);
       
      Parameters:
      fn - the function to configure the block user request
      Returns:
      the block user response
      See Also:
    • unblockUser

      Unblock a user.

      Removes a block from a user, allowing them to connect to Centrifugo again. This immediately restores the user's ability to establish connections.

      Use cases:

      • Ending user suspensions early
      • Correcting mistaken blocks
      • Administrative user restoration
      • Appeal process resolution

      Example:

      
       UnblockUserRequest request = UnblockUserRequest.builder().user("user123").build();
      
       UnblockUserResponse response = client.unblockUser(request);
       
      Parameters:
      request - the unblock user request containing the user ID to unblock
      Returns:
      the unblock user response
      See Also:
    • unblockUser

      default UnblockUserResponse unblockUser(String user)
      Unblock a user.

      Removes a block from a user, allowing them to connect to Centrifugo again. This immediately restores the user's ability to establish connections.

      Use cases:

      • Ending user suspensions early
      • Correcting mistaken blocks
      • Administrative user restoration
      • Appeal process resolution

      Example:

      
       UnblockUserRequest request = UnblockUserRequest.builder().user("user123").build();
      
       UnblockUserResponse response = client.unblockUser(request);
       
      Parameters:
      user - the user to unblock
      Returns:
      the unblock user response
      See Also: