Testing UCMA Applications

Testing UCMA Applications

One of the first things you notice when you start developing UCMA is the lack of an integrated SIP Phone for testing your applications. Speech Server made it trivial to test out your application, simply press F5 and everything was ready to go. UCMA lacks the integrated environment so you’ll need a software phone of some kind to try out your app.

I have been using one called PhonerLite for years. It is freely downloadable from http://www.phonerlite.de/index_en.htm and works like a charm. The key reasons I like it is that it supports UDP/TCP/TLS is extremely simply to use and has a build-in debugger that shows you the SIP messaging (something that is extremely useful when your application simply doesn’t answer your call).

I would recommend going with the beta version (currently 1.85) at http://www.phoner.de/PhonerLiteBeta.zip. Unzip it someplace and run the PhonerLite executable.

image
Select “manual configuration”

image
Give yourself a user name (I always use “1234”)

image
image
Take the defaults for the next two screens

image
Select the “Configuration” tab and then the “Network” sub-tab

image
Change your Port to something unused and your connection type to TCP

image
Enter the SIP address for your app in the “Destination name” field and click the green phone icon and you’re off.

Workflow Differences in UCMA 3.0

Workflow Differences in UCMA 3.0

The following is a list of activities from Speech Server 2007 and UCMA 3.0. UCMA brings with it a number of new activities (due mostly to UCMA handling both Speech and Instant Messaging) but it also drops a number of activities we’ve become used to having in Speech Server.

Speech Server 2007

UCMA 3.0

AnswerCall

AcceptCall

BlindTransfer

BlindTransfer

Command

SpeechCommand

ConsecutiveNoInputsSpeechEvent

ConsecutiveNoInputsSpeechEvent

ConsecutiveNoRecognitionsSpeechEvent

ConsecutiveNoRecognitionsSpeechEvent

ConsecutiveSilencesSpeechEvent

ConsecutiveSilencesSpeechEvent

DeclineCall

DetectAnsweringMachine

DisconnectCall

DisconnectCall

FormFillingDialog

GetAndConfirm

GoTo

GoTo

HelpCommand

SpeechHelpCommand

InvokeWorkflow

MakeCall

OutboundCall

Menu

NavigableList

QuestionAnswer

SpeechQuestionAnswer

RecordAudio

RecordMessage

RepeatCommand

SpeechRepeatCommand

SaltInterpreter

SetTaskStatus

SpeechSequence

CommunicationsSquence

Statement

SpeechStatement

Validator

VoiceXmlInterpreter

CallDisconnectedEvent

CallOnHoldEvent

CallOnHoldTimeoutEvent

CallRetrievedEvent

GetPresence

InstantMessagingStatement

InstantMessagingQuestioNAnswer

InstantMessagingCommand

InstantMessagingCommand

InstantMessagingHelpCommand

ConsecutiveNoInputsInstantMessageEvent

ConsecutiveSilencesInstantMessagingEvent

ConsecutiveNoRecognitionsInstantMessagingEvent

In the coming weeks I’ll be covering some workarounds to the missing activities.

New Version, New Name

New Version, New Name

The press releases went up a few minutes ago so I can finally share this.

The overly long winded name Microsoft Office Communications Server is no more. The entire product line (including Office Communicator) has been rebranded as “Lync”.

The new product line will include:

  • Lync 2010 (replaces Communicator)
  • Lync Server 2010 (replaces Office Communications Server)
  • Lync Online (replaces Communications Online)
  • Lync Web App (replaces Web Communicator)

You can read the full press release here: http://www.microsoft.com/Presspass/press/2010/sep10/LyncPR.mspx

UPDATE: The UC Team has released some more details on their blog http://blogs.technet.com/b/uc/archive/2010/09/13/introducing-microsoft-lync-the-next-ocs.aspx

Google Voice

Somewhat quietly Google opened up Google Voice to the public last week.

If you haven’t had the chance to try Google Voice, I suggest taking a look. For people like me, with multiple phone numbers and locations, its a killer app.

With Google Voice you get a single phone number that simultaneously rings all your phones (first one to answer wins) and you can quickly transfer calls between those phones.  I’ve had conference calls that started in my office that I seamlessly transferred to my cell and then to my home phone without anyone noticing a thing.

You can also place free outbound calls using the service for free in the US (no idea about other locations). I use this feature to dramatically reduce my home telephone bill, I dropped all local and long distance service from my land-line and simply use my browser to initiate all calls. And thanks to syncing my Outlook contacts with Google this is extremely simple to do.

Outbound IVR types should also be ready for Google Voice. Google seems to be accomplishing the simultaneous ring and transfer functionality by using a conference bridge as the core technology. While this is a pretty cool idea, it does present a problem for those of us attempting to detect answering machines. Essentially Google has answered the call long before the remote caller has answered the phone. Google Voice needs to be treated similarly to recipients who play music instead of standard ringing.