Skype Web SDK Troubleshooting


Monday, 31 August 2015

Share with: 
 

Sometimes connecting to or using the Skype Web SDK isn't as straight forward as you'd like. I'm collecting a list of common issues and scenarios below that can be used to help troubleshoot and identify deployment issues.

Make sure the SDK prerequisites are met

Ensure that all your servers are running Lync Server 2013 CU1 or higher, or better still, Skype for Business 2015

Learn more about the SDK's prerequisites.

 

Your code must be on an Internet-facing website or localhost

As contradictory as it sounds, there appears to be issues with instantiating the SDK from a non-Internet facing or localhost-style domain. I'm still trying to find guidance around the reasons why, but these are my observations so far.

 

Domain Name Example Supported?
hostname.domainname http://code.telewebica.net.au/ Yes
localhost http://localhost/ Yes
hostname.invaliddomain http://telewebica.local/ No

 

Check the official Microsoft FAQ

Microsoft have a useful FAQ on MSDN that covers a number of frequently asked questions. Read more.

 

Office 365 isn't supported (yet)

Currently the Skype Web SDK doesn't support Skype for Business Online or Office 365 accounts. It only supports on-premises or hosted environments. Microsoft have indicated that Office 365 is on the roadmap to support the Skype Web SDK, but not timeframe has yet been provided.

 

Cross Domain Authorization

As outlined in the pre-requisites, it's important to ensure that every domain you are going to run the SDK from, including any local domains, are added to the cross domain authorization list. This is performed using the Lync/Skype for Business Management Shell.


$myurl = New-CsWebOrigin -Url "{https://mysite}"
Set-CsWebServiceConfiguration -Identity "{myid}" -CrossDomainAuthorizationList @{Add=$myurl}

If you're not sure whether your domain has been added, you can use the Management Shell to query the list of authorized domains using the command below.


Get-CsWebServiceConfiguration | select -ExpandProperty CrossDomainAuthorizationList
    

 

Supported Browsers

Naturally, it is important to make sure that you, and your users, are using a supported Web Browser. The Skype for Business Web App compatibility table is appropriate for the Web SDK as well.

Skype for Business Web App supported platforms

Of course, unless you're using a browser from the 90's that doesn't support JavaScript, it should work fine.

 

Use your Browsers Console Log to Watch the Authentication process

All modern browsers have a Console Log that shows JavaScript logs and errors. This is a great tool for identifying errors from the server as well as basic JavaScript bugs.

Browser Shortcut
Firefox, IE and Edge F12
Chrome Ctrl-Shift-J

Depending on your Browsers configuration, you should be able to watch the JavaScript logs as activities occur.

The example below shows an authentication error (in this case a mismatched domain name):

JavaScript Console Log in Chrome

 

Fiddler is your friend

Fiddler, a free tool from the folks at Telerik, is an web debugging tool that is far more comprehensive than the Console and Debugging Tools built into modern browsers.

Fiddler Web Debugger by Telerik

Using fiddler, you can capture each HTTP action, both the request and the response, including the full response payload, and review it for errors and issues.

 

Check your SSL Certificate

If the site on which your SDK code is hosted is protected using SSL, ensure the certificate is actually valid! This may sound obvious, but it is very easy to overlook.

 

Are you using the latest version of jQuery and other frameworks and libraries?

Whether your serving jQuery from your web site, or referring to a hosted version on a CDN, always ensure you keep your references up to date.

A great place to start is to check the current versions on the jQuery download page.

 

Check Microsoft's current version on the CDN

As with jQuery above, Microsoft's hosted Skype Web SDK is also updated from time to time.

As at the date of this post, the current version is 1.1.23


<script src="https://swx.cdn.skype.com/shared/v/1.1.23.0/SkypeBootstrap.min.js"></script>

The version of the script may change from time to time, so it’s always best to check http://developer.skype.com regularly.

Interestingly, updated versions are also available (up to 1.1.25.0), but not publicly shown on the Microsoft web site.

 

The Internet Never Stops...

All the versions of the SDK and 3rd party frameworks and libraries listed in this blog and even on Microsoft's sites can become out of date quickly. Always check from time to time using the links above to make sure you're using the most recent versions.

Tags

Skype, Skype Web SDK, UCJA, JLync, UCWA, CodeProject, Dashboard
Tips and techniques for troubleshooting the Skype Web SDK. If you're having trouble getting the SDK to function, here are a few ideas to check and try.
 
 

Popular Articles

What is Kutamo?
Kilimanjaro 2015
Exploring Lync and IoT
Exchange 2013 in 60 minutes
Monitoring Lync with MRTG
Lync UCWA Tutorial - Introduction
Tutorial Parts 1 | 2 | 3 | 4 | 5

Recent Articles

Australian Postal Codes
Skype Web SDK
Using the Skype Web SDK from any language or framework
Building a Skype for Business Auto Responder using the Skype Web SDK
Exporting Lync or Skype for Business Contacts with the Skype Web SDK

Favourite Links

Kutamo
Telco Together Foundation
Cloud on Kilimanjaro