The Session Timeout Alert Component is an essential tool for developers aiming to enhance security and user experience in their Reactive OutSystems applications. This highly configurable plugin monitors and manages user session time, ensuring sessions do not expire prematurely and offering a user-friendly interface for session renewal.
Intelligent Session Control: Continuously monitors user activity, detecting any XHR calls between client and server to automatically reset the session timer, keeping the session active as long as there is interaction.
Customizable Configuration: Allows you to define session time flexibly according to your application’s specific needs, with adjustable parameters directly within the component.
User-Friendly Notifications: Displays a popup message when the session is about to expire, providing a smooth user experience. The popup includes a countdown timer, offering options to end or prolong the session.
Intuitive User Interface: The warning popup is designed to be non-intrusive, ensuring the user is notified without abrupt interruptions in their browsing experience.
Enhanced Security: Reduces the risk of inactive sessions being exploited maliciously by enforcing session renewal or termination for idle sessions.
Improves User Experience: By allowing users to easily extend their sessions, it enhances satisfaction and continuity of application use.
Increases Security: Efficiently manages session time, reducing the possibility of exploiting inactive sessions.
Flexibility and Control: Provides developers with granular control over sessions, easily adapting to the specific needs of each application.
The Session Timeout Alert Component is a robust and user-friendly solution for managing user session duration in Reactive OutSystems applications. With its easy configuration and friendly notifications, it enhances both security and user experience.
Note: This component is intended to improve the user experience by providing session expiration alerts. It should not be considered a security feature. Robust and sophisticated session control should be implemented server-side to ensure comprehensive application security.
In this version, we have introduced additional error-handling mechanisms to improve compatibility and robustness across different browsers. Specifically:
Exception Handling for Incompatible Browsers: Added enhanced handling for browsers that do not fully support certain APIs, such as BroadcastChannel. If the browser is found to be incompatible, a new event is triggered that allows the consumer module to be notified of the incompatibility (warning).
BroadcastChannel
New Event Trigger: A custom event is now dispatched to the consumer module in case of a detected incompatibility. This enables the consuming module to gracefully handle the situation and provide an appropriate user experience.
This version introduces breaking changes, requiring that consumer modules add an event listener to capture the new compatibility warning event. Without this change, consumers may not be able to respond appropriately to the new incompatibility notifications.
Recommended Action for Consumer Modules:
Add an event listener for the compatibility warning event to ensure a smooth user experience in case of browser incompatibility.
BSD-3 license (https://opensource.org/licenses/BSD-3-Clause)