Simulator Mode
Canvas has introduced a simulator mode to address the need to logon and mimic the application behaviour to troubleshoot issues faced by the end-users. Simulation is one of the important methods that help analyse the workflow and easily verify, communicate and understand the practical experience of an end-user.
For example, a backend support staff may want to understand the erroneous workflow of the end-user; or may want to find out the navigation sequence of the end-user. Canvas addresses this situation and offers the simulation experience on the application built using Canvas. To use the simulation mode, the support staff must perform the following:
- Logon to the application as a simulating user.
- Ensure to have access to the same entities in the application as that of the end-user.
- Perform actions on the UI components.
- Log off the application without the actions impacting the end-user data or app data.
To enable simulation mode, perform the following steps:
Implement an authentication mechanism for the simulation user in a simple Java class.
Note: Refer CTAuthenticationProviderSimulatingUser.java for your reference.
Specify the authentication provider class in the securityconfig.property file as shown.
This is the default authentication provider that is to be used during Login / logout / re-authentication purposes. AUTH_SERV_PROV_CLASS=com.intellectdesign.canvas.test.providers.CTAuthenticationProviderSimulatingUser
Note: Refer securityconfig.properties for your reference.
This property maps the authentication provider that is to be used during logon, logoff and re-authentication purposes. In the example, the class that provides the authentication mechanism is CTAuthenticationProviderSimulatingUser.- Pass isSimulated flag as TRUE as a request parameter in the login request.
The following is a sample login request that shows the flag 'isSimulated' sent along with other login request parameters.
 When the simulation user logs into the application and performs activities, the issues can be tracked with the help of logs. The difference between the real end-user and the simulation user can be identified easily.
The following log shows the audit of the simulation user: