

The Speech Server 2007 components were their own piece, as was the Communicator (client) software development kit (SDK) for custom clients. OCS 2007 shipped, and for the first time, there were a couple of different APIs for it. In actual fact, it took a while for those efforts to come up with much that was interesting. Then, in mid-2006, we got a call from the Speech Server product group that changed everything: the Speech Server 2007 release (which by this point had been pushed back a couple of times) wasn’t going to happen, and instead, the tech was going to be rolled into OCS 2007. So, at the time, this meant we had two parallel Microsoft initiatives: one with the Speech Server product team, who had some great development tools and APIs that we could use for building advanced speech IVRs for ice and one with the OCS product team, which was building this new collaboration product into something very interesting that we could use for chat, and possibly voice and video as well. Still, we used our experiments with SIP interop to show the product groups what was possible and to push for more official interoperability support with platforms like ice. To be fair, it also wasn’t officially supported. Microsoft used the SIP Requests for Comments (RFCs) more as a suggested starting point than a rule at that point, so interoperating directly with OCS was challenging. This was something that was only possible because we had a team that knew SIP backwards and forwards at this point, and because we were using a pretty flexible SIP stack where we could manipulate the messaging at will. Working with early versions of OCS 2007, we actually managed to get voice calls from OCS into ice, and started trying to add in support for things like video, screen share, and IM to voice elevation. We already had our IM implementation, but the prospect of being able to leverage OCS for voice was interesting to us. Evidently, the LCS product was being rolled into the wider Office server product line, and the limited voice capabilities of OCS (you could make peer-to-peer calls, but it wasn’t very widely used) were being expanded on.

This worked surprisingly well, and we rolled IM support into ice 6.Īlong the way with this process, we started getting invited to preview events for what was being promoted as Office Communications Server (OCS), the next evolution of LCS.

Since there were no documented Application Programming Interfaces (APIs) at the time, our solution was to use Wireshark to read the message capture of an LCS IM session and reverse engineer the whole protocol. We wondered if there was a way to adapt our chat protocol that we’d built (for a product called iceChat) to use LCS IM so that ice could handle instant messaging conversations for customers doing things like internal help desk. This is the same protocol we’d been implementing for use in ice 6.0 since it’s the standard protocol for Voice over Internet Protocol (IP) signaling.

What was interesting about LCS though, was that it used Session Initiation Protocol (SIP) for instant messaging. The story goes that Microsoft discovered that customers were using MSN Messenger (or ICQ, AIM, or Yahoo messenger) for chat inside organizations (including inside Microsoft), so they decided to come up with an IT-manageable version of MSN messenger, called Live Communications Server. At the time, LCS 2003 had been released, and LCS 2005 had just come out into Microsoft Developer Network (MSDN), billed as an enterprise instant messaging (IM) system. Parallel to this, in early 2006, we started looking into a product called Live Communications Server (LCS) 2005. We ended up working closely with those folks in the following couple of years, including an in-person ice/Speech Server demo that involved shipping physical servers down ahead of time (it was 2006 at that point, and when you needed telephony cards to run ice, you didn’t have many options).īringing Instant Messaging Into the IT Space At that event, we got to spend four days with the product group and learn all about the plans for what was supposed to become Speech Server 2007. We got involved with MSS because we were working on a project to more closely integrate ice with third-party Interactive Voice Response (IVR) systems. ComputerTalk had already started building a Microsoft practice around custom speech applications to complement our contact center business. On one such occasion, about 15 years ago, there was a Technology Adoption Program (TAP) event for a new version of a product called Microsoft Speech Server (MSS). Early History with Microsoft Speech ServerĬomputerTalk has been visiting and working with the Microsoft Redmond Campus for years.
