Customize Consent Preferences

We use cookies to help you navigate efficiently and perform certain functions. You will find detailed information about all cookies under each consent category below.

The cookies that are categorized as "Necessary" are stored on your browser as they are essential for enabling the basic functionalities of the site. ... 

Always Active

Necessary cookies are required to enable the basic features of this site, such as providing secure log-in or adjusting your consent preferences. These cookies do not store any personally identifiable data.

No cookies to display.

Functional cookies help perform certain functionalities like sharing the content of the website on social media platforms, collecting feedback, and other third-party features.

No cookies to display.

Analytical cookies are used to understand how visitors interact with the website. These cookies help provide information on metrics such as the number of visitors, bounce rate, traffic source, etc.

No cookies to display.

Performance cookies are used to understand and analyze the key performance indexes of the website which helps in delivering a better user experience for the visitors.

No cookies to display.

Advertisement cookies are used to provide visitors with customized advertisements based on the pages you visited previously and to analyze the effectiveness of the ad campaigns.

No cookies to display.

Pages Menu
TwitterRssFacebook

Posted by on Mar 17, 2015 in Development, Skype for Business® (Lync®)

Introducing Skype for Business Web SDK

Introducing Skype for Business Web SDK

As part of the Office365 Summit we’re getting lots of great information about the upcoming Skype for Business release.

In a video – Opportunities with the Skype Developer Platform – Daniel Jonathan Valik, Sr. Technical Product Marketing Manager and Srividhya Chandrasekaran, Sr. Program Manager, talk through what we can expect to see in the new Skype Developer Platform.

The key functional requirements which the new Web SDK will deliver are:

  • Rich Media Support
    • Chat
    • Voice
    • Video
    • Sharing
  • Cross-Platform Client Extensibility
    • Works on Desktop
    • Works on Web
    • Works on Mobile
  • Flexible Server SDK and Services Framework
  • Cross-network Connectivity – it doesn’t matter where you connect, the process of connecting to different protocols is abstracted
    • Skype / Skype for Business
    • IP / PSTN
  • Support for Industry Standards

Call via Skype

A new feature which I’d not seen before is the Skype Button page, which lets you choose different options and generate HTML code to add to your website, for calling or chatting via Skype. This is great, because for many people this is just about the right level of integration to allow their customers to contact them by Skype:

SkypeCallButton

REST-like

The intent of the Skype Development Platform is to offer a RESTful API which will work on all platforms. The new API will conform to the following principles:

  • Internet Scale – runs on the same scale that powers the Internet
  • Platform Neutral – works for iOS, Windows Android, Emulated etc.
  • Language Neutral – works with JavaScript, C#, Objective C etc.
  • Topology Neutral – works for hybrid topologies, on-premise only, online only
  • Architecture Neutral – provides an abstraction of the underlying architecture allowing for convergence of Skype and Lync over time
  • Versioned – we can expect new features to be added over time
  • Optimized for mobile – efficient on the wire and in processing to reduce CPU and network requirements while boosting battery life

This API stack is the same stack which is being used to power the Skype for Business 1st party applications (the clients, Web Access etc) – doing this shows the commitment from the team to ensuring the API stays up to date and relevant over time.

In the Box: JavaScript API & HTML Common Controls

What the team are doing with the Skype Web SDK is creating a set of client wrappers which abstract the UCWA Command and Event channels, making it much easier to develop applications.  The SDK will consist of:

  • Common HTML UX Controls
  • A JavaScript API, which talks to the UCWA Object Model

In this slide (taken from around the 26 min mark) you can see how this will work. You will write your webpage (in green at the top) but leveraging UX HTML controls from the Skype Web SDK, and JavaScript libraries which then communication RESTfully to the Skype (or Skype for Business) network.

SkypeDeveloperPlatformForWeb

Capabilities

The new Skype Web SDK will give developers the following capabilities:

  • IM and Presence
  • Search and Contact information
  • P2P and Conferencing communication capabilities
  • Audio/Video support including Multiview video support
  • Passing the application context to the server
  • and more, as yet unannounced, functionality

Backward/Cloud Compatabilities

Not everything will work everywhere initially. This is the compatibility matrix at launch, you can see some combinations are still planned for the future:

DevelopmentAPIsSupportedInS4B

What’s worth mentioning here is that UCMA is still not supported in Skype for Business Online, and at launch the Skype Web SDK will not be supported Online. Also, only Basic support for the Web SDK will be available in Lync 2013. I don’t know what that means exactly, but when I find out I’ll let you know!

“at launch, the new Skype for Web API will not work with Skype for Business Online”

I’ll say it again, because it’s going to come up in a lot of conversations in the next few months: at launch, the new Skype for Web API will not work with Skype for Business Online. This lack of support is a shame. I’m hoping that it’s just something which couldn’t get worked out in time for the April launch date, and that it just requires an update to the Online codebase which has to be scheduled in, tested and rolled out. Regardless, there will a lot of companies who have moved from on-premises to Online (in no small part because Microsoft have been pushing customers to the cloud) and who will want to make use of the new SDK everyone is talking about. UCWA is still not supported on Lync Online, which is a pain for some but perhaps not a major roadblock. However, Microsoft are pushing this Web-based approach of communication much more aggressively now, Lync Server SDK is a big part of that, and so they really need to ensure that all their customers can use it equally.

Future – UCMA Services SDK

We saw a glimpse of what’s planned for the future in the form of a Services SDK, which will be a C# object model, UCMA friendly SDK, which will only work Online. This slide shows how that will fit into the rest of the Skype Developer Platform:

SkypeForWebFuture

Skype for Web SDK Object Model

Here’s a sneak-peak at the Skype Web SDK object model, which shows the sort of data you’ll be able to access, and the relationships between different objects. Of particular note within the Conversations object are audioService and videoService – I look forward to playing with those!

SkypeWebSDKObjectModel

Written by Tom Morgan

Tom is a Microsoft Teams Platform developer and Microsoft MVP who has been blogging for over a decade. Find out more.
Buy the book: Building and Developing Apps & Bots for Microsoft Teams. Now available to purchase online with free updates.

3 Comments

  1. What is the best way to communicate with the Web SDK on android?

  2. When will this be available? We are trying to integrate the Skype chat, presence and call functionality in our application

  3. When will this be available? We are trying to integrate the Skype chat, presence and call functionality in our application

Trackbacks/Pingbacks

  1. Connect Your Service to Conversations: Skype for Business Trusted Application SDK | The thoughtstuff Blog - […] already knew that Microsoft was working on a “Services SDK” from a talk at the Office365 Summit in May…

Post a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Share to Microsoft Teams