--- title: "How-to: Setup the app for Laser Pointer" slug: "android-sdk-howto-laser-pointer" updated: 2023-04-25T22:11:47Z published: 2023-04-25T22:11:47Z canonical: "docs.screenmeet.com/android-sdk-howto-laser-pointer" --- > ## Documentation Index > Fetch the complete documentation index at: https://docs.screenmeet.com/llms.txt > Use this file to discover all available pages before exploring further. # How-to: Setup the app for Laser Pointer The Laser Pointer feature allows for the agent to indicate to the end-user where on the app the user's attention should be focused. 1. Join the ScreenMeet Live Call session ```java ScreenMeet.connect( code = "YOUR SESSION CODE", localUserName = "John Doe", completion = completion ) ``` 2. Subscribe to session events with the SessionEventListener and override required methods. ```java ScreenMeet.registerEventListener(object : SessionEventListener { override fun onConnectionStateChanged(newState: ScreenMeet.ConnectionState) { super.onConnectionStateChanged(newState) } }) ``` 3. Start sharing the screen with the agent ```java ScreenMeet.shareScreen() ``` 4. The agent can request Laser Pointer from the their browser interface. By default, the SDK displays a permission dialog. This behavior can be further customized. ![Drawing.sketchpad.jpeg](https://cdn.document360.io/9da39725-20e5-434f-83a4-d630456099dc/Images/Documentation/Drawing.sketchpad.jpeg){height="" width="600"} ![Screenshot from 2023-04-25 16-28-57.png](https://cdn.document360.io/9da39725-20e5-434f-83a4-d630456099dc/Images/Documentation/Screenshot%20from%202023-04-25%2016-28-57.png){height="" width="300"} 5. If the end-user accepts the dialog, they will be prompted to give permssions for the app to "Display over other apps". This permission is required for the Laser Pointer to be drawn on the end-user's screen. ![Drawing-1.sketchpad.jpeg](https://cdn.document360.io/9da39725-20e5-434f-83a4-d630456099dc/Images/Documentation/Drawing-1.sketchpad%281%29.jpeg){height="" width="300"} ## Events and Customization For listening to Laser Pointer and Remote Control events, use the following methods in **SessionEventListenener**: ```java object: SessionEventListener { // Ovveride this method to handle Feature Request yourself // instead of showing Dialog provided in ScreenMeet SDK override fun onFeatureRequest( feature: Feature, decisionHandler: (granted: Boolean) -> Unit ) { decisionHandler.invoke(true) // Grants feature permission } override fun onFeatureRequestRejected(entitlement: Entitlement) { // Called when pending Feature Request is canceled on Viewer } override fun onFeatureStarted(feature: Feature) { // Called when pending Feature Started } override fun onFeatureStopped(feature: Feature) { // Called when pending Feature Stopped } } ```