Real-Life Use Cases for Open edX Filters#
Overview#
As mentioned in the Hooks Extension Framework, Open edX Filters filters can be used when implementing features meant to modify the application’s behavior, navigation, or user interaction.
To illustrate the different solutions that can be implemented with this approach, we have compiled a list of implementations built using Open edX Filters to address various challenges. The goal of this list is to serve as a reference for extension developers to implement their own solutions based on the community’s experience.
Use Cases#
The following list of real-life use cases showcases the different ways Open edX Filters can be used to facilitate the modification of the Open edX platform behavior without modifying the codebase, only through configurations and feature implementation in plugins.
Reusable LTI Configuration#
When a course creator adds an LTI tool, a filter is executed to fetch reusable and pluggable LTI configurations from external plugins and display them to course creators as configuration options in Studio. This use case simplifies the setup of LTI tools by allowing reusable options to be used instead of manually setting them for each tool.
More details on Reusable LTI Configuration.
Verification of Skills by Users#
When a user enters a unit, a filter is executed to inject verification forms where users can vote on the skills they have learned. This use case helps gather feedback from users about their learning experience in the course, helping to ensure the course objectives match what learners experience.
More details on Verification of Skills by Users.
IDV Integration with new Vendors#
A filter is executed to return the URL for the Identity Verification (IDV) vendor configured. When a student verifies their identity from their account settings, they are redirected to the IDV vendor’s configured to complete the verification process. This use case can be used to integrate new IDV vendors with the Open edX platform.
More details on IDV Integration with new Vendors.
Show Consent Warning to Users#
When a student loads an Open Response Assessment (ORA) problem, a filter is executed to display a consent warning to the student. This use case can be used to inform students about the data collection and processing that will occur when they submit their responses. This is especially useful when the data is being processed by third-party services.
More details on Show Consent Warning to Users.
Adding Custom Tabs to the Instructor Dashboard#
When an instructor enters the instructor dashboard, a filter is executed to modify the section tabs. This allows adding new features implemented in plugins to the instructor dashboard, such as custom reports, analytics, or other tools that help instructors manage their courses.
More details on:
Webfilters Integration#
Webfilters, as mentioned in openedx-webhooks is a type of webhook that allows you to make HTTP requests to external services and modify the application behavior depending on the response. This use case can be used to validate data with external services, such as verifying the user’s subscription with a third-party service before allowing them to enroll in a course. This is a more generalized implementation of the previous use case.
More details on Open edX Webhooks - Webfilters.
Schedules Filtering#
When a automatic email message is scheduled to be sent to students, a filter is executed to modify the schedule. This functionality allows you to define specific criteria to determine which students will receive the email. For example, filters can check whether students have opted to receive newsletters, assess their progress in the course, evaluate their activity, or consider other relevant conditions.
More details on Schedule Filtering.
Other Use Cases#
Here are some additional use cases that can be implemented using Open edX Filters:
Note
If you have implemented a solution using Open edX Filters and would like to share it with the community, please submit a pull request to add it to this list!