Home » 2008

Archive for 2008

Voxeo Guided Tour

Thursday, December 11th, 2008

Never heard about Voxeo? Don’t know what they do? Never visited their Web site or looked at their offerings?

Join me for a guided Webtour to learn more about Voxeo.

We want to start our tour at their home www.voxeo.com.  Whenever you get lost during our journey I will pick you up there.

Arrived at voxeo.com? Perfect. To your left, you can see their core offerings:

Let’s visit those areas now. For those of you that may be interested only in specific areas you may use these shortcuts: Free hosted IVR, free IVR download, free SIP development, IVR platform, SIP platform, voice applications, Voxeo Blogs, Evolution, Contact

For all others, we will drive on to IVR platforms and hosting: Voxeo provides a proven, standards-based IVR software platform. Here are some facts:

  • 100% Standards based IVR
  • Supports W3C VoiceXML 2.1
  • Supports W3C CCXML 1.0
  • Supports W3C SRGS 1.0
  • Supports W3C SSML 1.0
  • Supports CallXML 3.0
  • Supports touch-tone and voice entry
  • Supports voice recognition and TTS
  • Supports T1, E1, ISDN, or VOIP/SIP
  • Supports voice authentication

The platform is available as follows:

  • Prophecy IVR Hosting - hosted IVR services from four fault-resilient hosting facilities.
  • Prophecy IVR Platform - IVR software infrastructure for your facilities.
  • Prophecy IVR Server - turnkey IVR servers (hardware&software) for your facilities.
  • You can try Voxeo’s IVR solutions at no cost, via the

    Let’s leave the IVR section and proceed to the VoIP platforms and services. The SIP Application Server is built around the world’s most proven Call Control (CCXML) engine.  For those of you new to call control, CTI and CCXML, let me take a short excursion.

    CCXML is the industry standard for call control application development, created by the W3C.

    CCXML can be used to create call control applications, including: Back to Back SIP User Agents (B2BUA), SIP redirect servers, SIP load balancers, Virtual or “hosted” IP PBX and call-center / ACD solutions, click-to-dial SIP call launchers, find-me-follow-me applications, and more.

    When combined with the Prophecy SIP Media Server, CCXML can also be used to deliver speech-driven conferencing, call recording platforms, emergency notification / audio broadcast services, auto attendant applications, telephone surveys, unified messaging platforms, bill payment solutions, voice broadcasting services, and general speech or touch-tone driven IVR.

    To learn more, Voxeo’s Prophecy SIP Application Server pages are a good place to visit.

    Still roaming around? Got enough theory? Simply use the free Evolution Developer portal to build your own IVR or VoIP applications. If you haven’t built telephony apps before, visit the hosted Evolution Developer portal. If you have built apps before, or if you really need a local, downloadable VoiceXML / CCXML platform, you may also try the freely downloadable Prophecy Platform.

    You don’t want to build an application on your own? Fine. In this case you may look at the ready-to-go, industry-focused IVR applications:

    We have already arrived at the end of our short tour. I hope you enjoyed the tour and I hope to see you again soon.

    Cheers!
    Michael

    My insider tip for you: The Voxeo blog provides interesting readings on standardisation, emerging technology, Voxeo labs and application development.

    Additional readings on the acquisition

    Wednesday, December 10th, 2008

    Here are some additional readings on the acquisition:

    Here are some of Voxeo’s viewpoints:


    Voxeo acquisition of VoiceObjects

    Wednesday, December 10th, 2008

    As you are probably aware by now, VoiceObjects got acquired by Voxeo.

    During the past years, we have been able to create a software platform for self-service application development and analytics that is unique in the market. Many corporations world wide use VoiceObjects technology to successfully operate their phone self-services.

    As Voxeo, we are now able to provide the complete technology stack to efficiently implement and operate self-services, including IVR and speech technology. And the best of all, Voxeo’s hosting offering enables you to develop and operate phone services without the need to build up and maintain your own infrastructure.

    You are using an alternative IVR? Don’t be afraid. We will continue our strategy to provide an IVR-independent application development platform. More precisely, we will continue maintenance and will further extend our Media Platform Drivers to support all media platforms and new platform versions.

    To learn more about what this acquisition means and what is next for the software, listen to this interview with Michael Codini, co-founder and CTO of VoiceObjects, hold by Dan York, Director Emerging Communication Technology, Voxeo.

    You can download or play the podcast here:

    icon for podpress [8:36m]: Play Now | Play in Popup | Download

    Or you can watch on YouTube at:

    VoiceObjects Integration with NuEcho’s Grammar Server

    Monday, December 1st, 2008

    When creating speech applications, being able to manage dynamic grammars is often a must. A few examples include

    • Choosing from a user-specific list of accounts, reservations, transaction codes, …
    • Asking the caller to identify with his password, date of birth, or security question;
    • In a banking bill payment application, the “payee list” grammar can be dynamically generated based on the list of payees that has been set up by the user;
    • Address capture: After asking the caller for the zip code, a “street” grammar can be generated dynamically with streets associated with the zip code.

    Many more use cases for dynamic grammars can be found in the Nu Echo blog: Part 1 and Part 2.
    Now, the question is: How to generate dynamic grammars? In particular, how to generate dynamic grammars at call time? The traditional approach is to create a JSP (or ASP, or PHP, or Perl …) page that is invoked at call time with a set of request parameters, returning the required grammar. Creating such pages is cumbersome at best.

    Nu Echo, the VoiceObjects partner company specializing on grammar development tools, have come up with an interesting approach: They designed an easy-to-use yet powerful markup language for creating dynamic grammars. This Grammar Language extends the ABNF format with dynamic grammar directives that can access variables and objects passed to the instantiation service via an instantiation context. This context maps variable names to values.

    Using this approach is fairly simple: You create a grammar template in ABNF format, maybe using the NuGram IDE. This grammar template needs to be uploaded (via HTTP PUT) to the Grammar Server (aka NuGram Server). At call time, the voice application instantiates the grammar, providing an instantiation context that contains the session-specific data via a HTTP POST command. This context must be provided in JSON format, a special string format representing, in a nutshell, structured key-value pairs. The Grammar Server hence creates the grammar which can finally be retrieved using a HTTP GET request.

    Now, our idea was that while this sounds simple enough, it should be made even simpler for VoiceObjects developers. All the HTTP based communication with the Grammar Server that is going on behind the scenes should be automated. Also, creating JSON formatted strings shouldn’t be something VoiceObjects developers are bothered with.

    What we came up with is the Grammar Server Connector that bridges between VoiceObjects applications and the NuGram Server. This connector uses NuGram Server’s HTTP API to upload, instantiante, and fetch dynamic grammars. All that the VoiceObjects developer has to do is, well, first create the grammar template. In the application, he maintains the instantiation context (i.e. the dynamic data that is known only at call time) in a Collection object. The Grammar Server Connector’s task is then to instantiate the grammar at call time.

    To get you started with this new approach to dynamic grammars, I created a simple demo application that uses one single grammar template and a single, simple input state, asking the caller for a currency value – treating the actual currency (US Dollars, Euro, British Pound, Czech Koruny, Mexican Pesos …) as a dynamic value. You can download it, along with the installation package and comprehensive documentation here (scroll down to section “VoiceObjects Integration with NuGram Server”).

    VoiceDays 2008 - VoiceObjects-related presentations

    Monday, October 27th, 2008

    Last week VoiceDays 2008 – the leading German speech technology event – took place. From the VoiceObjects perspective we are looking back to a really successful event. Numerous discussions indicate the growing demand for application development environments that provide independence of underlying IVR technology, that can handle multiple phone channels and modalities, and that provide powerful analytics.

    During these two days participants of congress and tradeshow could attend numerous presentations; I want to share the VoiceObjects-related (primary German) presentations with you.

    Three presentations were given by VoiceObjects customers, providing good insight into their experience with application development and deployment of automated self-services:

    Daniel Hendling, T-Mobile International: Die integrierte Voice & Mobile Self-Service Strategie bei T-Mobile International

    Marion Libossek, Telefónica o2 Germany: Der steinige Weg zum sexy Voice Portal

    Christian Rosenberger, Swisscom: Das Swisscom-Sprachportal


    My colleagues gave two presentations on multi-channel self-services:

    Michael Codini, VoiceObjects: Die neue mobile Generation - Selfservice-Anforderungen in der Multichannel Kommunikation

    Dr. Andreas Volmer, Multi-Channel Phone Services With VoiceObjects Server


    And finally, I gave a presentation on analytics during the Demo-Forum session:

    Michael Gill, Analyse- und Tuning-Tools: VoiceObjects Analyzer

    D+S europe AG wins VoiceAward 2008

    Wednesday, October 22nd, 2008

    Just a quick note on a successful phone service deployed on VoiceObjects technology:
    D+S europe AG has won the „Best Value-Added Service“ category of the VoiceAward 2008. The VoiceAward recognizes the wake-up service (Weckdienst) as best speech-enabled public phone service.

    Award winners were selected by a panel of expert judges attending the recent VoiceDays conference (the German SpeechTek) in Wiesbaden. Judges looked not only for service usability, but also for the short development time and the cost-efficient realization.

    The service can be accessed through the German service number 11864 (Deutsche Telekom) or 0900-500 11 55 (premium rate).

    Check out the update…

    Tuesday, October 21st, 2008

    Dear VoiceObjects developers,

    We recently updated the Developer Portal with some new product updates. Check out the update below:

    • Now available: VoiceObjects Media Mixer Developer Edition
      VoiceObjects Media Mixer is now available as free Developer Edition. VoiceObjects Media Mixer enables the delivery of innovative video solutions via the creation and dynamic generation of video applications for 3G phones. This optional component to the VoiceObjects Server mixes multiple content types — such as text, images, HTML, audio and video files — and generates video clips in 3gp or Flash video (flv) format.
      http://developers.voiceobjects.com/support-training/media-mixer/


    • New version of VoiceObjects Developer Edition
      Version 7.3 R2 is now available for download, providing a newly designed Test Monitor, an enhanced Storyboard Manager, and several minor enhancements and bug fixes. Users of previous versions of the Developer Edition may use the “Check for Update” from the Developer Edition’s VoiceObjects menu to check for the latest version and to access the provided update package.
      http://developers.voiceobjects.com/downloads/deveditiondownload/


    • Prime Telecom
      To learn more about using VoiceObjects for multiple phone channels try the newly available demo application Prime Telecom. Prime Telecom implements a sample self-service portal for a telecommunication company, supporting three phone channels (voice, text, and Web) in three different languages (US-English, UK-English, and German).
      Additional demos and templates will be published soon.
      http://developers.voiceobjects.com/support-training/developer-edition/demos-templates/


    Please note also our next Jam Session on “Natural Dialog Management - Adding NLU and Other Advanced Speech Processing Features to Traditional Voice & DTMF Dialogs” on November 5, 2008. Free registration at http://developers.voiceobjects.com/tech-topics/monthly-jam-sessions/

    Best regards,

    Michael

    Correct me if I’m wrong

    Tuesday, October 14th, 2008

    Ill-designed voice dialogs can get unnecessarily slow and tedious when they try to over-compensate for speech recognition challenges, may they occur or not. This can drive me nuts: They verify each and every input individually instead of first collecting all input and then confirming all of it at once. With 4 items to collect, for instance, this would reduce the input states by 3 (!), let alone the time those three steps would take. Using VoiceObjects Analyzer, you could easily measure that time and understand that that would be time spent in vain, which might actually cost your organisation money spent in vain! But what can you do?

    Well, VoiceObjects 7.3 makes it pretty easy to apply concepts like implicit confirmation and thus correction to your dialogs. As this occurs so frequently in everyday voice applications, I thought I’d write a post on this.

    So check out the following call flow excerpt:

    The Input object Get Credit Card Type asks the initial question: “What is the type of your new credit card?” and accepts responses such as “Visa”, “It’s mastercard”, “I have an Amex card”, etc. The following Input object Get Credit Card Number collects the number only – at first sight, that is. In reality, it does more. It

    1. implicitly confirms the collected card type by prompting the caller with “And what is the number of your Mastercard?” (The speech bubble icon behind the object name – denoting a comment on that object – hints at the additional functionality of this object; hovering over it in VoiceObjects Desktop would show you the developer’s comment as a tool-tip).
    2. allows a correction of the card type in case it was misrecognized.

    This behaviour is not visible per se from the flow as VoiceObjects call flows are usually optimized for readability, deliberately omitting certain details. Showing too much of the innards would make it harder to follow what’s happening on the surface. (I have positive experience with this approach. But here’s an idea: to mention the correction capability of this input state, the developer could have called the Input object Get Credit Card Number (or Correct Card Type) instead).

    Now imagine the recognizer got it wrong and the caller actually said “AmEx card”. What could be the caller’s reaction to this question? Maybe something like “No I said AmEx!” (Damnit!). The Input object Get Credit Card Number has an additional grammar defined (via a second Grammar item in the Grammar section of the Input object) that matches corrections like this. But how can the grammar instruct the server to accept this as a correction of credit card type, reset the corresponding variable, apologize, and ask again for the number, as in “I’m sorry. So what’s the number of your Amex card?” VoiceObjects 7.3 introduced the notion of grammar-driven application control to accomplish this. (Did you notice that the server even adapts to the caller’s choice of words in this example, by saying “Amex” instead of “American Express”? I guess that would make for another nice post on naturalness…)

    The grammar can return instructions for the server via a special slot vogrammarcontrol; instructions such as “change the value of variable CCType” and “re-process object Get Credit Card Number”. In our example, the corresponding grammar snippet could look like this:

    By detecting the slot vogrammarcontrol in the speech platform’s request after caller input and parsing the slot value to arrive at the three instructions varCCType=Amex (set variable CCType to “Amex”), gosub=Apology (process the object with ReferenceID “Apology”, which happens to be an Output object), and continuation=return (continue by returning to the current object and re-processing it), the server naturally responds to the caller’s correction with “Sorry for that. So then, what’s the number of your Amex card?”.

    This is one of many possible steps towards more natural man-machine interaction. We at VoiceObjects like to call it Natural Dialog Management. Find more details on the feature of grammar-driven application control in the Input object section of the Object Reference, which is part of the VoiceObjects product documentation. I plan to provide some more examples on other Natural Dialog Management features in upcoming posts… Stay tuned!

    Welcome to the VoiceObjects Developer Blog!

    Monday, October 13th, 2008

    Welcome to the VoiceObjects Developer Blog. The VoiceObjects team is very excited about this new communication channel as this will enrich our growing developer community by sharing thoughts and experiences on various topics.

    This weblog will focus on best practices for self-service application design, VUI / GUI design, analytics and reporting, and speech grammar development. Also we are going to cover new market and technology trends and how those impact the VoiceObjects product roadmap. Specifically on developments in the W3C standard bodies around VoiceXML. But also on emerging phone self-service channels such as Video, SMS, USSD, Web Chat and Instant Messaging. And finally we want to report about successful project and solution deployments with our SI partners and customers.

    Here are the VoiceObjects team members who  will participate as authors in the Developer Blog:

    Andreas Volmer - Presales Manager EMEA
    Angelika Salmen – Manager VUI Services
    Christopher Schick – Program Manager
    Martin Mauelshagen – Program Manager
    Michael Codini - CTO
    Michael Gill – Director Product Management
    Stefan Besling – VP Engineering
    Tobias Göbel – Senior Presales Consultant
    Volker Kraft – Manager Education Services

    If you would like to stay  up-to-date  on what we are doing, please do subscribe to our site’s feed - and please do pass along your comments.  We’d love to hear from you.

    The VoiceObjects team