Thursday, November 12, 2009

Poor Man's Click-to-call with Cisco and Lotus Notes 8.x

In my last post I said you need at least Sametime Standard to add unified communications to your Lotus Notes environment.  That's true, if you are looking to leverage the telephony integration solutions provided by the telephony vendors and even if you want to use Sametime Unified Telephony.

It's not necessarily the case if you'd like to "homebrew" your own unified communications capability.

I had been planning to blog next about the UC plug-ins available from Cisco, but a colleague recently asked me for a refresher on how we created our own click-to-call widget, so seemed like a good time to blog about it.  Cisco includes a web dialer application that is part of its Call Manager product which allows you to initiate an outbound phone call from your desk phone by entering a phone number into a web-based form (I've been told all the major telephony providers include similar functionality with their PBX products, but I haven't verified this with any).  With the widget capability in Notes 8, it is relatively simple to create your own widget to wire a live text recognizer in Lotus Notes to the Cisco WebDialer.  The net effect is that every instance of a phone number that Lotus Notes recognizes (in an email, contact, calendar entry, customer app, etc), becomes a hot link that you can simply click to initiate a phone call.  Just received an email from someone outside your company and want to call them?  Just click on the phone number in their email signature.  In your Notes contacts looking at a personal contact?  Just click the phone number you want to call them at.  You get the idea...

It's pretty cool, so why do I refer to it as a "Poor Man's" solution.  A few reasons:
  1. You don't need a Sametime license since your not tapping into the telephony integration hooks from Sametime to make this work.
  2. It's home-grown, and like any custom solution, you're going to have to support it yourself. 
  3. When you create the widget (at least following the instructions below), you cannot simply share it with another user like other Notes widgets and have it work.  Each user has to create the widget manually.  Now, I'm sure someone smarter than I or who has more time to research this could come up with a way to create a generic widget that could be pushed out to all users.  If you're that person, please share. :-D
 Creating the Poor Man's Click-to-call Widget
1. First, find out the URL for your Cisco Call Manager server.
2. Next, open your Notes client, and click on the "Getting Started with Widgets..." button.

     3. Select "Web Page" from the set of options.  The widget will be using the form on the WebDialer web page.

    4.  Choose "Web page by URL:" and enter the URL of your Cisco WebDialer.  It should resemble the URL format in the image.

    5.  Choose "From a form on this web page..."  There is an option for "Authentication Required".  Now, the Cisco WebDialer form does require authentication, but I haven't found a way to use this option and correctly setup the widget.  Again, I welcome thoughts from others!

    6. If your Cisco WebDialer page is protected by a self-signed SSL certificate, you will see a warning like the one pictured below.  This can be a pain in the butt.  In my case, I had to make sure I had the IP address of the Call Manager in my hosts file, and also imported the certificate into my browser.  Otherwise you'll get this notification every time you use the widget.

      7.  Next enter your ID and password into the Cisco WebDialer and click the 'Submit' button on the web page.  The web page displayed in the wizard will change and show the WebDialer application.

      8.  Now choose "Form 1".  Make sure the calling device specified is the phone you'll be calling from.  Then click 'Next'.

      9. The widget name will be the action that will appear in the Live Text menu.  Click on the 'Wire as an action' button and make sure 'destination' appears as the value in the drop down.

      10.  Click on the Advanced tab.  Check the box next to "permDeviceSelect".  The first time I made this widget, I don't recall having to do this.  But without doing this, I found that it would randomly select a dialing device--not exactly what you want!  Click the 'Next' button.

      11.  On this dialog box, choose 'Recognized content' and then select 'Phone Number' from the drop down.  You'll also want to choose 'New Window' for where users will see the results.  Don't choose 'Floating Window'--I've found that will cause the widget to launch and disappear without initiating the phone call.  Click 'Next' to proceed, and then 'Finish' to complete the widget.

      That's it!  As long as you have your Live Text recognizers turned on, you'll now be able to click-to-call from Notes.



      1. this is awesome! We have to DIAL 9 first to get our and 1 as well how do you patch those in the widget?

      2. @Anonymous -- This has to be configured on the Cisco Web Dialer side. Go to that application outside of notes and see if it applies the required digits to a phone number you enter on the web form. If it does not, then you'll need to work with your Call Manager admin to appropriately configure the web dialer. We have dial rules as well, but I did not have to do anything in the widget to apply them.

      3. Hi, this is perfect tool, thanks.
        Unfortunately I'm not very familiar with Lotus, so I don't know why it doesn't recognize phone numbers from any signature.
        Do you have a tip if it's problem of webdialer, or widget configuration please?

      4. Very cool stuff - i tried it and it works fine.
        Thank you! Jens

      5. It is possible to configure the widget if the dialer on HTTPS?

      6. Has anyone done this with 7-digit dialing (no area code)?