Go to Microsoft Teams Contacts (from Skype for Business Tenant)

To regain access to your missing “legacy” contact list after the forced migration or upgrade to Teams in the Office 365 cloud, click on [ Go to Teams ] in the Skype for Business application and navigate to the Chat tab on the left hand pane. Note that you may have to sign-in (again) to Microsoft Teams.

Surprise surprise! The contact list is completely blank!

If you happened to click pass the dialog that appeared, you have definitely missed the important

“We’re importing your Skype for Business contact groups… This could take a while. To organize your contacts in the meantime …”

dialog box which exactly explains this strange phenomenon.

Depending on your Skype for Business tenant’s region, it can take several hours before your contact list finally appears in Teams itself.

For your convenience, note that your contact list is also accessible under Calls > Contacts.

Microsoft Teams (Cloud) Upgrade From Skype for Business Tenant

Your organization is now using Microsoft Teams! On an Office 365 tenant running Skype for Business, you may be “randomly” selected to upgrade from Skype for Business to Microsoft Teams. You will not miss this strategically placed violet coloured notification when you start the Skype for Business (desktop) application.

It is possible to ignore this upgrade prompt for an unknown duration until one fine day where you are “forced” migrated automatically in the cloud. This is evident when the all-too-familiar Skype for Business interface is replaced with “Your organization is now using Microsoft Teams” banner when you successfully sign-in as illustrated.

From this moment on, you are blocked from accessing all your PIM information from contacts to history list and key functionality such as the meeting calendar and voice phone dialer within the Skype for Business app. Administration of existing Skype for Business meetings prior to the upgrade to Teams can continue to be done using Outlook though.

So what now then? You can click on the “Questions? Learn more” (Switch to Teams from Skype for Business) or “View past conversations, calls or voicemails” (FAQ) link to learn more in the meantime.

#powershell #skype4b Trunk Configuration

With New-CsTrunkConfiguration, a trunk can be created at the Global (default), site or pool (service) scope for a PSTN service from a PSTN gateway, IP-Public Branch Exchange (PBX) to a Session Border Controller (SBC) at the service provider.

Correspondingly, it is a simpe matter to run Get-CsTrunkConfiguration to get back a list of available trunk configuration information. However, executing this cmdlet with just the name of the trunk will fail:

PS > Get-CsTrunkConfiguration -Identity trunkName
Get-CsTrunkConfiguration: Cannot get item at this location. Get item at scopes: “Global, Site, Service”
Parameter name: Identity
At line:1 char:1
+ Get-CsTrunkConfiguration -Identity trunkName
+ ~~~
+ CategoryInfo : InvalidArgument: (Tag: trunkName:XdsIdentity)
[Get-CsTrunkConfiguration, ArgumentException
+ FullyQualifiedErrorId :BadLocation, Microsoft. Rtc.Management.Internal.GetCsTrunkConfigurationCmdlet

The solution is to always prefix the name with the trunk’s scope i. e.

Get-CsTrunkConfiguration site:trunkName

#powershell #skype4b PSTN Usage, Voice Policy & Route

Think of PSTN usage records as something which specify a class of call permitted in an organisation such as internal, local or international. Such records are used to associate with voice policies* and routes** to dictate usage of specific (gateway) routes by authorised users. A call can only be successful when a dialed number matches a route in a PSTN Usage.

A list of Public Switched Telephone Network, PSTN Usage records is accessible using the appropriately named Get-CsPstnUsage cmdlet. Because Global is the only identity applicable (to PSTN usages), you can basically retrieve available records via (Get-CsPstnUsage).Usage.

It is not possible to inspect the relationship between PSTN Usage, voice policy or route with a statement like Get-CsPstnUsage CH_Zurich. To resolve this, use Get-CsVoiceRoute or Get-CsVoicePolicy.

* assigned at the site or user scope where each voice policy must be linked to at least one PSTN usage record
** routes are assigned to telephone numbers

REFERENCE
Configure voice policies, PSTN usage records, and voice routes in Skype for Business
PSTN usage records in Lync Server 2013

#powershell #skype4b #msexchange List Mismatched Mail(box) Enabled User Email and SIP Addresses

#requires -version 3.0
###############################################################################
# Copyright (c) 201x-2018 leedesmond.com
# All Rights Reserved. Use at your own risk and responsibility.
# Version 1.00
#
# Get a list of mismatched mail(box) enabled user email and SIP addresses
# without SkypeforBusiness or Exchange Server PowerShell modules
#
###############################################################################
# Read more “#powershell #skype4b #msexchange List Mismatched Mail(box) Enabled User Email and SIP Addresses”

#powershell #skype4b Get List of Not Enabled Skype for Business Users (Without #skype4b Cmdlets)

#requires -version 3.0
###############################################################################
# Copyright (c) 201x-2018 leedesmond.com
# All Rights Reserved. Use at your own risk and responsibility.
# Version 1.00
#
# Get a list of not enabled Skype for Business Users (without SkypeForBusiness
# Module Cmdlets)
#
###############################################################################
# Read more “#powershell #skype4b Get List of Not Enabled Skype for Business Users (Without #skype4b Cmdlets)”

#powershell Local Certificate Store Inventory (Windows)

#requires -version 3.0
###############################################################################
# Copyright (c) 201x-2018 leedesmond.com
# All Rights Reserved. Use at your own risk and responsibility.
# Version 1.00
#
# Get a list of certificates installed in the local certificate store remotely
# across 1 or more machines (Certificates \ Personal \ Certificates)
#
# REQUIREMENTS: PowerShell Remoting enabled on target hosts
#
###############################################################################
Read more “#powershell Local Certificate Store Inventory (Windows)”

#powershell Always Up-to-date Hardware Inventory (Windows)

#requires -version 3.0
###############################################################################
# Copyright (c) 201x-2018 leedesmond.com
# All Rights Reserved. Use at your own risk and responsibility.
# Version 1.00
#
# Any Windows Server – Always Up-to-date Hardware Inventory (Core)
#
# REQUIREMENTS: PowerShell Remoting enabled on target hosts & firewall
# ports (WMI calls)
###############################################################################
Read more “#powershell Always Up-to-date Hardware Inventory (Windows)”

#skype4b #powershell Always Up-to-date Infrastructure Inventory (Topology)

#requires -version 3.0
###############################################################################
# Copyright (c) 201x-2018 leedesmond.com
# All Rights Reserved. Use at your own risk and responsibility.
# Version 1.00
#
# Skype for Business Server – Always Up-to-date Inventory (Topology)
# Gathers core #skype4b infrastructure inventory (topology), supporting
# server roles, file stores and SQL backend databases.
#
# NOTE – change SiteId where appropriate
###############################################################################
Read more “#skype4b #powershell Always Up-to-date Infrastructure Inventory (Topology)”

#skype4b #powershell Get List of Server Roles

Very often in an on-premise or hybrid Skype for Business Server setup, there is a need to get a current list of a particular server role. Rather than hard-coding this information, consider the following approaches:
Read more “#skype4b #powershell Get List of Server Roles”