New resources section on CodeLync

Well, it’s been a while, mostly due to our newly spawned process (to purloin Jeff Atwood’s phrase) taking up more CPU cycles than expected. So this is just a quick post to point out the new “Resources” link in the menu bar along the top.

It will be growing over time – if you have content you’d like linked from this section, then please email me, or leave a comment below.

Developing screen pop applications

In my last post I introduced SuperToast and promised to discuss some of the internal workings. I’ve decided to broaden that out a bit, and discuss screen pops in general, and how they can be implemented using the Lync 2010 SDK.

For those not in the know, a screen pop is a notification window that appears in response to a call or message. The screen pop will often show details about the caller that are not available in the Lync client – this data is often pulled from a separate source, such as a CRM system. Continue reading

Missed IMs? SuperToast to the rescue!

I’ve recently been busy on an interesting little side project that addresses a concern I hear time and time again. On receiving an instant message, Lync will show a popup “toast” message, play a sound, and flash the taskbar icon:


If you’re sitting at your desk, staring at the screen, this is usually enough to get your attention. Otherwise, you can return to your screen and the only indication of a new instant message is an orange icon in the taskbar – easily missed, especially if you happen to be returning from a pub lunch. Continue reading

Getting Started – An Overview of Lync’s APIs

By far my most popular Lync-related answer on Stack Overflow has been this one, where I give an overview of the functionality provided by some of the Lync APIs. I’m taking this to mean that there are a lot of developers out there who want to get started with Lync development, but are finding it difficult to know where to start – probably partly due to the number of APIs and extensibility points that are available. Continue reading

A Metro style interface to Lync – Part 5

Creating the Metro style app

In the previous post, we defined our WCF service interface and fleshed it out with the code necessary to interact with the Lync client.

Now it’s time to look at the Metro style application that will use the WCF service to display Lync contacts.

The developer preview of Visual Studio 11 includes a number of templates for building Metro style apps. Creating and running a new application using the “Grid Application” template gives us a skeleton application that looks like this: Continue reading

A Metro style interface to Lync – Part 4

Creating the WCF Service

As I discovered in my previous post, we can’t directly use the Lync API from a Metro style app, so to create a Metro style UI for Lync we’re going to build a WCF wrapper around the Lync API.

The requirements for the app are to get a list of the users Lync contacts, and to keep their presence updated correctly. To achieve this, the WCF Service needs a simple interface: Continue reading

A Metro style interface to Lync – Part 3

Calling the Lync API from a Metro style app

Great – we can run an application that uses Lync in UI Suppression mode on Windows 8. This means that building a Metro style UI for Lync should be a breeze. I’ve decided to keep it simple – my (contrived) requirements are to be able to list my contacts, and see their presence in real-time. That’s it. For now, anyway.

The code to do this in Lync is straightforward, so it should just be a simple case of creating a Metro style application using the new Visual Studio template, adding the necessary references to the Lync API assemblies, and get coding, right? Well, no actually. Continue reading

A Metro style interface to Lync – Part 2

Testing a custom Lync application on the Developer Preview tablet

So the standard Lync client works well on the tablet, but what about custom code? I happen to have a custom Lync application we’ve written for one of our customers, so I’m going to give that a try – it’s a WPF application that uses Lync in UI Suppression mode, so it’s intended as a replacement for the Lync client.

The application enables users to make video calls to interpreters that match a particular gender, language and skill. Continue reading