Written: 03/07/2022 | Updated: N/A
English. ‘The English language is so elastic that you can find another word to say the same thing’. So said Mahatma Gandhi. Yet did you know that for almost 300 years in the early history of England the official language of England was actually French? Or that English is in fact a West Germanic language? Spoken today by almost 1 billion people it is the most widely understood language of the EU even though we are no longer a part of the union. Oh the irony. Nevertheless it is often said – typically by the British themselves that we are lazy when it comes to learning other languages. Whilst that may be true and whilst I am not a philologist what is a fact is that many organisations are multilingual, who have staff located all over the world. Many organisations also conduct business, communicate and collaborate with each other using Microsoft Teams all over the world. So in order to better facilitate the meeting join experience – as in not simply forcing everyone to use the default language of their tenant, Microsoft have introduced Multi-language Teams meeting invites. This allows administrators invite control to display the join information in meeting invitations in up to two languages across all email platforms. At the time of writing this hasn’t surfaced in the TAC – so let’s take a look with good old PowerShell in my Ring 4 tenant.
Thanks for everything Jeffrey Snover.
This blog will cover
- Using Teams PowerShell
- Applying Multi-Language Invites to the Global Org-Wide Default Meeting Policy (All Users)
NOTE: This blog may have abridged steps and will assume some familiarity with Microsoft 365 and Teams
- Teams Administrator or Global Administrator permissions (for PowerShell)
- Recommended Teams and Outlook Licence (within an Office 365/Microsoft 365 Licence) to test
USING TEAMS POWERSHELL
1.) Search for PowerShell and select Run as Administrator
2.) Use the following to install the Microsoft Teams Module
Install-Module -Name MicrosoftTeams -Force -AllowClobber
3.) Use the following to initialize a session. You may need to authenticate so have your admin credentials to hand
APPLYING MULTI-LANGUAGE INVITES TO THE GLOBAL ORG WIDE DEFAULT POLICY
So we are in to PowerShell. Let’s home in on the policy we need and let’s apply multi-language invites to it
1.) First, I will list all the meeting policies I have in the tenant via a get command
2.) After getting and reviewing all the meeting policies I decide I want to apply the Multi-Language invites to the global org-wide default policy. I therefore run a new get command to isolate that policy
Get-CsTeamsMeetingPolicy -Identity Global
3.) I scroll down until I find MeetingInviteLanguages. This is empty by default.
4.) I now have to set that to be something which is the languages I want for the join information. I want to set the join information in the invitation to be English and Spanish.
The preliminary list of available languages is: ar-SA,az-Latn-AZ,bg-BG,ca-ES,cs-CZ,cy-GB,da-DK,de-DE,el-GR,en-GB,en-US,es-ES,es-MX,et-EE,eu-ES,fi-FI,fil-PH,fr-CA,fr-FR,gl-ES,he-IL,hi-IN,hr-HR,hu-HU,id-ID,is-IS,it-IT,ja-JP,ka-GE,kk-KZ,ko-KR,lt-LT,lv-LV,mk-MK,ms-MY,nb-NO,nl-NL,nn-NO,pl-PL,pt-BR,pt-PT,ro-RO,ru-RU,sk-SK,sl-SL,sq-AL,sr-Latn-RS,sv-SE,th-TH,tr-TR,uk-UA,vi-VN,zh-CN,zh-TW.
I now execute a Set command to set Meeting Invite Languages within the global meeting policy to be the English and Spanish languages. Be careful on this part. Remember, if you are using two languages then they have to be within quotation marks “” and separated by a comma otherwise it will error. So
Set-CsTeamsMeetingPolicy -Identity Global -MeetingInviteLanguages "en-GB,es-ES"
5.) Checkback using the Get command
Get-CsTeamsMeetingPolicy -Identity Global
6.) And there it is. Configured for English and Spanish. Two Languages.
7.) Let’s test it out in Teams. I spin up a meeting invite
8.) And there we are in Teams
9.) And in Outlook
Our job here is done. Multi-language invites baby.
Q.) The article here shows the global org wide default policy. Can it be applied to custom policies?
A.) Yes, it can be applied to custom policies, and because it can be applied to custom policies it can be applied to groups and individual users, not just pushed out across the whole org. In this sense you can have very different join languages across your whole organisation
Q.) What is the maximum number of languages which can be used?
A.) At the time of writing, two
Q.) What languages are supported?
A.) At the time of writing: ar-SA,az-Latn-AZ,bg-BG,ca-ES,cs-CZ,cy-GB,da-DK,de-DE,el-GR,en-GB,en-US,es-ES,es-MX,et-EE,eu-ES,fi-FI,fil-PH,fr-CA,fr-FR,gl-ES,he-IL,hi-IN,hr-HR,hu-HU,id-ID,is-IS,it-IT,ja-JP,ka-GE,kk-KZ,ko-KR,lt-LT,lv-LV,mk-MK,ms-MY,nb-NO,nl-NL,nn-NO,pl-PL,pt-BR,pt-PT,ro-RO,ru-RU,sk-SK,sl-SL,sq-AL,sr-Latn-RS,sv-SE,th-TH,tr-TR,uk-UA,vi-VN,zh-CN,zh-TW. Just to note whilst some of these are quite obvious others aren’t so may need some testing
Q.) What if I want to go back to English and a single join on the invite?
A.) Set-CsTeamsMeetingPolicy -Identity Global -MeetingInviteLanguages $Null
Q.) Will this show in the TAC at some point. I hate Powershell
A.) Probably. Since it is part of the meeting policy it will show there. Probably in the general section