Forum Discussion

Carasaffi's avatar
Carasaffi
Copper Contributor
Jul 16, 2024

Share App Content To Stage

Hi,

I am using the Teams SDK to share my content to the stage and have set the shareOptions to ScreenShare, intending for only the Presenter to interact with it. However, despite this configuration, participants are still able to interact with the content. Can you help me resolve this issue?
microsoftTeams.meeting.shareAppContentToStage((err, result) => { }, appContentUrl,
{
sharingProtocol: microsoftTeams.meeting.SharingProtocol.ScreenShare
}
);

  • There are a few limitations to consider when using the `microsoftTeams.meeting.shareAppContentToStage` API with the `sharingProtocol` set to `ScreenShare`. Here's why participants might still be able to interact with the content and how to potentially address it:

    1. Content Interaction Limitations: Unfortunately, the `ScreenShare` option in this API doesn't inherently restrict participant interaction. It primarily controls how the content is presented (sharing your entire screen vs. a specific app window).

    2. Meeting Permissions: Participant interaction also depends on the overall meeting permissions set by the organizer. If participants have "present" or "co-organizer" privileges, they might still be able to interact with the shared content regardless of the `sharingProtocol`.

    Here are some approaches to consider depending on your desired outcome:

    Option 1: Utilize a Third-Party App:

    * Explore third-party Teams apps designed for presentations or content sharing. These apps might offer features specifically for restricting participant interaction with the content.

    Option 2: Leverage Whiteboard:

    * If you only intend to share static content and don't require screen interaction, consider using the built-in Teams Whiteboard. This allows presenting information without the risk of participants altering it.

    Option 3: Manage Meeting Permissions:

    * If participant control is crucial, ensure the meeting is set up with appropriate permissions. Restrict participants to "attendee" privileges unless specific individuals need "present" or "co-organizer" roles for other functionalities.

    Alternative Approach (Limited Effectiveness):

    * While not a guaranteed solution, you could display a message within the shared content politely requesting participants to refrain from interaction. This might rely on participants respecting the request, but it doesn't enforce restrictions.

    Here's an improved code snippet considering these points:

    ```javascript
    // Assuming you've verified meeting participants have appropriate permissions

    microsoftTeams.meeting.shareAppContentToStage((err, result) => {
    if (err) {
    console.error("Error sharing content to stage:", err);
    } else if (result) {
    console.log("Content shared successfully!");
    }
    }, appContentUrl, {
    sharingProtocol: microsoftTeams.meeting.SharingProtocol.ScreenShare
    });
    ```

    By understanding the limitations and exploring alternative approaches, you can choose the solution that best suits your content sharing needs within Microsoft Teams meetings.


    Kindly confirm if you find this information useful.
    Thanks.

Resources