LumenVox

Speech Platform

Speech Platform
LumenVox's Speech Platform is an intuitive GUI-based toolkit to quickly design, develop, and deploy any speech recognition application or IVR. By connecting to almost any phone system and database, the Speech Platform can easily be designed for Call Routers, Customer Service applications, Dealer Locators, Auto Attendants, or any other speech recognition solution.

Platform Functionality

  • Support for English, Spanish, and Canadian French
  • Client/Server Functionality
  • Database Connectivity through Custom Action DLL's
  • Call Bridging and Outbound Dialing through Custom Action DLL's
  • Support for Dialogic hardware
  • Enterprise Level Distribution
  • User-created sophisticated grammars
  • Loop start/analog or T1/PRI ISDN/VoIP
  • Barge-in capability
  • Live updates without reboot
  • DTMF and speech input
  • Detailed call flow logging
  • Live runtime GUI status monitoring

Platform Functionality

  • Complete call flow handling
  • Flash-hook transfer capability
  • Flexible call job definitions
  • Carrier-grade application-ready
  • Full SRGS, SISR support
  • On the fly project switching
  • File or SQL/MSDE Database-based projects
  • Flexible line setting
  • Assign each phone line to a different database, file projector or CAPI only mode
  • Noise reduction module
  • LumenVox Speech Tuner included
  • LumenVox Speech Recognition Engine included

The Speech Platform is included at no cost with the Speech Engine and provides a GUI environment to quickly build speech applications. It includes all of the components you need to produce and maintain your speech solutions and run a stand-alone or integrated IVR.

The Speech Platform can be extended, allowing you to create a number of speech applications by accessing pre-built libraries and controlling the call flow. These Platform extensions can be written as either a Visual Basic ActiveX executable or C/C++ DLL. However, sophisticated applications can be written using just the Platform GUI.

Speech Platform Flow Chart

The Speech Platform's Flow Chart lets you design your application visually with the use of function modules.

The Call Flow View allows the designer of the speech application to see all of the modules that are associated with the application and how they relate to each other. This is where the application dialog flow is created and can be tracked to see how callers will flow through the speech application or IVR.

The Object Panel allows application designers to drag and drop Modules that perform a specific function, or to add notes with Annotations to provide quick information or reminders on the Call Flow itself. Action Lists, Actions, and Grammars are drag and drop icons to add within each individual Module's properties.

The Properties Window has six tabs: Project, Modules, Audio Library, Quick Audio, To Do, and Notes. Project shows the global and project specific properties. Modules is a list of modules you have created so far for the application. The Audio Library and Quick Audio display all audio prompts contained within the project. To Do reminds you that there are objects that have not been finished within the whole project. Notes provides a place to enter comments or thoughts concerning the applications.

Everything you need. LumenVox's Speech Platform includes all of the components you need to produce, adjust, and maintain speech recognition applications. Designed from the outset to work together, the Platform's components operate seamlessly.

Platform-Built Solutions

Our customers are building speech recognition solutions that reduce operating costs and improve customer service for their clients.

  • Pin code and account number capture
  • Automated Billing
  • Collecting demographic information
  • Auto attendant
  • Transaction completion
  • Appointment scheduling
  • Email reader
  • Voicemail access

Component Descriptions

  • The Platform Designer allows you to construct the framework for your speech application in a GUI environment.
  • Platform Extensions are used to handle any situation that the Platform Designer cannot support internally.
  • The Speech Engine recognizes what the caller says, returning the results to the Call Handler.
  • The Call Handler works with the Platform's Designer, Extensions, and Speech Recognition Engine executing the logic of your application, and directing calls appropriately.
  • The Speech Tuner provides a comprehensive window into your applications: it allows you to quickly note where your applications perform well, and determine which areas need improvement. The tuner also lets you simulate changes to your application, using from past calls, to determine the effectiveness of each change.
  • Advanced dynamic barge-in adapts to each call in real time.
  • SDK includes examples of demo apps.
  • Flexible error recovery through these of confidence scores and n-Best results.

The Speech Platform can be extended, allowing you to create a number of speech applications by accessing pre-built libraries and controlling the call flow. These Platform Extensions can be written as either a Visual Basic ActiveX exe or C/C++ DLL.

The Custom Action DLL directs the Platform's Call Handler to perform an appropriate action. This enhancement allows the speech application to fill a host of telephony needs including:

  • Connecting to a live, or regularly updated web site or RSS feed.
  • Connecting to an ODBC compliant database via an ADO (ActiveX Data Object).
  • Using SRGS for grammars and enable semantic interpretation.
  • Directing callers to different modules within the Platform's Designer project based on external decision trees.
Speech Plaform Designer

/* GiveConfer repeats the location, car type and color back to the caller in the
EZRentaCar demo*/

_declspec(dllexport) BOOL WINAPI GiveConfer(LONG nEvent, HANDLE hCA)
{
	TCHAR szState[1024];
	TCHAR szCity[1024];
	TCHAR szType[1024];
	TCHAR szColor[1024];

	TCHAR szBuffer[1024];
	LONG nSize = 1024;
	LONG nConf;

	switch(nEvent)
	{	
	case CAMSG_ENTERMODULE:
		LVCA_GetMultiLevelConcept(hCA, "Location", 0x1, szState, &nSize, &nConf); //retrieves concepts from each module
		nSize = 1024;
		LVCA_GetMultiLevelConcept(hCA, "Location", 0x2, szCity, &nSize, &nConf);
		nSize = 1024;
		LVCA_GetConcept(hCA, "Type of Car", szType, &nSize, &nConf);
		nSize = 1024;
		LVCA_GetConcept(hCA, "Color", szColor, &nSize, &nConf);
		nSize = 1024;
		
		LVCA_AddOneTimeLibraryAudioA(hCA, "EC:Confirmation (b car type)");  //Adds the concept into the audio and confirms
		sprintf(szBuffer, "EC:%s", szColor);								// color and type
		LVCA_AddOneTimeLibraryAudioA(hCA, szBuffer);
		sprintf(szBuffer, "EC:%s", szType);
		LVCA_AddOneTimeLibraryAudioA(hCA, szBuffer);

		if (stricmp("minivan", szType) && stricmp("pickup", szType))  //allows "minivan" & "pickup" to be their own type
			LVCA_AddOneTimeLibraryAudioA(hCA, "EC:Car");	

		LVCA_AddOneTimeLibraryAudioA(hCA, "EC:Confirmation (b CityState)"); //Adds concept into audio and confirms city & state  
		sprintf(szBuffer, "City:%s", szCity);
		LVCA_AddOneTimeLibraryAudioA(hCA, szBuffer);
		sprintf(szBuffer, "State:%s", szState);
		LVCA_AddOneTimeLibraryAudioA(hCA, szBuffer);


		LVCA_SetGoto( hCA, "Close" );
			break;
	case CAMSG_REC_BEFORE_CONFIRM:
		break;
	case CAMSG_REC_AFTER_CONFIRM:
		break;
	}
	return TRUE;
}
					
Private Sub Form_Load()

End Sub

Public Sub Module_ModuleAfterDecode(ByRef LVCA As LVCA_Link.CustomCallActions)
    LVCA.LogMsgToFile "TEST Module_ModuleBeforeConfirm"
    LVCA.DisplayMessage "Module_ModuleBeforeConfirm " & LVCA.GetModuleName
    
    If Not LVCA.GetInteractionCondition() = LVCAIC_Match Then
        LVCA.SetNextModule LVCA.GetModuleName
        Exit Sub
    End If
    
    Select Case LVCA.GetModuleName
        Case "Account Number"
            Dim AccountNumber As String
            Dim Conf As Long
            
            If LVCA.IsDTMFPresent Then
                AccountNumber = LVCA.GetRawConcept(0, Conf)
            Else
                AccountNumber = LVCA.GetSemanticInterpretationSTrin(0, INTSTR_CONTENT)
            End If
            LVCA.DisplayMessage "Module_ModuleBeforeConfirm " & AccontNumber
            LVCA.AddTTSPrompt "The account number you entered is " & AccountNumber & " You are now being transfered:"
            
            LVCA.SetStringValue "Account Number", AccountNumber
            LVCA.SetNextModule ("Main Menu")
    End Select
End Sub

Public Sub Module_ModuleEntry(ByRef LVCA As LVCA_Link.CustomCallActions)

    On Error GoTo ModuleEngryError 'is is recommended you catch and log any error that occur in the vb code
    
    LVCA.LogMsgToFile "TEST Module_ModuleEntry"
    LVCA.DisplayMessage "TEST Module_ModuleEntry " & LVCA.GetModuleName
1010:

1020:
    Select Case LVCA.GetModuleName 'This is the name of the Module found in the SDIS
        
        Case "Account Number"
1030:
            EnterAccountNumber LVCA
            
        Case "Main Menu"
1040:
End Sub

					

The Call Handler supports a variety of Intel Dialogic telephony cards, and is designed to make hardware setup as easy as possible; this allows more time for you to develop and test your speech application.

When developing your speech recognition application with the Speech Platform's Designer, run tests by clicking on the Test button in the Toolbar. The Call Handler allows you to use speakers and a microphone to completely test your application in-house-before releasing it to customers.

The Speech Designer is a static call flow, each caller moving through the same call flow as defined in a project. Normally, choices made by the caller can not be exported to a database; however, with the CAPI, all this can be accomplished and more. Each time a caller enters a module the speech application performs a recognition and confirmation, after which an event can be fired. The Custom Action DLL can perform such tasks as add audio, make additions to the grammar, evaluate previous recognitions, direct the caller to a new module, or transfer the caller.

The power of the Designer is greatly increased when the Custom Action DLL attaches to a database.

The Speech Platform's Call Handler runs the speech recognition application. The Platform's Settings, more specifically Line Settings, inform the Call Handler which Project to use.

Speech Platform Call Handler Settings

Video Library

Tips & Articles

White Papers

Training