Skype for Business Cloud Connector Edition Released

Microsoft has released the Skype for Business Cloud Connector Edition (CCE), now generally available for download. The download is quite small and for good reason - it is simply a process that kicks off the download of all the ISO files required to create the virtual environment.

To use the CCE, a dedicated Windows Serer 2012 R2 server is required (and yes, you must license the VMs so more than likely Data Center will be what you use or multiple Standard edition licenses). The installer will check to make sure you have the minimum required resources which. To plan for the hardware look to the planning guide found on TechNet here.

So while the CCE is free, there are a couple of paid requirements. One, you must have a SIP trunk on premise which you can connect to - a qualified SIP trunk or SBC - as control over the digits coming to and from the SIP trunk is limited (read E.164 expected/required). Two, one or more dedicated Hyper-V hosts (multiple if HA is required). Three, O365 licensed Skype users with Cloud PBX. The last point is a big one in that CCE will work ONLY in environments where there is no on premise Skype/Lync/OCS installed. This solution is designed for those that want to have Enterprise Voice in their O365 deployment but for whatever reason wish to use their on premise voice solution / plan / gateway.

The release of the Skype for Business Cloud Connector Edition opens up doors for those that cannot or will not license PSTN via O365 and remember, this is Gen1 so expect development and growth of the product solution as time moves on. Happy downloading.

Skype for Business CU1 Install

The Microsoft Skype for Business 2015 CU1 has been released (available here and installing it has added a few new challenges. Microsoft has added some new safety features to prevent you from messing with the fabric which is a good thing – getting them to actually work as documented is another challenge.

Starting with the CU1 in Skype for Business Microsoft has added an install blocker if the Skye services on the machine you are installing are running. Interestingly the check includes the Skype services and the Fabric but not the web services which the Stop-CsWindowsServices includes. If you attempt to patch a server without stopping the services a dialog similar to this appears.



The actual list of services will depend on the machine type that is being upgraded as well as the state of the services on that machine. Following the install documentation at it informs you to run Invoke-CsComputerFailover –NoStop –ComputerName <FQDN>. This is a new command that sounds great yet I was unable to get to add any value on a 3-node Pool.

As we know, the UpgradeDomains on a 3-node pool include one server per domain; so invoke the failover without stopping the services (-NoStop) adds no value and in my case just hung the process. On my first node I ran the command as instructed and sat with the feedback of the following:

I broke out of the command and performed a simple Stop-CsWindowsService on the computer and began the shutdown process. It did sit for a while at the Fabric but no longer than a minute.


Once the services were stopped I was able to run the Update and received the typical feedback windows showing me what was and was not up to date. In this case, everything was marked as out of date and there were even two new installs on the FEs (one on the Edge and PChat servers).

The installer worked its magic and upgraded all of the services just fine. Once complete I needed to start my services so Start-CsWindowsService –NoWait was invoked and the command to start all services was issued. I prefer the –NoWait as the services start quicker and I don’t have to sit there. It is a good idea to run Get-CsWindowsService at some point after issuing the start command to see what’s started, starting, and yet to be started.

Once everything was up and Get-CsPoolUpgradeReadinessState was 3/3, I moved on to the second node. Thinking that maybe the first node and its fabric was just in a weird state I attempted to invoke the computer failover again…and it hung again but this time it looked different.


Once again I broke out of the command and manually stopped the services so I could begin the upgraded. Once the install was complete I started all the services once again BUT when I ran the Get-CsPoolUpgradeReadinessState I received a Fabric warning.


Apparently the Invoke-CsComputerFailover was doing something and running Invoke-CsComputerFailBack –ComputerName <FQDN> corrected the problem.

Having so much fun with the CsComputerFailover command I attempted to use it once more on the third node, this time excluding the –NoStop option as again, if it had worked I would then be stopping the services anyway so it was invoked and what do you know - it worked. The services were draining and so the process took much longer than had I just stopped – although had I added the –Graceful option to the Stop-CsWindowsService command it would have done the same. I am in the opinion that if we are patching we have a maintenance window, so the sooner the services are down and we patch the better. Once patched the Invoke-CsFailback was used and bring everything back (including the starting of services) and we were done.

So – lessons learned…on a 3-node pool I would not use the CsComputerFailover command, I would simply stop the services, patch, and restart.

Update - thanks Korbyn

As a side – there is a single database update in this release - the QoeMetrics database was updated. Make sure you run the Install-CsDatabase command to update this followed by Test-CsDatabase -ConfiguredDatabases -SqlServerFqdn <FQDN>  | ft databasen*,Expe*,Inst*,Suc* -AutoSize and Test-CsDatabase -CentralManagementDatabase -SqlServerFqdn <FQDN>  | ft databasen*,Expe*,Inst*,Suc* -AutoSize and ensure your database numbers match.