Loop workspaces – Office 365 for IT Pros https://office365itpros.com Mastering Office 365 and Microsoft 365 Wed, 22 May 2024 10:07:56 +0000 en-US hourly 1 https://i0.wp.com/office365itpros.com/wp-content/uploads/2024/06/cropped-Office-365-for-IT-Pros-2025-Edition-500-px.jpg?fit=32%2C32&ssl=1 Loop workspaces – Office 365 for IT Pros https://office365itpros.com 32 32 150103932 Organizers of Teams Recurring Meetings Can Create Loop Workspaces for Shared Content https://office365itpros.com/2024/05/22/loop-workspaces-teams-meeting/?utm_source=rss&utm_medium=rss&utm_campaign=loop-workspaces-teams-meeting https://office365itpros.com/2024/05/22/loop-workspaces-teams-meeting/#comments Wed, 22 May 2024 07:00:00 +0000 https://office365itpros.com/?p=64839

Use Loop Workspaces to Organize Recurring Meeting Notes and Documents

Microsoft is keen to demonstrate the value of integration across the Microsoft 365 suite. They also take every opportunity to hype new products to drive usage and adoption. Both elements are present in message center notification MC792605 (13 May 2024), which tells us that organizers of recurring Teams meetings will be prompted to create a Loop workspace to hold the information used by the meeting. The prompt is in the meeting chat (Figure 1).

Teams chat includes the opportunity to create a Loop workspace.

Loop workspaces for Teams recurring meetings.
Figure 1: Teams chat includes the opportunity to create a Loop workspace

The idea is that the Loop workspace serves as a durable container for content worked on over a series of meetings. If the meeting organizer chooses to create the workspace, the meeting participants receive invitations to join the workspace and the organizer can add files shared in the meeting, As meetings in the series progress, Teams will automatically add files, whiteboards, loop components, and so on that are shared in the meeting chat to the workspace.

Deployment Timeline

Deployment to targeted release tenants is ongoing now. General availability is due soon thereafter. Initially, the feature is limited to recurring meetings with between three and 50 participants. Microsoft says that they will increase the limit for meeting participants in the future and add support for modern groups (Microsoft 365 groups). I’m not quite sure what that last statement means, unless it’s saying that Loop will support sharing with the membership of a Microsoft 365 group.

Loop Licensing Could be an Issue

On the surface, using a Loop workspace to manage the files shared by participants of a recurring meeting sounds like an excellent idea. However, there are two issues that need consideration.

First, Microsoft doesn’t restrict the creation of Loop workspaces through licensing today, but they will restrict creation to accounts holding Microsoft 365 licenses after July 1, 2024. Users who share Loop workspaces can still access workspace content after that date, but they cannot create new workspaces or add or remove users to workspaces. This limits the usefulness of the feature to meeting organizers with the required licenses.

The Loop workspaces report PowerShell script described in this article includes details of licenses assigned to workspace owners. You can use the report to figure out if some licensing adjustments are necessary. While you’re considering the licenses assigned to Loop workspace owners, consider reviewing the full set of licenses (and their costs) assigned to users across the tenant using the Microsoft 365 tenant licensing report script.

Waiting for Guest Support Through Loop External Access

The second issue is that many Teams meetings involve guest users. I participate in recurring meetings in three other Microsoft 365 tenants, but until Loop supports external access to workspaces, guest accounts cannot access the information stored in workspaces created to support recurring meetings. Microsoft has promised that external access for Loop is coming, but there’s no sign that the initial support announced in MC736437 (for tenants without sensitivity labels) due to arrive in April is available yet. Some recent tweets from Microsoft imply that external access is about to arrive, but we’ll have to wait for it.

Tenants that use sensitivity labels won’t get support for external access to Loop workspaces until later. The tenants I participate in as a guest all use sensitivity labels, so I guess that I’ll just have to wait a little longer before those meetings can embrace Loop instead of standard OneDrive file sharing.

A Good Idea for Some

You might think that I believe using a Loop workspace to hold information for recurring meetings is not a useful feature. That’s not true. It’s a good feature if you have the necessary licenses and don’t need to share anything with guests (until that feature is released). Sometimes I think Microsoft operates on the basis that everyone has high-end licenses and only ever collaborates within a tenant. That isn’t the way the real world works, and that’s why I am slightly negative about this feature.

On another note, this kind of integration between Microsoft 365 products is the kind of thing that regulators like the European Union worry about because they create a barrier for competition by preventing the ability to use features if a customer chooses to use a different technology (such as replacing Teams with Slack). Innovation can sometimes be a double-edged sword.


So much change, all the time. It’s a challenge to stay abreast of all the updates Microsoft makes across the Microsoft 365 ecosystem. Subscribe to the Office 365 for IT Pros eBook to receive monthly insights into what happens, why it happens, and what new features and capabilities mean for your tenant.

]]>
https://office365itpros.com/2024/05/22/loop-workspaces-teams-meeting/feed/ 3 64839
How to Retrieve Loop Workspaces Data with PowerShell https://office365itpros.com/2024/04/08/loop-workspaces-report-ps/?utm_source=rss&utm_medium=rss&utm_campaign=loop-workspaces-report-ps https://office365itpros.com/2024/04/08/loop-workspaces-report-ps/#comments Mon, 08 Apr 2024 08:00:00 +0000 https://office365itpros.com/?p=64322

Report More than 200 Loop Workspaces Requires Fetching Pages of Data

In November 2023, I wrote about a PowerShell script I developed to report the storage consumed by Loop workspaces. The script worked. That is, it worked until a tenant had more than 200 workspaces at which point the script ceased to report details for any more workspaces. This point was recently made to me by a reader after they discovered that the script didn’t produce the desired results in their tenant. Obviously, I didn’t do enough testing to encounter the limit.

Investigation (reading the documentation for the Get-SPOContainer cmdlet) revealed that the cmdlet implements a primitive form of pagination. The default mode is to fetch the first 200 workspaces, but if you know that more workspaces exist, you can add the Paged parameter to the cmdlet.

Odd Pagination to Fetch More Loop Workspaces

APIs implement pagination when they want to limit the amount of data that an app can fetch in one operation. The Graph APIs use pagination for this reason (some of the cmdlets in the Microsoft Graph PowerShell SDK can perform automatic pagination). The idea is that an app fetches the first page, checks to see if a token (pointer) to the next page is present, and if so, the app uses the token to fetch that page. The process continues until the app has fetched all available pages.

In the case of the Get-SPOContainer cmdlet, if more workspace data are available, the 201st record in the set fetched from SharePoint is a pointer to the next page of (up to) 200 workspaces. Oddly, the information is in the form of a string followed by the actual token. Here’s an example:

Retrieve remaining containers with token: UGFnZWQ9VFJVRSZwX0NyZWF0aW9uRGF0ZVRpbWU9MjAyNDAzMzAlMjAwMCUzYTU5JTNhMjUmcF9JRD0yMDA=

To fetch the next page, run the Get-SPOContainer cmdlet and specify both the Paged and PagingToken parameters. The value passed in the PagingToken parameter is the token extracted from the record referred to above. The code must also remove the record from the set that will eventually be used for reporting purposes because it doesn’t contain any information about a workspace. For example:

$Token = $null
If ($LoopWorkspaces[200]) {
    # Extract the token for the next page of workspace information
    $Token = $LoopWorkSpaces[200].split(":")[1].Trim()
    # Remove the last item in the array because it's the one that contains the token
    $LoopWorkspaces = $LoopWorkspaces[0..199]
}

Looping to Fetch All Pages

A While loop can then fetch successive pages until all workspaces are retrieved. The curious thing is that at the end of the data, Loop outputs a record with the text. “End of containers view.” It’s just odd:

While ($Token) {
    # Loop while we can get a token for the next page of workspaces
    [array]$NextSetofWorkSpaces = Get-SPOContainer -OwningApplicationID a187e399-0c36-4b98-8f04-1edc167a0996 `
      -PagingToken $Token -Paged
    If ($NextSetofWorkSpaces[200]) {
        $Token = $NextSetofWorkSpaces[200].split(":")[1].Trim()
        $NextSetofWorkspaces = $NextSetofWorkspaces[0..199]
    } Else {
        $Token = $Null
        If (($NextSetofWorkSpaces[$NextSetofWorkspaces.count -1]) -eq "End of containers view.") {  
            # Remove the last item in the array because it contains the message "End of containers view."
            $NextSetofWorkspaces = $NextSetofWorkspaces[0..($NextSetofWorkspaces.count -2)]
        }             
    }
    $LoopWorkspaces += $NextSetofWorkspaces
}

Eventually, you have an array of all the Loop workspaces and can report it as in the previous script (Figure 1).

Figure 1: Reporting Loop workspaces

The script with the updated code can be downloaded from GitHub.

Another Example of SharePoint PowerShell Strangeness

I have no idea why the Loop developers thought it was a good idea to implement their unique style of PowerShell pagination in the Get-SPOContainer cmdlet. What they should have done is implement the All cmdlet as done elsewhere, like the Get-SPOSite cmdlet. Supporting easy retrieval of all workspaces together with server-side filtering capability would be more than sufficient for most scenarios and would result in simpler code to develop and maintain.

Last month, I wrote wondering if Microsoft cared about SharePoint PowerShell. This is yet another example of strangeness in SharePoint PowerShell that reinforces my feeling that no one in Microsoft does care.


Support the work of the Office 365 for IT Pros team by subscribing to the Office 365 for IT Pros eBook. Your support pays for the time we need to track, analyze, and document the changing world of Microsoft 365 and Office 365.

]]>
https://office365itpros.com/2024/04/08/loop-workspaces-report-ps/feed/ 5 64322