Skype for Business @ Microsoft Ignite What You Need To Know

I wasn’t able to go to Microsoft Ignite this year in Atlanta, but 4,078 miles away I have been watching social media, Microsoft blogs, live and on demand streams to gather as much relevant information as possible with regards to Skype for Business. The intention of this post is to summarise the key points I have come across, and there are quite a few.


At the Ignite Keynote I picked up on the fact that Microsoft’s message for this Ignite was all about Cloud and Business Transformation. Not suprising right? The cloud bit not so much, but now Microsoft have taken their gloves off, removed their arm from around SI partners and are now pushing more and more direct services to businesses.  The message was clear, Corporate Vice President Julia White said that I.T no longer stands for Information Technology, but Innovation and Transformation. What does this mean?

Each of us will have our own intepretation of this, but for me:

Innovation – 75% Microsoft driven application services, 15% partner driven application services and 5% home grown application development. The decade 2020-2030 will be known as the decade of the Dev, like 2000-2010 was the decade of virtualisation and optimisation.

Continue reading Skype for Business @ Microsoft Ignite What You Need To Know

Give Your Skype for Business PowerShell Scripts a UI In 10 minutes

First off, this is not really a Skype for Business post, and I do not pretend to be a Dev, so if you are looking for in depth coding then there are others out there who are way better than me. However, I wanted to share with you a method that can be easily adopted to give your PowerShell scripts a nice User Interface.

Previously, designing a UI in PowerShell meant you had to either write hundreds of lines of code referencing the Windows.Forms library, drawing out objects, assigning styles to them etc. etc. Or buy expensive software such as Sapien’s PowerShell Studio that did most of the heavy lifting for you, but you needed to be somewhat of a PowerShell wizard to create even basic scripts. Neither solution for me was ideal, PowerShell Studio just made my head hurt, while going old school and writing line by line was inefficient and often a simple script would bloat out from 50-60 lines of code to easily 2 or 300 lines. This of course may be down to my n00b coding skills but I imagine there are many people out there like me.

Looking around, I found a few projects that had made PowerShell modules you could reference to build your UI, but still there was a dependency on that module being installed on the system the script would eventually run on. I stumbled on a forum post that suggested to use Visual Studio to build your UI and then import it into your PowerShell script.

I have never used Visual Studio before, mainly because I am scared of it and didn’t really know where to start. Plus I am an impatient man, so I just wanted to get things working as fast as I could. However, I was astonished how easy it was.

The process is really simple. Create your UI in Visual Studio using.. you guessed it, a UI to design your UI, drag and drop, select component etc. Once complete copy the code to your PowerShell script, convert into variables, then reference the variables in your code to “do stuff”.

Continue reading Give Your Skype for Business PowerShell Scripts a UI In 10 minutes

Legacy PBX Number Presentation to Skype for Business Using Sonus SBCs and AD based RNL

A customer messaged me last week and asked me a question regarding number presentation to Skype for Business when users still on their legacy PBX system placed a call to a Skype for Business endpoint. The customer explained to me that when a Skype for Business user called an extension on their legacy PBX system, the caller display name showed the name of the caller. However, when a legacy PBX user called a Skype for Business endpoint, the caller display showed the extension number rather than the name of the caller, therefore not allowing the Skype for Business user to easily identify the caller.

The reason why when a Skype for Business user calls the legacy PBX extension the caller’s name is display is because out of the box, Skype for Business sends both the extension number and the name of the caller in the FROM header in the SIP INVITE to the legacy PBX. For Example:

FROM: “David Williams” <;user=phone>

Using SIP standards, the legacy PBX automatically interprets this and is able to display the name of the caller to the handset.

However, the legacy PBX system appeared to be configured with just extension numbers only. The system had no local directory to associate an extension with a name of the employee who has that extension supplied to them. The result of this was that when the legacy PBX sent the INVITE to Skype for Business the FROM header simply included just the extension number, like


End user experience on a Skype for Business client is:

Continue reading Legacy PBX Number Presentation to Skype for Business Using Sonus SBCs and AD based RNL

Skype for Business & Exchange Online Auto Attendant–Transfer to Extension Failure Over Federation

Today I came across an interesting but equally painful problem when configuring Skype for Business IVRs with Exchange Online Auto Attendant workflows. My customer has scenarios whereby IVRs are used as main line entry points for branch offices. The standard workflow dictates that there are three main options that process the call into a agent queue, but the fourth option transfers the caller to the branch site’s auto attendant service located in Exchange Online. The auto attendant allows the caller to search for a user by name, email address or extension. However, to account for user miss-dialing we need an escape back to the IVR from the auto attendant service. I decided to use the operator function within the auto attendant and entered the extension of the IVR. On the Skype for Business side a normalization rule was created to convert the extension to the full line uri of the IVR.

During testing, I found that when I called the IVR from an internal customer client, I was transferred to the auto attendant from the IVR, and I was able to press ZERO to return to the IVR. When calling from a PSTN end point I was transferred to the auto attendant and was able to escape back to the IVR. Both these scenarios worked as I expected. Great!

However, there is one scenario that didn’t. The IVR is enabled for federation, so what happens if a partner organisation attempts to call the IVR using SIP federated call?

Continue reading Skype for Business & Exchange Online Auto Attendant–Transfer to Extension Failure Over Federation

Skype for Business – Migration Methodology

For those of you who work in the Skype for Business ecosystem, you will be familiar with the terms End User Profiling Methodology, Call Quality Methodology, Skype Operations Framework, Roll-out Adoption Success Kit and other framework methodologies that are designed to help guide customers along the Skype for Business journey. You may not of heard about the Migration Methodology! There is one reason as to why you haven’t and that’s because I have just made the term up!

However, you all know it already, whether you realise it or not. You follow it in your own way and work around it based on situation needs. The purpose of this post is to call some order to this process in an attempt to provide an easy point of reference for everyone.

So what is the Migration Methodology?

When you read about Skype for Business Enterprise Voice and how to migrate from Legacy PBX systems, you will come across two common trains of thought. From the marketing perspective of Skype for Business you will hear how easy it is to enable a user for voice “It’s just one line of Powershell, simple!” and from the technical perspective you will read of all the level 400 permutations of how to integrate two systems together, common issues and the nuances along the deployment journey.

Continue reading Skype for Business – Migration Methodology

Skype for Business to Office 365 Federation Issue

A customer I was working with who has an existing on-premises Lync deployment had trouble federating with with certain partner domains. After investigating the issue it was determined that the problem partner domains where using Skype for Business Online. The symptoms where that the users in the partner domain where able to see my customer’s presence information and able to send Instant Messages. However, the customer could not see the partner presence or reply to any communication (one-way federation).

I have come across one-way federation issues before whilst deploying, however, this was different in that the customer could federate with other partners fine, so I knew that the usual suspects such as certificates, DNS and firewall were probably not going to be the culprits here.

So focusing on the fact that the partner domain was in Office 365 this at least gave a starting point. Tracing the communication between the on-premises Edge server and Office 365 I was able to see that indeed the customer’s Edge server was discovering the correct federation SRV record for the partner ( and from the Edge server I could establish a connection to Office 365 using Telnet. However, the Edge server received no response from Office 365 federation service and timed-out the connection, which explains why customer users aren’t able to establish a communication stream.

Continue reading Skype for Business to Office 365 Federation Issue

Skype for Business–Block Call Identified as Malicious

For a long time there has been a little used feature within Lync and Skype for Business that allows end users to highlight a nuisance voice call to the administrators called Malicious Call Trace (MCT). MCT basically allowed the end user to report a call immediately after hanging up which would register in the call detail records database as a trouble call. This information could then be used by Skype for Business administrators to highlight potential issues and act accordingly. Often acting accordingly means not doing much, not because you don’t want to, but because you can’t. Whether that is time or money, they are usually the two main factors. Skype for Business doesn’t provide any administrative blocking options for incoming numbers, instead relies on end users keeping their relationships up to date and/or some third party tool that costs $$.

Continue reading Skype for Business–Block Call Identified as Malicious

Skype for Business–Survivable Branch Appliance or Cloud PBX?

Skype for Business Server has been out in the general market for 14 months so far. However, one particular role seems to be dragging it’s heals towards release, and that is the Skype for Business Survivable Branch Appliance. If you are considering an SBA, then the likes of Sonus and Audiocodes have an SBA product. However, if you look under the bonnet, this will be a Windows Server 2012 (in the latest release or Windows Server 2008 R2 in older image versions) with Lync Server 2013 core components installed to act as the SBA.

There appears to be something in the pipeline to bring the SBA to full Skype for Business edition, but there seems to be no urgency to release this to the market. Why?..

Well Microsoft released Cloud PBX late last year, and have made great strides in rolling this out globally across all their Office 365 datacenters and media networks. It is clear, that this is the where their main energy, focus and direction are taking, which is a good thing! But it also begs the question over the viability of not only Skype for Business Server in the future, but the role of the SBA in todays’ ecosystem.

The purpose of the SBA was always to give some level of PSTN calling capability to a site when the connection breaks to the central site where the Skype for Business Front End Pool is located. These were ideal for long distance branch sites with poor inter-site connectivity that was prone to connection issues. Admins could guarantee a level of service to users at that site in order to provide the basic tools for “normal” business operation (Normal = basic toolset).

Continue reading Skype for Business–Survivable Branch Appliance or Cloud PBX?

Skype Broadcast Meetings–A Preview–Q&A & On Demand Playback

Whilst preparing for the next Skype Show I was exploring if anything had changed on my tenant in light of the announcements made at Enterprise Connect back in April. For those who follow the Skype Show ( you will know I use Skype Broadcast Meetings as the main technology for these shows. So the announcements made at EC16, notably the Q&A functionality for Broadcast Meetings was particularly useful to me.

If you have ever used Broadcast Meetings, you will know that trying to engage with your audience is quite a challenge. Sure we have the ability to integrate Yammer, but this relies on the audience having a Yammer account, and then understanding enough about Yammer to join the group. This is a major put off, and people who want to engage are often put off by this. Broadcast Q&A will improve engagement 100% and I cannot wait for this feature to arrive!

And it has! At least in Technical Preview and much to my excitement!

Continue reading Skype Broadcast Meetings–A Preview–Q&A & On Demand Playback

Skype for Business & Azure AD Application Proxy As Reverse Proxy

Often when speaking with customers, there is a large discussion about what reverse proxy is used for Skype for Business deployments, cost of them and network dependencies. Experience has taught me that reverse proxies often take up far too much time on the discussion table because customers usually do not understand their need. They view these as nothing more than pass-thru devices and fail to understand or “buy in to” the edge network protection they provide when deployed properly. But Skype for Business requires one, so in the end its a choice, external meetings and mobility, or not?

Customers then ask for the cheapest solution and until now we are limited to WAP and KEMP as official qualified devices. Both have disadvantages. WAP has a dependency on ADFS which is a big turn off to customers who do not have a requirement for ADFS beyond simple reverse proxy. KEMP can be quite an expensive solution depending on throughput and high availability requirements.

So I have been looking for an alternative, cheaper, easier solution and as a result have been playing around with Azure AD Application Proxy. I admit this is not a qualified solution, but neither is Netscaler, IIS ARR and TMG, but we still use them… I would always advise to use qualified solutions for full end to end support.

There is a big difference between “it works” and “it works properly”

That said, I wanted to find out if Azure AD Application Proxy “works”.

Continue reading Skype for Business & Azure AD Application Proxy As Reverse Proxy