Microsoft Teams : Obtener un listado de todos los Teams existentes y sus miembros en un archivo CSV.

Ahora que tenemos disponibles comandos powershell  especificamente para Microsoft Teams, es mas sencillo realizar tareas como exportar todos los Teams en nuestro tenant.

Para esto, nos conectamos con nuestro Powershell a una sesi贸n de Teams con este sencillo metodo ya revisado en una entrada anterior.

Ejecutado el script de conexi贸n indicado en la entrada anterior, ingresamos nuestros datos, seleccionamos el servicio y conectamos,

Una vez conectado, podremos ver todos los comandos disponibles en el modulo de Teams con el comando  Get-Command -Module MicrosoftTeams

Para nuestra tarea , usaremos el comando Get-Team, el que nos entregara el listado de Teams creados en el tenant.

Una vez que tenemos el GroupId, podemos ver el detalle del Team, ejecutando Get-Team -GroupId “IdDelTeam” | fl

Para visualizar los usuarios dentro de un team, tomamos notas del GroupId y ejecutamos el comando Get-Team -GroupId “IddelTeam” | Get-TeamUser

y para exportar el resultado ejecuatamos Get-Team -GroupId “IddelTeam” | Get-TeamUser | Export-Csv -Path C:\PsScript\SalesAndMarketingTeamUsers.csv -Encoding UTF8 -NoTypeInformation

Y como resultado tendremos un archivo CSV con los datos de nuestro Team exportado.

 

Saludos
Samuel. 馃檪

12 Comments

  1. Hola Samuel, muy buen blog, sabes no he podido lograr conectarme a v铆a powershell a Teams para poder generar este informe que justamente necesito, le铆 varios post buscando el como conectarme porque no he podido, ejecute los siguientes comandos

    Me conecte a mi cuenta primero
    $cred=Get-Credential

    Luego instale el modulo de microsfot teams para powershell
    Install-module -name MicrosoftTeams

    Despu茅s importe el modulo
    Import-Module MicrosoftTeams

    Luego, me conecte a teams
    Connect-MicrosoftTeams -Credential $cred

    Me dio el siguiente error

    Connect-MicrosoftTeams : El t茅rmino ‘Connect-MicrosoftTeams’ no se reconoce como nombre de un cmdlet, funci贸n, archivo
    de script o programa ejecutable. Compruebe si escribi贸 correctamente el nombre o, si incluy贸 una ruta de acceso,
    compruebe que dicha ruta es correcta e int茅ntelo de nuevo. En l铆nea: 1 Car谩cter: 1 + Connect-MicrosoftTeams -Credential $cred + ~~~~~~~~~~~~~~~~~~~~~~ + CategoryInfo : ObjectNotFound: (Connect-MicrosoftTeams:String) [], CommandNotFoundException + FullyQualifiedErrorId : CommandNotFoundException

    Consulte en las paginas oficiales de Microsoft, segui otros pasos y lo mismo no se que me esta faltando por hacer… si me puedes dar un par de link donde revisar se agradecer铆a.
    Saludos
    Claudio Aliste

  2. Hola, Samuel. Me he encontrado con tu Blog el d铆a de hoy y creo que me ser谩 de mucha ayuda, ya que soy nuevo en Teams y he empezado a dar clases en forma remota.
    Me gustar铆a que me ayudaras a obtener la lista o el registro de qui茅n se conect贸 a la reunion en Temas el d铆a de hoy, en mi clase de Simulaci贸n, porque se me olvid贸 descargarla. Y en el historial de sesiones solo me muestra el n煤mero de alumnos, pero no me da una opci贸n para descargar la lista.
    Espero me haya explicado. 馃檪

    Gracias de antemano, saludos, Samuel.

  3. Hola Jes煤s,
    Se podr铆a sacar un listado de todos los equipos TEams con sus integrantes con un solo comando, o habr铆a que ir de uno en uno ejecutando el comando para cada grupo de Teams existente.
    Gracias

      1. Me devuelve lo siguiente al ejecutar el script.
        PS C:\WINDOWS\system32> Export-TeamsList -ExportPath “C:\teamslist.csv”
        Connect-PnPMicrosoftGraph : El t茅rmino ‘Connect-PnPMicrosoftGraph’ no se reconoce como nombre de un cmdlet, funci贸n,
        archivo de script o programa ejecutable. Compruebe si escribi贸 correctamente el nombre o, si incluy贸 una ruta de
        acceso, compruebe que dicha ruta es correcta e int茅ntelo de nuevo.
        En l铆nea: 7 Car谩cter: 9
        + Connect-PnPMicrosoftGraph -Scopes “Group.Read.All”,”User.Read …
        + ~~~~~~~~~~~~~~~~~~~~~~~~~
        + CategoryInfo : ObjectNotFound: (Connect-PnPMicrosoftGraph:String) [], CommandNotFoundException
        + FullyQualifiedErrorId : CommandNotFoundException

        ADVERTENCIA: El comando ‘Get-PnPAccessToken’ est谩 obsoleto. Use Get-PnPGraphAccessToken instead
        Get-PnPAccessToken : There is currently no connection yet. Use Connect-PnPOnline to connect.
        En l铆nea: 8 Car谩cter: 23
        + $accesstoken =Get-PnPAccessToken
        + ~~~~~~~~~~~~~~~~~~
        + CategoryInfo : NotSpecified: (:) [Get-PnPAccessToken], InvalidOperationException
        + FullyQualifiedErrorId : System.InvalidOperationException,PnP.PowerShell.Commands.Base.GetPnPAccessToken

        Invoke-RestMethod : {
        “error”: {
        “code”: “InvalidAuthenticationToken”,
        “message”: “CompactToken parsing failed with error code: 80049217”,
        “innerError”: {
        “date”: “2020-10-29T15:31:07”,
        “request-id”: “4393782a-9b4e-4425-a0ec-2073d8b7e156”,
        “client-request-id”: “4393782a-9b4e-4425-a0ec-2073d8b7e156”
        }
        }
        }
        En l铆nea: 9 Car谩cter: 18
        + … $group = Invoke-RestMethod -Headers @{Authorization = “Bearer $acc …
        + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
        + CategoryInfo : InvalidOperation: (System.Net.HttpWebRequest:HttpWebRequest) [Invoke-RestMethod], WebExc
        eption
        + FullyQualifiedErrorId : WebCmdletWebResponseException,Microsoft.PowerShell.Commands.InvokeRestMethodCommand

        Podr铆as ayudarme?
        Saludos-!!!

        1. Hola, debes instalar el modulo de SharePoint Pnp.

          Con una ventana de PowerShell como administrador, ejecuta Install-Module SharePointPnPPowerShellOnline y el luego ejecuta el script nuevamente.

  4. Felicidades Samuel, por tu blog, se el esfuerzo que se invierte para tener este tipo de recursos y se que nace de la idea de ayudar.

Leave a Comment