Compartir a través de


Añadir datos de prueba al entorno

Puede probar la aplicación de Microsoft Teams con datos de ejemplo con una suscripción de desarrollador Microsoft 365.

Requisitos previos

  1. Únase al Programa para desarrolladores de Microsoft 365, si no tiene un inquilino de prueba.
  2. Configurar una suscripción de desarrollador de Microsoft 365
  3. Use paquetes de datos de ejemplo con su suscripción de desarrollador de Microsoft 365 para instalar el paquete de contenido de usuarios.
  4. Instalar el módulo de PowerShell de Teams.
  5. Instale el módulo de PowerShell de Microsoft Graph.

Nota:

Debe tener permisos de administrador global en el inquilino para ejecutar los scripts.

Permitir a los usuarios cargar aplicaciones

De forma predeterminada, solo los administradores de servicios de Teams o de administrador global pueden cargar las aplicaciones personalizadas en un inquilino. También puede permitir que los usuarios carguen aplicaciones personalizadas para su propio uso o en equipos para realizar pruebas. Para obtener más información, consulte administrar la configuración y las directivas de aplicaciones personalizadas en Teams.

Crear equipos y canales para pruebas

  1. Guarde el siguiente fragmento de código como un archivo .xml y anote la ruta de acceso del archivo. Este XML define la estructura del equipo y el canal que se crea junto con sus miembros:

    <?xml version="1.0"?>
    <Teams>
      <Team Name="Store Portal" ID="storeportal" Description="" Type="Private" Creator="admin">
        <Members>
          <Member UserName="AlexW" IsOwner="false"/>
          <Member UserName="PattiF" IsOwner="false"/>
          <Member UserName="PradeepG" IsOwner="false"/>
          <Member UserName="JoniS" IsOwner="false"/>
          <Member UserName="JohannaL" IsOwner="false"/>
          <Member UserName="NestorW" IsOwner="false"/>
          <Member UserName="IsaiahL" IsOwner="false"/>
          <Member UserName="AdeleV" IsOwner="false"/>
          <Member UserName="LeeG" IsOwner="false"/>
          <Member UserName="MeganB" IsOwner="true"/>
          <Member UserName="LynneR" IsOwner="false"/>
          <Member UserName="GradyA" IsOwner="false"/>
          <Member UserName="LidiaH" IsOwner="false"/>
          <Member UserName="DiegoS" IsOwner="false"/>
          <Member UserName="MiriamG" IsOwner="true"/>
        </Members>
        <Channels>
          <Channel Name="Sales" ID="sales" Description="" Creator="Admin" />
          <Channel Name="Inventory" ID="inventory" Description="" Creator="Admin" />
          <Channel Name="Los Angeles Store 239" ID="losangelesstore239" Description="" Creator="Admin" />
          <Channel Name="Seattle Store 121" ID="seattlestore121" Description="" Creator="Admin" />
          <Channel Name="Online" ID="online" Description="" Creator="Admin" />
          <Channel Name="Store Layout" ID="storelayout" Description="" Creator="Admin" />
          <Channel Name="Promotions" ID="promotions" Description="" Creator="Admin" />
        </Channels>
      </Team>
      <Team Name="Mark 8 Project Team" ID="Mark8ProjectTeam" Description="Welcome to the team that we've assembled to create the Mark 8." Type="Private" Creator="admin">
        <Members>
          <Member UserName="meganb" IsOwner="true" />
          <Member UserName="alexw" IsOwner="false" />
          <Member UserName="lynner" IsOwner="false" />
          <Member UserName="isaiahl" IsOwner="false" />
          <Member UserName="leeg" IsOwner="false" />
          <Member UserName="pradeepg" IsOwner="false" />
          <Member UserName="lidiah" IsOwner="false" />
          <Member UserName="diegos" IsOwner="false" />
          <Member UserName="johannal" IsOwner="false" />
          <Member UserName="miriamg" IsOwner="false" />
          <Member UserName="adelev" IsOwner="false" />
          <Member UserName="jonis" IsOwner="false" />
          <Member UserName="nestorw" IsOwner="false" />
          <Member UserName="gradya" IsOwner="false" />
          <Member UserName="pattif" IsOwner="false" />
        </Members>
        <Channels>
          <Channel Name="Research and Development" ID="researchanddevelopment" Description="Channel for Research and Development!" Creator="meganb" />
          <Channel Name="Design" ID="design" Description="Discuss design projects." Creator="meganb" />
          <Channel Name="Digital Assets Web" ID="digitalassetsweb" Description="Discuss digital assets." Creator="meganb" />
          <Channel Name="Go to Market Plan" ID="gotomarketplan" Description="Our go-to-market plan!" Creator="meganb" />
        </Channels>
      </Team>
      <Team Name="District 9 Road Safety Audit" ID="district9roadsafetyaudit" Description="" Type="Private" Creator="admin">
        <Members>
          <Member UserName="meganb" IsOwner="true" />
          <Member UserName="alexw" IsOwner="false" />
          <Member UserName="lynner" IsOwner="false" />
          <Member UserName="isaiahl" IsOwner="false" />
          <Member UserName="leeg" IsOwner="false" />
          <Member UserName="pradeepg" IsOwner="false" />
          <Member UserName="lidiah" IsOwner="false" />
          <Member UserName="diegos" IsOwner="false" />
          <Member UserName="johannal" IsOwner="false" />
          <Member UserName="miriamg" IsOwner="false" />
          <Member UserName="adelev" IsOwner="false" />
          <Member UserName="jonis" IsOwner="false" />
          <Member UserName="nestorw" IsOwner="false" />
          <Member UserName="gradya" IsOwner="false" />
          <Member UserName="pattif" IsOwner="false" />
        </Members>
        <Channels>
          <Channel Name="Audit Planning" ID="auditplanning" Description="" Creator="Admin" />
          <Channel Name="Delivery" ID="delivery" Description="" Creator="Admin" />
          <Channel Name="Findings" ID="findings" Description="" Creator="Admin" />
          <Channel Name="Recommended Actions" ID="recommendedactions" Description="" Creator="Admin" />
          <Channel Name="Survey" ID="survey" Description="" Creator="Admin" />
        </Channels>
      </Team>
      <Team Name="ACC-1000 Product Team" ID="acc1000productteam" Description="" Type="Private" Creator="admin" >
        <Members>
          <Member UserName="meganb" IsOwner="true" />
          <Member UserName="alexw" IsOwner="false" />
          <Member UserName="lynner" IsOwner="false" />
          <Member UserName="isaiahl" IsOwner="false" />
          <Member UserName="leeg" IsOwner="false" />
          <Member UserName="pradeepg" IsOwner="false" />
          <Member UserName="lidiah" IsOwner="false" />
          <Member UserName="diegos" IsOwner="false" />
          <Member UserName="johannal" IsOwner="false" />
          <Member UserName="miriamg" IsOwner="false" />
          <Member UserName="adelev" IsOwner="false" />
          <Member UserName="jonis" IsOwner="false" />
          <Member UserName="nestorw" IsOwner="false" />
          <Member UserName="gradya" IsOwner="false" />
          <Member UserName="pattif" IsOwner="false" />
        </Members>
        <Channels>
          <Channel Name="Corporate Communication" ID="corporatecommunication" Description="" Creator="Admin" />
          <Channel Name="Lean Process Improvement" ID="corporatecommunication" Description="" Creator="Admin" />
          <Channel Name="Training and Certification" ID="trainingandcertification" Description="" Creator="Admin" />
          <Channel Name="Production" ID="production" Description="" Creator="Admin" />
          <Channel Name="Research and Development" ID="researchanddevelopment" Description="" Creator="Admin" />
          <Channel Name="Supplier Collaboration" ID="suppliercollaboration" Description="" Creator="Admin" />
        </Channels>
      </Team>
    </Teams>
    
  2. Guarde el siguiente fragmento de código como script de PowerShell (.ps1) y tenga en cuenta dónde lo ha guardado. Este script ejecuta los pasos para crear el equipo y el canal, y agregarles miembros:

    Param(
    [Parameter(Mandatory = $true)]
    
    # This specifies the location of your configuration XML
    
    [string] $teamsFilePath
    )
    
    [xml]$XmlDocument = Get-Content -Path $teamsFilePath.ToString()
    
    if ($XmlDocument.Teams.Team.Count -gt 0) {
    
        try {
    
            # 1. Connecting to Microsft Graph PowerShell.
    
            Connect-MgGraph -Scopes "Group.ReadWrite.All", "User.ReadWrite.All", "Channel.Create", "Team.Create" -ErrorAction Stop
    
            # Connect to Microsoft Teams PowerShell.
    
            Connect-MicrosoftTeams
    
            Write-Host "Connected to Microsoft 365 and configuring your organization with test teams and channels"
    
            # 2. Create the teams as specified in the XML
    
            foreach ($team in $XmlDocument.Teams.Team ) {
                try {
                    $group = New-Team -DisplayName $team.Name -Description $team.description -visibility public
                    Write-Host "Successfully created team: " $group.DisplayName
                }
                catch {
                    Write-Host "Unable to create team: $_"
                }
    
            # 3. Add users to the newly created teams
    
            foreach ($user in $team.Members.Member) {
                try {
                    # Lookup user by exact userPrincipalName
                    $username = if ($user.UserName -match '@') { $user.UserName.ToLower() } else { "$($user.UserName.ToLower())@M365x15856998.onmicrosoft.com" }
                    $userObject = Get-MgUser -Filter "userPrincipalName eq '$username'" -ConsistencyLevel eventual
                    $newUserPrincipalName = $userObject.UserPrincipalName
    
                    if ($user.IsOwner -eq $true) {
                        Add-TeamUser -GroupId $group.GroupId -User $newUserPrincipalName -Role Owner | Out-Null
                    } else {
                        Add-TeamUser -GroupId $group.GroupId -User $newUserPrincipalName | Out-Null
                    }
    
                    Write-Host "Successfully added user : " $user.UserName
                }
                catch {
                    Write-Host "Unable to add team user: $_"
                }
    
            }
    
            # 4. Add a set of channels to each newly created team
    
            foreach ($channel in $team.Channels.Channel) {
                try {
                    # Adding each team channel
                    New-TeamChannel -GroupId $group.GroupId -DisplayName $channel.Name -Description $channel.Description | Out-Null
                    Write-Host "Successfully created channel: " $channel.Name
                }
                catch {
                    Write-Host "Unable to add new Team Channel: $_"
                }   
            }
        }
    
            # 5. Disconnect from all PowerShell sessions
    
            Write-Host "Completed execution and disconnecting from Microsoft 365 PowerShell sessions."
            Disconnect-MicrosoftTeams
            Disconnect-MgGraph
        }
        catch {
            Write-Host "Unable to complete the operation: $_"
        }
    }
    else {
        Write-Host "Content file has invalid data."
    }
    
  3. Abra una sesión de Windows PowerShell en modo de administrador y ejecute el script que guardó.

  4. Cuando se le pida que proporcione las credenciales, escriba las credenciales de administrador global que recibió la primera vez que se registró para la suscripción de desarrollador.

    Nota:

    No cierre la sesión de PowerShell, ya que el script tarda varios minutos en ejecutarse. Si ha modificado los usuarios de su suscripción a partir de lo que se crea en el paquete de contenido predeterminado, es posible que algunos usuarios no se agreguen a Teams. A medida que se ejecuta el script, muestra acciones correctas o con error.

  5. Cuando el script haya finalizado la ejecución, puede iniciar sesión en el cliente de Teams con una de las cuentas de usuario y ver los equipos recién creados.

Consulte también