Develop
Develop
Select your platform

Blocking

Updated: Dec 4, 2024
For Unreal development, you can use the Platform native API and information found in the Platform Unreal Development - Get Setup guide.
This is a Platform SDK feature requiring Data Use Checkup
To use this or any other Platform SDK feature, you must complete a Data Use Checkup (DUC). The DUC ensures that you comply with Developer Policies. It requires an administrator from your team to certify that your use of user data aligns with platform guidelines. Until the app review team reviews and approves your DUC, platform features are only available for test users.

Blocking and Unblocking Users

Blocking is a core safety feature which users expect in multiplayer games and social experiences. Through this platform feature, you, as a developer, can access who users have blocked and allow users to block directly from their app.
The user-block flow can be used to create new blocks with minimal disruption to the app experience. This is useful in a multiplayer or social setting where a user might encounter another player who is abusive. This flow allows you to prompt a user to block a specific other user, which they can choose to confirm or cancel. The user is then brought right back into your app. You can then access this block data to honor all their blocks in your app.

Launch User Block Flow

User_LaunchBlockFlow(FOvrId UserID)
Input: FOvrId UserID : The ID of the user that the viewer is going to launch the block flow request.
This method deeplinks the viewer into a modal dialog targeting the specified user to be blocked. From the modal, the viewer can select Block to block the user and return to the app. Selecting Cancel returns the viewer to their app without any block action.
If using the MetaXR Platform SDK in an unreal app, you may use the User Launch Block Flow blueprint function:
Screenshot of calling the User Launch Block Flow blueprint function

Checking Results

After calling the above method, you can use FOvrLaunchBlockFlowResult to get the results of the viewer’s actions from the modal.
  • FOvrLaunchBlockFlowResult::DidBlock checks if the viewer selected Block from the modal.
  • FOvrLaunchBlockFlowResult::DidCancel checks if the viewer canceled or selected Back from the modal.
If using the MetaXR Platform SDK in an unreal app, these values can be accessed as shown below:
Screenshot of using blueprints to access the GetDidBlock and GetDidCancel functions
For examples of how these values can be used, see Table 1 below.

Table 1 Block Result Feedback Cases

SituationDescriptionResult Feedback (FOvrLaunchBlockFlowResult)
Successful block
The user will view a dialog allowing them to Block or Cancel. The user selects Block and the block is executed successfully.
DidBlock: true, DidCancel: false
User cancel
The user will view a dialog allowing them to Block or Cancel. The user selects Cancel and returns the viewer to the app.
DidBlock: false, DidCancel: true
Viewer tries to block someone they blocked previously
The viewer receives a message informing them of the situation and asking whether they would like to unblock the target user. Selecting Back returns the viewer to their app.
DidBlock: false, DidCancel : true
Viewer tries to block themselves
The viewer receives a message indicating that this is not supported. Selecting Back returns the viewer to their app.
DidBlock: false, DidCancel : true
The block cannot be sent for some other reason.
The user receives the message “Unable to block. Please check your connection and try again.” Selecting Back returns the viewer to the app.
DidBlock: false, DidCancel: true

Launch User Unblock Flow

User_LaunchUnblockFlow(FOvrId UserID)
Input: FOvrId UserID : The ID of the user that the viewer is going to launch the unblock flow request.
This method deeplinks the viewer into a modal dialog targeting the specified user to be unblocked. From the modal, the viewer can select Unblock to unblock the user and return to the app. Selecting Cancel returns the viewer to their app without any unblock action.

Checking Results

After calling the above method, you can use FOvrLaunchUnblockFlowResult to get the results of the viewer’s actions from the modal.
  • FOvrLaunchUnblockFlowResult::DidUnblock checks if the viewer selected Unblock from the modal.
  • FOvrLaunchUnblockFlowResult::DidCance checks if the viewer canceled or selected Back from the modal.

Retrieve a List of the User’s Blocked Users

To retrieve a list of a user’s blocked users, call the User_GetBlockedUsers() method. Doing so retrieves an array of the current user’s blocked user IDs who are also entitled to your app. If there are a large number of values being returned, you may need to call BlockedUserPages_GetNextUrl() and paginate the data.
If using the MetaXR Platform SDK in an unreal app, you may use the User Get Blocked Users blueprint function:
Screenshot of using the User Get Blocked Users blueprint function
Did you find this page helpful?