UCLobby Teams PowerShell Module

The module is available in the PowerShell Gallery:
PowerShell Gallery – UCLobbyTeams

Source code available in GitHub:
GitHub – UCLobbyTeams

Get-UcM365Domains

Syntax

Get-UcM365Domains
-Domain
[<CommonParameters>]

Description

This function returns a list of domains that are associated and validated with a Microsoft 365 Tenant.

Example

Get-UcM365Domains -Domain uclobby.com

Get-UcM365TenantId

Syntax

Get-UcM365TenantId
-Domain
[<CommonParameters>]

Description

This function returns the Tenant ID associated with a domain that is part of a Microsoft 365 Tenant.

Example

Get-UcM365TenantId -Domain uclobby.com

Get-UcM365LicenseAssignment

Syntax

Get-UcM365LicenseAssignment
-SKU
-UseFriendlyNames
-SkipServicePlan
-OutputPath
[<CommonParameters>]

Description

This script will get a report of all Service Plans assigned to users and how the license is assigned to the user (Direct, Inherited)

Contributors: David PaulinoFreydem Fernandez Lopez, Gal Naor

Requirements

  • Microsoft Graph Auth PowerShell Module (Install-Module Microsoft.Graph.Authentication)
  • Microsoft Graph Permissions:
    • Directory.Read.All
  • Or
    • User.Read.All
    • Group.Read.All
    • Organization.Read.All

Parameters

  • SKU – Filter for a specific license SKU Part Name or if we use the UseFriendlyNames switch we can specify the Product Name.
  • UseFriendlyNames – When present will download a csv file containing the License/ServicePlans friendly names – Product names and service plan identifiers for licensing.
  • SkipServicePlan – When present will just check the licenses and not the service plans assigned to the user.
  • OutputPath – Allows to specify the path where we want to save the results. By default, it will save on current user Download.

Example

Get-UcM365LicenseAssignment

Get-UcM365LicenseAssignment -UseFriendlyNames

Get-UcM365LicenseAssignment -SKU "SPE_E5"

Get-UcM365LicenseAssignment -UseFriendlyNames -SKU "Microsoft 365 E5"

Get-UcTeamsWithSingleOwner

Syntax

Get-UcTeamsWithSingleOwner
[<CommonParameters>]

Description

This function returns a list of Teams that only have a single owner.

Example

Get-UcTeamsWithSingleOwner

Get-UcTeamUsersEmail

Syntax

Get-UcTeamUsersEmail
-TeamName
-Role
[<CommonParameters>]

Description

This function returns a list of users email address that are part of a Team.

If no parameter is specified it will return all users from all teams.

We can also search by team name and which role we want to filter.

Role is limited to Owner, User and Guest.

Example

Get-UcTeamUsersEmail
Get-UcTeamUsersEmail -TeamName "Test Team"
Get-UcTeamUsersEmail -Role Owner

Test-UcTeamsOnlyDNSRequirements

Syntax

Test-UcTeamsOnlyDNSRequirements
[-Domain]
[<CommonParameters>]

Description

This function will check if the DNS entries that were previously required.

If we specify the Domain the cmdlet will query all domains associated to the tenant that domain belongs and check one by one.

If the Domain parameter is not specified, it will use the Get-CsSipDomain. This requires that you already connected using Microsoft Teams PowerShell module using Connect-MicrosoftTeams.

Blog Post: Test-UcTeamsOnlyDNSRequirements

Examples

Test-UcTeamsOnlyDNSRequirements
Test-UcTeamsOnlyDNSRequirements -Domain uclobby.com

Get-UcTeamsVersion

Syntax

Get-UcTeamsVersion
-Path
-Computer
-Credential
[<CommonParameters>]

Parameters

  • Path- Get Teams Version from previously downloaded log files
  • Computer – Specify the computer we want to collect the version from. Requires Admin Shares to be enabled.
  • Credential – Credential to be used to connect to the remote computer

Description

The Get-UcTeamsVersion returns the installed Microsoft Teams desktop version for each user profile.

Blog post: Teams: Check client version using PowerShell

Example

Get-UcTeamsVersion
Get-UcTeamsVersion -Path C:\Downloads\
Get-UcTeamsVersion -Computer workstation -Credential (Get-Credential)

Get-UcTeamsDevice

Syntax

Get-UcTeamsDevice
-Filter
-Detailed
[<CommonParameters>]

Description

This function fetch Teams Devices provisioned in a M365 Tenant using MS Graph.

Contributors: David Paulino, Silvio Schanz, Gonçalo Sepulveda, Bryan Kendrick and Daniel Jelinek

Requirements

  • Microsoft Graph Auth PowerShell Module (Install-Module Microsoft.Graph.Authentication)
  • Microsoft Graph Permissions:
    • TeamworkDevice.Read.All
    • User.Read.All

Parameters

  • Filter
    •     Phone – Teams Native Phones
    •     MTR – Microsoft Teams Rooms running Windows or Android
    •     MTRW – Microsoft Teams Room Running Windows
    •     MTRA – Microsoft Teams Room Running Android
    •     SurfaceHub – Surface Hub
    •     Display – Microsoft Teams Displays
    •     Panel – Microsoft Teams Panels
  • Detailed – When present it will get detailed information from Teams Devices
  • ExportCSV – Export the results to a CSV file
  • OutputPath – Path where the export CSV file should be saved

Example

Get-UcTeamsDevice
Get-UcTeamsDevice -Filter MTR
Get-UcTeamsDevice -Detailed
Get-UcTeamsDevice -ExportCSV
Get-UcTeamsDevice -ExportCSV -OutputPath C:\Reports

Update-UcTeamsDevice

Syntax

Update-UcTeamsDevice
-UpdateType
-DeviceType
-DeviceID
-SoftwareVersion
-InputCSV
-Subnet
-OutputPath
-ReportOnly
[<CommonParameters>]

Description

This allows Teams administrators to send update commands to multiple Teams Android Devices using MS Graph API.

Contributors Eileen Beato, David Paulino and Bryan Kendrick.

Requirements

  • Microsoft Graph Auth PowerShell Module (Install-Module Microsoft.Graph.Authentication)
  • Microsoft Graph Permissions:
    • TeamworkDevice.ReadWrite.All

Parameters

  • UpdateType
    • Firmware
    • TeamsApp
  • DeviceType
    • Phone – Teams Native Phones
    • MTRA – Microsoft Teams Room Running Android
    • Display – Microsoft Teams Displays
    • Panel – Microsoft Teams Panels
  • DeviceID – Specify the Teams Admin Center Device ID that we want to update.
  • SoftwareVersion – Allow to specify which version we want to update.
  • InputCSV – When present will use this file as Input, we only need a column with Device Id. It supports files exported from Teams Admin Center (TAC).
  • Subnet – Only available when using InputCSV and requires a “IP Address” column, it allows to only send updates to Teams Android devices within a subnet. Format examples: 10.0.0.0/8, 192.168.0.0/24
  • OutputPath – Path where the export CSV file should be saved
  • ReportOnly – Will read Teams Device Android versions info and generate a report.

Example

Update-UcTeamsDevice
Update-UcTeamsDevice -ReportOnly
Update-UcTeamsDevice -InputCSV C:\UCLobby\DevicesList.csv -Subnet 10.10.0.0/16

Test-UcTeamsDevicesConditionalAccessPolicy

Syntax

Test-UcTeamsDevicesConditionalAccessPolicy
-Detailed
[<CommonParameters>]

Description

This function will validate each setting in a Conditional Access Policy to make sure they are in line with the supported settings:

Teams Android Devices – Supported Conditional Access policies

Contributors: Traci Herr, David Paulino

More info:

UCMESS: How to Check Conditional Access Policies unsupported settings for the Teams Android Devices

Requirements

  • Microsoft Graph Auth PowerShell Module (Install-Module Microsoft.Graph.Authentication)
  • Microsoft Graph Permissions:
    • Policy.Read.All

Parameters

  • Detailed – When present it will get detailed configuration information from Condicional Access policy

Example

Test-UcTeamsDevicesConditionalAccessPolicy
Test-UcTeamsDevicesConditionalAccessPolicy -Detailed

Test-UcTeamsDevicesEnrollmentPolicy

Syntax

Test-UcTeamsDevicesEnrollmentPolicy
-UserUPN
-Detailed
-ExportCSV
-OutputPath
[<CommonParameters>]

Description

This function will validate Intune Enrollment Policies that are supported by Microsoft Teams Android Devices

Contributors: David Paulino, Gonçalo Sepulveda and Eileen Beato

Requirements

  • Microsoft Graph Auth PowerShell Module (Install-Module Microsoft.Graph.Authentication)
  • Microsoft Graph Permissions:
    • DeviceManagementServiceConfig.Read.All
    • DeviceManagementConfiguration.Read.All
    • Directory.Read.All

Parameters

  • UserUPN – Specifies a UserUPN that we want to check for applied Conditional Access policies.
  • Detailed – Displays test results for unsupported settings in each Intune Enrollment Policy.
  • ExportCSV – When present will export the detailed results to a CSV file. By defautl will save the file under the current user downloads, unless we specify the OutputPath.
  • OutputPath – Allows to specify the path where we want to save the results.

Example

Test-UcTeamsDevicesEnrollmentPolicy
Test-UcTeamsDevicesEnrollmentPolicy -UserUPN david@uclobby.com
Test-UcTeamsDevicesEnrollmentPolicy -Detailed

Test-UcTeamsDevicesCompliancePolicy

Syntax

Test-UcTeamsDevicesCompliancePolicy
-Detailed
[<CommonParameters>]

Description

This function will validate each setting in the Intune Compliance Policy to make sure they are in line with the supported settings:

Teams Android Devices – Supported Intune Compliance policies

Contributors: Traci Herr, David Paulino

UCMESS: Checking Intune Compliance Policies for unsupported settings

Requirements

  • Microsoft Graph Auth PowerShell Module (Install-Module Microsoft.Graph.Authentication)
  • Microsoft Graph Permissions:
    • DeviceManagementConfiguration.Read.All

Parameters

  • Detailed – When present it will get detailed configuration information from Intune Compliance policy

Example

Test-UcTeamsDevicesCompliancePolicy
Test-UcTeamsDevicesCompliancePolicy -Detailed

Get-UcArch

Syntax

Get-UcArch
-FilePath
[<CommonParameters>]

Description

Based on PowerShell script Get-ExecutableType.ps1 by David Wyatt that was originally posted in:

Identify 16-bit, 32-bit and 64-bit executables with PowerShell
https://gallery.technet.microsoft.com/scriptcenter/Identify-16-bit-32-bit-and-522eae75

Example

Get-UcArch -FilePath "C:\Windows\System32\notepad.exe"

Leave a Reply

Your email address will not be published. Required fields are marked *