Is it possible to develop an add-in for Skype for Business (formerly MS Lync)? - vsto

Thanks for looking.
I need to develop an add-in for the Skype for Business UI similar to the way in which one can develop an add-in for Excel or Outlook. Is this possible?
I have found documentation and several tutorials for using the Skype APIs to integrate Skype for Business with other applications, but I can't find much with regards to building an add-in for Skype for Business itself.
I would like to be able to do things like add custom menu items to the Skype for Business UI, Integrate a custom conversation window extension, capture and use data from the chat window, contacts list, etc. To be clear, I am looking to do all of this above board with the user's approval.
Any answers, advice, links, etc. are appreciated.

There is not really an add-in system for Skype For Business. In the Lync days, the solution to offer additional content was via Conversation Window Extensions or CWEs and I believe they still function in some for for Skype for Business, but the technology itself is not updating at this point.
Your desire for greater customization of the client software lends itself to implementing a custom client/functionality using the Unified Communications Web API - a RESTful Web API, but you might find yourself limited in that Microsoft is providing a JavaScript SDK and tools for Android/iOS with an App SDK. If UCWA is the route you go there is quite a bit of documentation on MSDN for implementing the basic tasks.

Related

How to register an application?

Using the Outlook REST API, I want to make a browser extension (To-Do). I need graph api and the REST Task API. I make this application only for myself (maybe I will add it on github). Tell me, should I register an account as a commercial developer? Do I need to confirm for this application? Is it free? Where can I register the application? thank
I suggest you go through the Quick Start documentation, which will help you pick the appropriate platform and walk you through registering your Graph application. Also join the Office 365 Developer Program which will give you a free Office 365 developer subscription that you can use.

How to create Add-Ins for Skype

I have requirement to create an Add-In for Skype. We found that the Skype Add-Ins is in Developer Preview. Skype Add-In
How can i create an app for Skype and how can i integrate it with Skype as Add-In? Anyone knows about the Skype Add-Ins? Any links to create Apps/Add-Ins for Skype?
Is it possible to develop VSTO add-ins for Skype? There are multiple articles on the internet that talk about creating Add-ins for other office products like Outlook, Word, Excel etc., but none for Skype. Could someone point me to some help content for developing add-ins for Skype?
Unfortunately, Microsoft has been using the term add-in very loosely throughout its Office product line to describe very different technologies. In the link you provide, they are referring and alluding to a few different technologies:
Skype Developer Platform & Desktop APIs
The Skype Developer Platform includes APIs for integrating Skype with websites and, via its Desktop API, desktop applications. As of this writing the Desktop APIs still refer to Skype as Lync -- Skype's previous name. These APIs are for the type of integrations typically associated with VSTO and Office.js in other Office applications. The SDKs can be found here:
Skype Developer Platform SDKs
Skype for Business Bot Framework
Skype can be integrated with the Microsoft Bot Framework to create automation and guided experiences.
Skype for Business Bot Framework Introduction
Azure Bot Service Documentation
Skype App SDK
Lastly, there are also the SDKs to use Skype in Android and/or IOS apps.
Skype App SDK Getting Started Page

Skype for Business WebSDK for On premises environment

We are using Skype for Business 2015 in our Organization (On-premises environment).
We are trying to integrate Skype web features to the Intranet Web sites using Skype for business WebSDK. Internet connectivity/access are not allowed in my environment.
I tried downloading and running sample mentioned in below link.
https://msdn.microsoft.com/en-us/skype/websdk/docs/gettingstarted#sectionSection4
While evaluating I figured out that SkypeBootStrap.min.js is looking for sdk.js hosted in (https://latest-swx.cdn.skype.com/jLync/master_0.4.514/sdk.js)
Can you please suggest any alternate approach for running SkypeWebSDK samples?
My ultimate goal is to develop a reusable client-side component that can be integrated into any of our intranet web applications within our firm which provides all of Skype communication options (including audio, video and screen sharing) through a simple client-side API. What is the best way to achieve this?

Skype for business using ucwa in uwp applications

i am trying to use ucwa apis to get the users presence status. but I am getting issue as failed to get application resource
You might want to look at this discussion which discusses how to perform UCWA Autodiscovery for Skype for Business Online and get the application URL.
Presence has recently become available in preview for UCWA-powered SFB Online apps.
I've created a C#-based example that you can use as a basis in your UWP app, which includes changing presence for a user.

Should I use UCWA or UCMA or another API for a Skype for Business Server Application?

There seems to be a lot of different SDKs / APIs around Skype for Business. I'm having a tough time deciphering which one would be appropriate for a server side Bot like application that could communicate domain specific information to the users within the organization. For example we'd like to be able to deliver task(s) via messages and perform presence based task assignment. This seems to be fairly low hanging fruit but where's the REST endpoints and documentation to make this happen. Assuming for example I wanted to create a little console application that could facilitate this what API would you recommend?
Here are the main differences between UCMA and UCWA:
UCMA is a .NET SDK that provides rich control over a Skype for Business server deployment. It enables applications to automatically route calls and messages, provide automatic responses (IVR or chat bots), record conversations etc. It can be used in a number of scenarios such as a 'contact center' application that distributes incoming calls to an available agent with the right skillset. UCMA applications are managed by running them on application servers that are activated as part of the Skype for Business server deployment. As such, UCMA is not available for Skype for Business Online (Office 365).
UCWA is a RESTful Web API that acts on behalf of a single Skype for Business user. It enables applications to send and receive messages for that user, read presence for their contacts, etc. Typically it is used for interactive "line of business" applications that want to embed Skype for Business messaging/presence. It is also possible to create a 'technical account', that doesn't correspond to a real person, and use UCWA in 'headless' server applications but this approach currently has authentication and scalability limitations. UCWA applications have no deployment constraints since UCWA is a regular RESTful Web API. It is available for both Skype for Business Server (get started) and for Skype for Business Online (get started). The latter has slightly fewer capabilities right now: - for example, messages can be sent but not received - though this should change soon.
I think both UCMA and UCWA can be used. However, considering you want a server application, UCWA seems fit the case. Here is the detail of SDK, you can find code samples at there:
https://msdn.microsoft.com/en-us/library/office/mt650889(v=office.16).aspx