After Microsoft announced they'll decommission Skype for Business Online module, I'm sharing the instruction of how to replace it with new module efficiently.
Microsoft is decommissioning Skype for Business Online Connector next year (at time of posting this, due date is Feb 15, 2021). The announcement MC230065 appeared in Message Center:
Microsoft announcement about decommission
The resource linked to the announcement about how to Move from Skype for Business Online Connector to the Teams PowerShell module is not very detailed. You might wonder how to check if you (as Microsoft 365 admin) need to take any action.
Based on Azure AD sign-in logs you can determine if anyone from your organization signed in to Skype for Business Online connector recently.
To find out which filter to use, let's check the entries generated by each module connection.
Skype for Business module sign-in:
Skype for Business module sign-in entry
Teams module sign-in:
MS Teams module sign-in entry
From that point you probably know, what to do. Simply go to Sign-in logs and add proper filter:
Filtered sign-in logs
Next, you need to replace the existing modules. Microsoft suggest to replace your Import-Module
cmdlets to reference Teams module. I have a feeling they forgot that PowerShell supports autoloading since version 3.0 😉
Once you determine affected users and they know which machines they use for scripting, you need to replace the legacy module. To find where you have your module, use the following PowerShell cmdlet:
(Get-Module lynconlineconnector,skypeonlineconnector -ListAvailable).ModuleBase
Once you have the folders located, move them to another location (I advise to not delete them until you confirmed the new module is working fine). Then we proceed to Microsoft Teams module installation. According to Teams PowerShell Release Notes version 1.1.6 and higher already supports Skype for Business Online Connector integration. The following cmdlet can be used:
# For everyone using the machine, requires admin rights
Install-Module microsoftteams
# For current user only, no admin rights needed
Install-Module microsoftteams -Scope CurrentUser
NOTE: If you use
-UserName
parameter forNew-CsOnlineSession
, make sure to update your scripts. This parameter was deprecated and it's no longer available in Teams PowerShell module.
To verify installation was successful, connect using Connect-Microsoft Teams
and verify the correct client id appears in sign-in logs. If you use Microsoft Teams module version lower than 2.0, connect using New-CsOnlineSession
.
For best results, monitor your script in the following days, to make sure that there are no errors. Then remove the legacy modules from the machine.