Welcome to the Tech Lounge

Welcome to the Tech Lounge! This is a space for some of us technical folks at Interactive Intelligence to post about various technical topics that are near and dear to us.

My name is Aaron Lerch and I’m a Lead Software Engineer working on several of the client applications that many end-users of our system interact with. I’m also just one of the many people who will be posting here about things we’re working on and interested in, the stuff we are passionate about. I got lucky enough to be able to write the very first post.

What can you expect from this blog?

Honestly, I’m not entirely sure. I think it’s going to grow and evolve over time as any new effort does, but always for the better, and hopefully always with a good dash of humor. What I do know is that you can expect high quality technical content about the Interaction Center platform. You can expect discussions about industry trends and technologies, from a technical perspective, by people who know what they’re talking about. I have never worked with a smarter bunch of people than at Interactive Intelligence, and I’m very proud to work here.

I can also tell you what this blog won’t be. It won’t be a place where you will get marketing-level versions of technical content (apologies to all my marketing friends) or some hyped up rose-colored-glasses sales-y version of some barely useful information (apologies to all my sales friends). As our about page says, it’s a “no-sell zone”.

Let’s get started!

I want to show you something I think is very exciting. We’re going to extend the Interaction Client by writing a custom “add-in”. This will require you get a bit dirty with some code, so there are some prerequisites:

  1. The 3.0 Interaction Client should be installed locally. Use the latest SU version if possible.
  2. Download Visual Studio C# Express if you don’t already have Visual Studio. You can use VB.NET if you prefer, however my examples will be using C#.

I’m not going to explain what all of this stuff does right now, that will all come in future posts.

First, open Visual Studio and create a new “Class Library” project and name it something fun. Like “ExampleAddIn”. That’s a fun name.

Make sure to specify .NET Framework version 2.0, 3.0, or 3.5 (and NOT 4.0!)


Second, add a reference to two files:

  1. “ININ.InteractionClient.AddIn.dll” which is found in the Interaction Client install directory (typically something like “c:program filesinteractive intelligenceicuserapps”), and
  2. System.Windows.Forms, which is found in the .NET Framework.


Third, open the “AssemblyInfo.cs” file under the Properties node and add the following lines:

(the last “using” line plus the “AddInVersion” line)

Fourth, the project should have been created with a default class called “Class1”. Modify that file as shown below:


Fifth, build your Visual Studio project! Then create a subdirectory in the Interaction Client install directory called “AddIns” (uppercase or lowercase isn’t important), and copy your newly created add-in file into that directory. Note: only copy your “ExampleAddIn” files, nothing else from the output directory is needed.

Get your add-in files here:


And copy them here:


Last, run the Interaction Client! If everything went according to plan, you should see the message box pop up indicating that our custom add-in was loaded and is ready to go.


That’s six steps to get an add-in working, and I didn’t explain any of the why behind the what. That will come in future posts, but for now, hopefully this gives you a glimpse of the kinds of things we’re going to be talking about here, and exploring some possibilities together.

Next up

There’s a number of people posting here about a variety of topics, but next up from me will be a series of posts diving deeper into extending the Interaction Client with custom add-ins and some more examples of what you can do with this new capability.

Until then, allow me to christen this tech blog!

*swings bottle of champagne towards computer*

(*cleans up mess and replaces motherboard that was fried from contact with a liquid*)