Adventures with Import- and Update-CsUserData Pt.1

I’ve spent a lot of time this year working with the <verb>-CsUserData commandlets in SfB, and it’s been an interesting time.

This is part 1 in a series where I document the traps I’ve fallen into with the Import-CsUserData and Update-CsUserData commands in particular.

Part 1 – Update-CsUserData fails on bad data.
Part 2 – Your Front-End won’t start after Import-CsUserData imports bad data.
Part 3 – Update-CsUserData throws false red and runs slow if your paired pool is offline.
Part 4 – You can’t trust Import-CsUserData to tell you if it fails.


My customer is a LARGE deployment, and they’re moving from Lync 2010 in a user forest to SfB 2015 in a resource forest. In an effort to make this transition as seamless as possible for the users, the plan is to migrate all their contacts (their “buddies”) from the existing platform to the new.

The approach we’ve taken breaks the process into multiple steps:

  1. Export-CsUserdata on Lync.
  2. Use a bespoke PowerShell script to break down the single data export (all 10+ Gig of it) into a contact list XML file for each user.
  3. Use Convert-CsUserData and the “-TargetVersion Current” switch to convert each user’s file from Lync’s XML to SfB’s ZIP format.
  4. Sanity-check each user’s file with “Update-CsUserData -TestMode”.
  5. Import the data. We initially chose “Update-CsUserData” and fell into a hole, so we changed to “Import-CsUserData” – and fell into a different one.

This series will document those bugs and hopefully prevent others from earning the same scars.

Continue reading ‘Adventures with Import- and Update-CsUserData Pt.1’ »

Cannot Start Microsoft Outlook

I’ve been travelling a lot for work this year, and when I’m away from home I generally leave my home PC on.

It was upon returning from a work trip that I found Windows had pushed an update to it, and it had restarted – and from that moment, Outlook was broken.

Cannot start Microsoft Outlook. Cannot open the Outlook window. The set of folders cannot be opened. The attempt to log on to Microsoft Exchange has failed.

I tried all the usual suspects thinking this was going to be a quick fix:

  1. Repair Office.
  2. Run Outlook in Safe mode. (Start / Run / outlook.exe /safemode).
  3. Reset the nav pane (Start / Run / outlook.exe /resetnavpane).
  4. Create a new profile. (Start / Control Panel / Mail / Show Profiles / Add…)
  5. Ran the “Outlook Support & Recovery Assistant“.

No dice.
Continue reading ‘Cannot Start Microsoft Outlook’ »

SFBS 2019 CU1 HF1 – September 2019

To borrow from the tourist trap t-shirt, “I was hoping for a CU, and and all I got was this lousy HF”. Oh well, any fix is a good fix. This update builds upon July’s CU1, updating only two components on my SE Front-End. It takes the build from 7.0.2046.123 to 7.0.2046.143.

What’s Fixed?

  • Kb 4518403 Event ID 25075 on Mediation server regarding SipHealthMonitor not being configured in Skype for Business Server 2019.
  • Kb 4518404 Call Queue agent can’t transfer PSTN call to internal Skype for Business Online user from different SIP domain in Skype for Business Server 2019.

What’s New?

Nothing noted. There are no new cmdlets added in this update.

What’s Changed?

Nothing noted.

Known Issues

Nothing noted.

Continue reading ‘SFBS 2019 CU1 HF1 – September 2019’ »

Microsoft Teams Deep-Dive – Canberra follow-up

I presented a Teams Deep-Dive session at Microsoft’s office in Canberra this week.

At the end there were a few links I wanted to share with the participants, and a few homework questions I wanted to research and respond to. A blog post seemed the obvious way to provide them with that info.

The below will be of greatest relevance to the attendees, but even if you weren’t there I think you’ll find some bits of interest.

Continue reading ‘Microsoft Teams Deep-Dive – Canberra follow-up’ »

SfB 2015 Server Update – August 2019

Hot on the heels of last month’s CU10 comes CU10 HF1 – the “whoops” fix-up release.

This is build 6.0.9319.562, and it updated three components on my Standard Edition Front-End.

What’s Fixed?

  • 4518680 Can’t transfer external calls by using Polycom VVX phones in Skype for Business Server 2015
  • 4518679 Skype meeting disconnection due to missing session refresh in Skype for Business Server 2015

Note The fix for the following issue is reverted and it is not included in this cumulative update.

  • KB 4507230 Support LBR and branch site voice resiliency conflicting requirements in Skype for Business Server 2015

What’s New?

Nothing noted. No cmdlets have been added to the SfB module in this update.

Continue reading ‘SfB 2015 Server Update – August 2019’ »

Cscp logs Event 35009 – “Authorization Failed”

My colleagues and I recently encountered an intermittent problem with the CSCP reporting “Authorization Failed” when you tried to sign in.

This was a Skype for Business 2015 Enterprise Edition pool, and so it didn’t take long to localise the issue to just one Front-End server.

Each failed attempt dropped an instance of event 35009 into the “Lync Server” log:

Remote PowerShell cannot create InitialSessionState for user S-1-5-20. Cause of failure: Cannot find user in Active Directory with the following SAM account name: "S-1-5-20"

That SID belongs to the NT Authority / Network Service – and when we succeed on another machine, we see the traces* correctly trying to sign in as the SID of my admin account.

(* The reference to PowerShell in the log gave us cause to review the Centralised Logging for the “PowershellWebService” scenario, but it didn’t seem to add a great deal of value.)

A successful sign-in also drops the more friendly 35008 into the log:

Continue reading ‘Cscp logs Event 35009 – “Authorization Failed”’ »

Review: Poly EagleEye Mini USB camera

I’m a little late to get my mitts on an EagleEye Mini USB camera, but circumstances recently gave me cause to take a closer look.

If you’ve not encountered it before, the Mini is a compact 1920×1080 HD USB camera, initially designed to slot into the top USB port on your VVX501 or 601, but nowadays also supported on a Trio with Visual+, and even on a PC or Mac.


Poly’s website reports its features thus:

  • High-definition 1080p60 capture with true color hue saturation and brightness for the most accurate color rendition and life-like images
  • 4x electronic zoom and a 74-degree field of view
  • Simulcast video stream
  • Installs in seconds – no drivers needed

It’s officially a supported peripheral for Skype for Business video calls on a computer or video conferencing device.
Continue reading ‘Review: Poly EagleEye Mini USB camera’ »



I have the occasional need to send log files to Microsoft and other vendors from customers who have strict IT security requirements. These customers usually require all files be de-identified before they leave the premises, removing all host names and IP addresses.

This can be quite a tedious process, so I’ve created a small script file that edits a provided text file and:

  • uses a “find/replace” CSV file to replace all instances of sensitive text with replacement values.
  • obfuscates any unchanged IP addresses, replacing them with dummy text in the format “”, where the “nn” is the same number where-ever that IP address is encountered in the document. (e.g. the third IP address that’s found in the file will be renamed “”).

At a minimum, you only need to provide an -InputFile. With only this, the script will replace all IP addresses with dummy values, then save a copy of the file with a “-new” suffix.

Continue reading ‘New-ObfuscatedFile.ps1’ »

Azure – Resource Provider Not Registered

I’ve been following one of Tom Morgan’s excellent tutorials on creating Bots for Microsoft Teams, and I hit an unexpected hurdle very early on in the process – but as it turns out, the fix was a simple one.

Resource provider 'Microsoft.BotService' not registered for the subscription

Fair enough, I say. Let’s register.

I navigated to All Services then searched for and selected Subscriptions, then selected my Subscription and Resource Providers. There were a lot there, so I filtered for, only to be greeted by the news that I *was* already registered:

Seeing as I was already here and there was an option to Unregister, I went down that path. Refresh, wait a bit, Register and BOOM, I was back on the air.

The moral of the story? Even in the cloud, turning something off and back on again remains a viable fix.

Revision History

9th August 2019: This is the initial publication.

– G.

SfB 2015 Server Update – July 2019

It says August 1 on my calendar, but this update is badged July 31st on the download site, so July it is.

Known Issue: “call hold,” “transfer,” and “resume” options for the Polycom VVX series may fail. (See below for more details.)
Fixed: See SfB 2015 CU10 HF1

Our last CU (May’s CU9 / 6.0.9319.548) has now been rendered obsolete by CU10 – 6.0.9319.559. It updated 7 components on my Standard Edition Front-End server.

What’s Fixed?

This cumulative update includes a defense in depth fix and enables Location-Based Routing to support the Skype for Business mobile clients. It also fixes the following issues:

  • Kb 4510852 UCWA client is disconnected because w3wp.exe crashes when using clarity connect in Skype for Business Server 2015
  • Kb 4510851 SCOM SQL alerts are created every hour on SQL Secondary Replica server if “Always On” for Monitoring Server is set in Skype for Business Server 2015
  • Kb 4510850 Skype for Business on Mac user’s latest photo can’t be seen until signing in to a Windows client in Skype for Business Server 2015
  • Kb 4511313 “Too many outstanding requests for a single user” error occurs on Front-End servers in Skype for Business Server 2015
  • Kb 4510847 Rate My Call on UCWA clients still shows after installing the January 2019 Cumulative Update for Skype for Business Server 2015
  • Kb 4510846  “InstallDatabaseInternalFailure: An internal error has occurred…” error when installing new databases in Skype for Business Server 2015
  • Kb 4507230 Support LBR and branch site voice resiliency conflicting requirements in Skype for Business Server 2015
  • Kb 4459114 The installed local XDS database version isn’t matched with the expected version in Skype for Business Server 2015
  • Kb 4507232 Resuming a PSTN call that was put on hold results in one-way audio in Skype for Business Server 2015
  • Kb 4510845 UCWA Event ID 20002, 20003, and 20033 occurs after you install the July 2018 cumulative update for Skype for Business Server 2015
  • Kb 4510844 Can’t find the response group agent that’s synced from an existing distribution list in Skype for Business Server 2015
  • Kb 4510843 Forwarding a missed call from Shared Line Appearance fails in Skype for Business Server 2015
  • Kb 4507228 No notifications from UCMA conference subscriptions after a network disconnection in Skype for Business Server 2015
  • Kb 4510842 Form-based authentication still works after you disable external basic authentication in Skype for Business Server 2015
  • Kb 4510841 Skype for Business 2015 Mediation Server doesn’t respect the codec prioritization for outgoing PSTN calls
  • Kb 4510840 Error ID 28042 and UCMA sign-in fails in Skype for Business Server 2015
  • Kb 4510839Skype for Business still rings if a PSTN call is ended before it’s answered by an online user in Skype for Business Server 2015
  • Kb 4510855 Can’t edit interactive RGS workflows via the web interface in Skype for Business Server 2015
  • Kb 4507233 Enterprise users can’t request control of an anonymous user’s shared screen in Skype for Business Server 2015
  • Kb 4510856 User can’t create Skype meeting for a delegator via Skype for Business on Mac if they’re homed in different pools in Skype for Business Server 2015
  • Kb 4512879 UCWA client can’t make a P2P call or join a conference when EnableExternalAccessCheck is True and EnableOutsideAccess is False in Skype for Business Server 2015
  • Kb 4503584 “The Audio/Video Conferencing Server has failed to create a conference” error (ID 32005) occurs on Audio/Video Conferencing Server in Skype for Business Server 2015

What’s New?

Nothing noted.

Continue reading ‘SfB 2015 Server Update – July 2019’ »