Enabling Cross-Tenant meeting Invitations via PowerShell | How Can External Users Book Internal Rooms?
Hello, everyone!! It's time to proceed with the How to Set up Microsoft Teams Rooms series! This blog post will be essential for some or, for everybody, I'm not sure yet. Let me explain my POV, as a Systems Engineer, I've been working in conjunction with many engineers who work at different companies, such as Microsoft, Zoom, Google, and so on. They send meeting, and the in-office devices need to be able to be booked, and let them know they've made booking, so is it essential, right? Let me show you how this can be done.
Note: The title is not Microsoft teams related, I know it, but I decided to type in another one, since we can use this step-by-step guide to change configuration on all our room resources.
Do you prefer a video over a reading? Check out the following video:
Microsoft Exchange doesn't permit external people to book our rooms and resources by default, but we can configure our resources to accept external meetings via PowerShell.
Note: if you are a teams rooms user, then this will be helpful, because several users have told me that they don't see invitations on their controller, but the invitations were sent by their integrator and, they belong to another tenant.
Run PowerShell as admin, connect to Exchange and sign in with your admin account.
Connect-ExchangeOnline
Method 1: User Principal Name
Run the following command and look for your room.
Get-Mailbox | Where {$_.RoomMailboxAccountEnabled -eq $True} | Format-Table Name, UserPrincipalName
For instance, I'd like that external users can book my living Room, so let's run the following code:
Set-CalendarProcessing <UserPrincipalName> -ProcessExternalMeetingMessages $True
And that's all!
Did it work?
Let's check the configuration has been applied by running the following command:
Get-CalendarProcessing <UserPrincipalName> | Select *external*
Now, you can book my living room whenever you need! 😁👌
Method 2: Room Name
Let's find out our name's rooms by running the following code:
Get-Mailbox | Where {$_.RoomMailboxAccountEnabled -eq $True} | Format-Table Name, UserPrincipalName
Get-Mailbox "Name" | Set-CalendarProcessing -ProcessExternalMeetingMessages $true
In case you skip the 1st method, I'd like to tell you that now, you can book my living room whenever you need! 😁👌
Did it work?
Type in the following command to find out the answer.
Get-Mailbox "Name" | Get-CalendarProcessing | Select *external*
Rolling Back
I'm not sure the method was used by you, but you only need to change $true to $false in order to roll default configuration back.
For 1st method:
Set-CalendarProcessing <UserPrincipalName> -ProcessExternalMeetingMessages $False
For 2nd method:
Get-Mailbox "Name" | Set-CalendarProcessing -ProcessExternalMeetingMessages $false
That's all for today! Thanks for reading. If you have any questions, feel free to reach out. Remember to subscribe to this blog, my YT channel, and follow me on my social media.
Connect with me
- LinkedIn: Kevin Urena
- Youtube: Kevin Urena Mtz
- Instagram: Kevin.Urena_
- Spotify: Kevin Ureña
If you like my blog, and it's helped you, let me know with a coffee 😃😄
- Buy me a coffee: KevinUrena :)
Comments
Post a Comment