Deploy Microsoft Teams Rooms with Microsoft 365 or Office 365

Read this topic for information on how to deploy Microsoft Teams Rooms with Microsoft 365 or Office 365, where Microsoft Teams or Skype for Business and Exchange are both online.

The easiest way to set up user accounts is to configure them using remote Windows PowerShell. Microsoft provides SkypeRoomProvisioningScript.ps1, a script that will help create new user accounts, or validate existing resource accounts you have in order to help you turn them into compatible Microsoft Teams Rooms user accounts. If you prefer, you can follow the steps below to configure accounts your Microsoft Teams Rooms device will use.

Requirements

Before you deploy Microsoft Teams Rooms with Microsoft 365 or Office 365, be sure you have met the requirements. For more information, see Microsoft Teams Rooms requirements.

To enable Skype for Business, you must have the following:

  • Skype for Business Online (Plan 2, or an Enterprise-based plan) or higher in your Microsoft 365 or Office 365 plan. The plan needs to allow dial-in conferencing capabilities.

  • If you need dial-in capabilities from a meeting, you will need an Audio Conferencing and Phone System license. If you need dial-out capabilities from a meeting, you will need an Audio Conferencing license.

  • Your tenant users must have Exchange mailboxes.

  • Your Microsoft Teams Rooms account does require at a minimum a Skype for Business Online (Plan 2) license, but it does not require an Exchange Online license. See Microsoft Teams Rooms licenses for details.

For details on Skype for Business Online Plans, see the Skype for Business Online Service Description.

Add a device account

  1. Connect to Exchange Online PowerShell. For instructions, see Connect to Exchange Online PowerShell.

  2. In Exchange Online PowerShell, create a new room mailbox or modify an existing room mailbox. By default, room mailboxes don't have associated accounts, so you'll need to add an account when you create or modify a room mailbox that allows it to authenticate with Skype Room Systems v2.

    • To create a new room mailbox, use the following syntax:

      New-Mailbox -Name "<Unique Name>" -Alias <Alias> -Room -EnableRoomMailboxAccount $true -MicrosoftOnlineServicesID <Account> -RoomMailboxPassword (ConvertTo-SecureString -String '<Password>' -AsPlainText -Force)
      

      This example creates a new room mailbox with the following settings:

      • Name: Rigel-01

      • Alias: Rigel1

      • Account: Rigel1@contoso.onmicrosoft.com

      • Account password: P@$$W0rd5959

      New-Mailbox -Name "Rigel-01" -Alias Rigel1 -Room -EnableRoomMailboxAccount $true -MicrosoftOnlineServicesID Rigel1@contoso.onmicrosoft.com -RoomMailboxPassword (ConvertTo-SecureString -String 'P@$$W0rd5959' -AsPlainText -Force)
      
    • To modify an existing room mailbox, use the following syntax:

      Set-Mailbox -Identity <RoomMailboxIdentity> -EnableRoomMailboxAccount $true -RoomMailboxPassword (ConvertTo-SecureString -String '<Password>' -AsPlainText -Force)
      

      This example enables the account for the existing room mailbox that has the alias value Rigel2, and sets the password to 9898P@$$W0rd. Note that the account will be Rigel2@contoso.onmicrosoft.com because of the existing alias value.

      Set-Mailbox -Identity Rigel2 -EnableRoomMailboxAccount $true -RoomMailboxPassword (ConvertTo-SecureString -String '9898P@$$W0rd' -AsPlainText -Force)
      

    For detailed syntax and parameter information, see New-Mailbox and Set-Mailbox.

  3. In Exchange Online PowerShell, configure the following settings on the room mailbox to improve the meeting experience:

    • AutomateProcessing: AutoAccept (Meeting organizers receive the room reservation decision directly without human intervention: free = accept; busy = decline.)

    • AddOrganizerToSubject: $false (The meeting organizer is not added to the subject of the meeting request.)

    • DeleteComments: $false (Keep any text in the message body of incoming meeting requests.)

    • DeleteSubject: $false (Keep the subject of incoming meeting requests.)

    • RemovePrivateProperty: $false (Ensures the private flag that was sent by the meeting organizer in the original meeting request remains as specified.)

    • AddAdditionalResponse: $true (The text specified by the AdditionalResponse parameter is added to meeting requests.)

    • AdditionalResponse: "This is a Skype Meeting room!" (The additional text to add to the meeting request.)

    This example configures these settings on the room mailbox named Rigel-01.

    Set-CalendarProcessing -Identity "Rigel-01" -AutomateProcessing AutoAccept -AddOrganizerToSubject $false -DeleteComments $false -DeleteSubject $false -RemovePrivateProperty $false -AddAdditionalResponse $true -AdditionalResponse "This is a Skype Meeting room!"
    

    For detailed syntax and parameter information, see Set-CalendarProcessing.

  4. Connect to MS Online PowerShell to make Active Directory settings by running the Connect-MsolService -Credential $cred PowerShell cmdlet. For details about Active Directory, see Azure ActiveDirectory (MSOnline) 1.0.

    Note

    Azure Active Directory PowerShell 2.0 is not supported.

  5. If you do not want the password to expire, use the following syntax:

    Set-MsolUser -UserPrincipalName <upn> -PasswordNeverExpires $true
    

    This example sets the password for the account Rigel1@contoso.onmicrosoft.com to never expire.

    Set-MsolUser -UserPrincipalName "Rigel1@contoso.onmicrosoft.com" -PasswordNeverExpires $true
    

    You can also set a phone number for the account by running the following command:

    Set-MsolUser -UserPrincipalName <upn> -PhoneNumber <phone number>
    

    Note

    If the password is not set to Never Expire, the account will no longer sign in on the device when the account reaches the expiry period. The password will then need to be changed for the account and also updated locally on the MTR device.

  6. The device account needs to have a valid Microsoft 365 or Office 365 license, or Exchange and Microsoft Teams or Skype for Business will not work. If you have the license, you need to assign a usage location to your device account—this determines what license SKUs are available for your account. You can use Get-MsolAccountSku to retrieve a list of available SKUs for your Microsoft 365 or Office 365 organization as follows:

    Get-MsolAccountSku
    

    Next, you can add a license using the Set-MsolUserLicense cmdlet. This example adds the Meeting Room license to the account:

    Set-MsolUser -UserPrincipalName "Rigel1@contoso.onmicrosoft.com" -UsageLocation "US"
    Set-MsolUserLicense -UserPrincipalName $acctUpn -AddLicenses "Contoso:MEETING_ROOM"
    

    For detailed instructions, see Assign licenses to user accounts with Office 365 PowerShell.

    You can also add Phone System capabilities to this account, but you have to configure it first. See What is Phone System? for more details. This example adds the PSTN Domestic and International Calling Plan:

    Set-MsolUserLicense -UserPrincipalName rigel1@contoso.onmicrosoft.com -AddLicenses "Contoso:MCOPSTN2"
    

    Note

    If you are configuring Teams Rooms to only natively join Microsoft Teams meetings, you should not proceed with the following step. The following is only required if you will also be enabling support for Skype for Business on-premises.

  7. To enable the device account with Skype for Business on-premises, be sure your environment meets the requirements defined in Microsoft Teams Rooms requirements.

    Start a remote Windows PowerShell session as follows (be sure to install Skype for Business Online PowerShell components):

    Note

    Skype for Business Online Connector is currently part of the latest Teams PowerShell module.

    If you're using the latest Teams PowerShell public release, you don't need to install the Skype for Business Online Connector.

    # When using Teams PowerShell Module
    
    Import-Module MicrosoftTeams
    $credential = Get-Credential
    Connect-MicrosoftTeams -Credential $credential
    

    Obtain the RegistrarPool information from the new user account being setup, as shown in this example:

     Get-CsOnlineUser -Identity "Rigel1@contoso.onmicrosoft.com" | Select -Expand RegistrarPool
    

    Next, enable your Microsoft Teams Rooms account for Skype for Business Server by running the following cmdlet:

    Enable-CsMeetingRoom -Identity "Rigel1@contoso.onmicrosoft.com" -RegistrarPool "sippoolbl20a04.infra.lync.com" -SipAddressType EmailAddress
    

    Note

    New user accounts might not be created on the same registrar pool as existing user accounts in the tenant. The command above will prevent errors in account setup due to this situation.

Validate

For validation, you should be able to use any Skype for Business client to sign in to the account you created.

See also

Configure accounts for Microsoft Teams Rooms

Plan for Microsoft Teams Rooms

Deploy Microsoft Teams Rooms

Configure a Microsoft Teams Rooms console

Manage Microsoft Teams Rooms

Microsoft Teams Rooms Licensing