Bridge Communications

Saturday, April 1, 2017

Skype Web SDK - Part I

The Skype Web SDK has been out for a while, but with the changes coming to allow a plugin-less audio / video experience with webrtc it is now a good time to revisit the API.

What is the Skype Web SDK?

The Skype Developer Platform for Web ("Skype Web SDK") is a set of JavaScript Web APIs and HTML controls that enable you to build web experiences that seamlessly integrate a wide variety of real-time collaboration models leveraging Skype for Business services and the larger Skype network. It provides support for multiple core collaboration services like presence, chat, audio, and video, enabling web experiences across a broad spectrum of users, platforms, and devices.



What are the Capabilities?

The Skype Web SDK has the following capabilities;

1.  Presence - The ability to see the presence of other users.
2.  Local User - The ability to manage things for yourself.  (Your note, presence etc)
3.  Conversations - The ability to communicate with others (IM, Audio, Video)
4.  Groups - The ability to view and manage S4B Groups
5.  Devices - The ability to select audio and video devices to use.
6.  Events - Triggered events for presence changes, and conversations.
7.  Persons - The person object lets you view details about another user (Contact Card Info)


Today's Topic: Presence

A user's presence is a collection of information about the user's availability, their current activity, and their personal note. Use presence information to help users decide whether and how they should person other users. To increase effectiveness of user communication, combine presence information with other business-specific information about an individual, like job title and team membership.

Availability

The easiest way to understand what this is, is to use the pull down on any S4B client, and you can see the list of availabilities.  They are online, busy, do not disturb, be right back, off work, and appear away.

Personal Note

The personal note is the content of the note box for the signed-in user. The signed-in user can add a personal note or greeting that people can see alongside their presence information. The note can include up to 500 characters, and the user can change the note as often as they like.

Activity

Activity describes what the user is currently doing that effects their availability. For example, a user's availability may be busy and their activity might be "in a meeting." A user's availability can be free and their activity can be "Available". Activity strings can be customized.

User Presence

In real-time communications, user presence is information that describes a user's availability status. For example, Skype for Business displays a list of your persons and status indicating if a person is available, busy, inactive, away, or offline. User presence is the availability and willingness of a person to join a conversation. For example, you may leave a personal note to inform others of your current traveling itinerary and to provide them with a list of alternative communications means to reach you in case of emergency. Use presence to see if you can start a Skype Web SDK conversation with a user or reach the user by an alternate means. When a person's status shows available, you know that the person is likely to answer your IM or voice call. A busy or inactive person is less likely to respond to your invitation. An away or offline status suggests that you should send the person an email message instead of IM text. The Skype Web SDK enhances this basic presence by giving you access to the following kinds of person information:


User name
Job title
Email address
Work phone number
Company name
Department name
Photo
Location
Personal note or out-of-office note published by a Skype for Business user

A user is encapsulated by a read-only Person object. The presence information in the previous list is available as a set of properties of the Person object.

Presence Subscription

A presence subscription on a Person object is a request on server to provide continual updates to a user's presence. A presence update generates an event on the associated Person object whenever a user changes a presence value such as availability or personal note. A unique presence subscription is created for each person that you display in your UI. You can cancel a presence subscription for a given person at any time. Normally presence subscriptions are cancelled when a subscribed person is no longer shown on your UI. Note that cancelling unnecessary presence subscriptions can improve application performance.

Getting Started

To use the controls in your webpage you need to add a couple of script references.


<script src="//ajax.aspnetcdn.com/ajax/jQuery/jquery-1.10.2.min.js"></script>
<script src="//swx.cdn.skype.com/shared/v/1.2.15/SkypeBootstrap.min.js"></script>

Signing In

In order to use this sdk we have to sign in, so let's look at the javascript code to do that.



Next week we'll continue to look at some of the other features available.

Doug Routledge, C# Lync, Skype for Business, SQL, Exchange, UC, 
Full Stack Developer  BridgeOC Bridge Operator Console
Twitter - @droutledge @ndbridge








No comments:

Post a Comment