IP Telephony Contact Centers Mobility Services WHITE PAPER Avaya Speech Applications Builder Overview of Rapid Application Development and Deployment for Avaya Speech Self Service Version 1.3 May 2005
avaya.com Table of Contents Section 1: Overview... 1 Section 2: Introduction... 1 Section 3: Traditional Call Center Technology... 2 Section 4: The Open Standards Approach... 3 Section 5: Avaya Speech Applications Builder... 3 Section 6: Speech Applications Builder... 5 6.1 Elements... 5 6.2 Dialog and Process... 5 6.3 Integration... 6 :... 6 Section 7: The Configurator Tool... 8 Section 8: Operations Administration and Management... 9 Section 9: Speech Applications Builder Roadmap... 9 Section 10: Speech Applications Builder Component List... 10 10.1 Dialog... 10 10.2 Process... 11 10.3 Rule... 13
avaya.com 1 Section 1: Overview This document provides an overview of Avaya Speech Applications Builder. It is aimed primarily at technical readers who are interested in a broad understanding of the environment, and at evaluators wishing to assess the suitability of the platform for implementation of Speech Recognition applications within their environment. Avaya Speech Applications Builder Speech Applications Builder Component Library Custom Dialog Rule Configurator Tool OA&M Transfer Voice Elements Elements Layer Grammar Elements Rules Java API CRM & Enterprise Applications Interactive Response Voice Recognition Integration Avaya Enterprise IP Telephony Application XML, SOAP MQSeries, Oracle, Siebel ASR IBM ScanSoft Nuance Interactive Response VoiceXML Browser ACD Call Center TTS IBM ScanSoft Nuance Standard HW & OS Switch Communication Manager Section 2: Introduction Avaya Speech Applications Builder is the rapid service creation platform for developing and supporting Avaya Interactive Response voice applications. The platform is built from the ground up for Systems Integrators and application developers who need to create reliable, high-quality applications cheaply and quickly. It has been designed and developed iteratively through road tests supporting real deployments of voice and self-service applications integrated into complex call center environments. Speech Applications Builder comprises: A voice element set for developing voice recognition components from basic building blocks A call flow element set for managing basic call control functionality within voice recognition applications A grammar element set that provides an abstract representation of grammar to allow portability and dynamic generation of the grammar files used by voice recognition applications A configuration management tool and Operations Administration and Management suite through which nontechnical users can update, maintain and monitor applications built on the platform An integration layer that provides abstraction from underlying data storage systems, communication protocols and deployment environments
COMMUNICATIONS AT THE HEART OF BUSINESS 2 Collectively, these elements make up the platform and run-time environment in which interactive voice services are deployed. In addition, Avaya also provides a library of pre-built components that handle sub-dialogues, call flow, CTI, legacy application support, and business logic. These components are assembled together to form complete service applications. Basic components are bundled into a component library that is included with the services creation environment, while more advanced vertical or horizontal application specific components are available as add-on intermediate components. These more advanced components include high-level components such as Credit Card Capture or Capture Monetary Amount. Both Avaya and its partners make use of Speech Applications Builder and the component library to create interactive speech applications for businesses. Customers of these applications purchase licenses for the underlying Speech Applications Builder and licenses for the application based on the number of concurrent service calls they desire to automate. Section 3: Traditional Call Center Technology A key technical problem in most call center environments is integrating into both best-in-breed proprietary technologies while making the most of open standards. The main technical components within call center environments usually include an Automatic Call Distributor (ACD) system (such as Avaya Communication Manager), to manage distribution of calls to agents, and enterprise systems (CRM applications, Avaya Interaction Center, order processing, sales and reservations, etc.) that agents need to access in order to manage customer interactions. Integration of call-related information with these other systems is typically managed through a Computer Telephony Integration (CTI) platform (such as Avaya Computer Telephony or Interaction Center) that provides screen-pops with this information to Call Center agents. ACDs have emerged as evolved versions of telephony switches, with additional software built onto the platforms to manage call queuing, routing, prioritization, etc. Best of breed intelligent routing such as Avaya Business Advocate can be deployed on Avaya ACDs individually or alternatively centrally deployed and managed via Business Advocate for Interaction Center. As call centers focused more on automation, cost reduction and self-service through DTMF/touchtone applications, the early IVR platforms became available as systems that would hang off the side of the ACDs and handle simple, automated interactions. These IVR platforms were built up from proprietary telephony hardware, with proprietary software layers added on top. The systems put in place within call center environments were tied to the vendor of the IVR platform. Avaya and the industry as a whole have moved to open-standards based hardware and software while supporting completely software-based Voice over IP (VoIP) integrations that further eliminate specific vendor hardware constraints. Traditionally, only the specialists in the proprietary programming languages and interfaces of that vendor s hardware were able to implement, modify or extend those systems, making the costs of these implementations reachable for only larger enterprises. Now that robust, speaker-independent speech recognition has emerged as a viable technology for integration into the call center environment, businesses have identified the opportunities to increase the number and types of calls that they can manage through interactive voice systems. In addition to speech, VoiceXML has emerged as a standard for speech applications.
avaya.com 3 Section 4: The Open Standards Approach VoiceXML has emerged as a leading open standard for telephony-based interactive voice systems, achieving widespread acceptance from businesses, systems integrators and technology vendors. VoiceXML enables development of interactive voice applications that follow a similar architecture to web applications. This means that voice application development can follow similar methodologies and coding patterns to those that many businesses follow for their web development. Systems can be built on widely used, off-the-shelf telephony/hardware platforms such as the Avaya Interactive Response. In addition, Avaya has adopted a multiplatform development paradigm by building out a Java based solution. Using Avaya Speech Applications Builder, applications can be developed in Java, making use of the widely available Java development community within internal IT departments or Systems Integrators. Avaya Speech Applications Builder Architecture Diagram Speech Applications Builder Component Library Custom Dialog Rule Configurator Tool OA&M Transfer Voice Elements Elements Layer Grammar Elements Rules Java API CRM & Enterprise Applications Interactive Response Voice Recognition Integration Avaya Enterprise IP Telephony Application XML, SOAP MQSeries, Oracle, Siebel ASR IBM ScanSoft Nuance Interactive Response VoiceXML Browser ACD Call Center TTS IBM ScanSoft Nuance Standard HW & OS Switch Communication Manager The arrival of VoiceXML means that it is now possible to implement speech enabled business applications using more off-the-shelf hardware components and standards based software with open, customizable interfaces. The ability to use open, best-of-breed elements at each point within the technology stack results in a lower-cost solution than previous technical approaches. By implementing an open standards VoiceXML platform, businesses are able to further leverage existing staff and build out a core Java/VoiceXML competency for both web and speech with a reduced staffing requirement for proprietary vendor programming technologies. Section 5: Avaya Speech Applications Builder Avaya Speech Applications Builder is a deployment platform for rapid interactive voice applications creation based on VoiceXML. It dramatically simplifies development of voice applications by allowing developers to create applications in a Java environment, adopting a component-based approach to application construction.
COMMUNICATIONS AT THE HEART OF BUSINESS 4 Component Library Custom Dialog Rule Configurator Tool OA&M Transfer Voice Elements Elements Elements Layer Grammar Rules Java API Interactive Response Voice Recognition Integration Avaya Enterprise IP Telephony Application Speech Applications Builder enables faster and less costly development of voice recognition applications through reuse of pre-built, prewritten components. It also delivers more flexible applications support models through the platform independence associated with the use of Java and VoiceXML. The Integration layer allows applications to run on VoiceXML Gateways from Avaya and other vendors, using different ASRs and TTS engines, ensuring that applications can support multiple platforms. They also manage integration into call center environments through the use of adapters that connect Interactive Response with the most common ACD systems and CTI platforms. Avaya Speech Applications Builder provides components to simplify integration of Interactive Response with industry-leading Avaya IP Telephony, call center, and CTI infrastructure. Enterprise application integration is handled through a specific adapter set that handles interaction with a number of 3rd party middleware products, packaged applications and widely used protocols. Application creation, configuration and management are handled through a visual drag-and-drop management tool. At the core, applications are built from Java elements representing primitive interactive voice application elements, such as Ask a question, Play a prompt, Transfer a call, etc. Higher-level components are then constructed from these primitive elements and re-used across multiple applications. Speech Applications Builder comes with a comprehensive library of pre-built components, including commonly occurring sub-dialogues such as Address Collection and Credit Card Verification. Additional packages of more sophisticated components can be purchased to further extend the core library as well as further speed automation of more complex service interactions. Speech Applications Builder can run on a basic web server that runs a Java Virtual Machine. It can also run on widely used Application Servers like IBM WebSphere or Jboss. Where appropriate, components can act as Java beans and be manipulated in beanbuilder environments. Standard reporting and monitoring functionality are provided and configured through the Operations Administration and Management (OA&M) Suite included as part of the Speech Applications Builder.
avaya.com 5 The Configurator tool provides a visual representation of the voice application. Individual elements of the dialogue are represented as discrete components that can be configured and manipulated. The application flow, and the rules that determine how the application moves from each component to the next, can be modified with this interface. The intuitive, simple to use interface allows enterprise customers to use the tool to make minor adjustments or extend their service application without having to turn to application developers. In a live deployment scenario, applications built from these components are executed by Speech Applications Builder, which generates dynamic VoiceXML. Compared with alternative approaches involving development of applications from static VoiceXML code fragments or stubs embedded within ASP/JSP, Speech Applications Builder ensures that applications are more maintainable and reusable. The vagaries of VoiceXML with its more complex control flow are hidden from the developer, who only needs to work at the level of the Java elements that generate VoiceXML through the Voice Recognition. The dynamic VoiceXML runs on Avaya Interactive Response, which facilitates the interaction with the Automatic Speech Recognition (ASR) or Text To Speech (TTS) engines, and translates the VoiceXML into the audio signals that the user hears. Section 6: Speech Applications Builder For a complete listing of current components, please see Section 10. 6.1 Elements Speech Applications Builder includes an element layer that includes three main types of elements : voice, call flow, and grammar. The elements here are essentially the primitive building blocks from which more complex components are constructed. These include: Voice elements: Prompt, Ask, Record, etc. Call flow elements: Transfer call, end call, receive call, initiate call, call ended/dropped, etc. Grammar elements: grammar rule(s), semantic return, etc. The use of these elements as base level building blocks allow for easier generation of components that enable faster, less costly, and more flexible development of interactive speech applications. Each element has a corresponding set of adapters. The combination of elements and adapters in the integration layer provide an abstract modeling language to connect various backend systems (ACDs/switches, voice servers, etc.), without requiring application developers to have familiarity with the specifics of each of these backend systems. 6.2 Dialog and Process The component library incorporates a set of components that can be reused across different applications. These components manage entire sub-dialogues, working at a level of granularity appropriate for easily dragging and dropping from one application to another. Each component has been crafted with the appropriate default prompts, grammars, patterns of interaction and internal algorithms to ensure that it can effectively do its job. Additionally, these components can be configured to allow these elements and properties to be replaced or configured as needed for the specific application within which the component will be used. The expertise that Avaya applies to the design of the Voice User Interface (VUI) in Avaya applications has been applied in the design of these components. Each component effectively embeds within it the skills and knowledge of what is required in order to make that specific part of a conversation with an interactive speech application effective and pleasant from an end user point of view.
COMMUNICATIONS AT THE HEART OF BUSINESS 6 The library includes voice components to manage standard sub-dialogues (such as Login, Menu, Payment, Name, Address, etc.) Supporting these voice components are business components that handle more complex business logic associated with a voice component. For example, the Login component has an associated Validation component that checks the validation data against the account details from the external system. Similarly, the Payment component makes use of a voice component for collection of credit card details, and uses a business component for validation of the details and authorization of transactions. 6.3 Integration Voice Recognition : As standards are still emerging for speech recognition (the Speech Recognition Grammar Specification), ASR vendors have implemented pre-specification grammar formats. This means developers still have to learn proprietary techniques, making it both more expensive to start writing applications. Speech Applications Builder supports integration of IBM, Scansoft, Nuance speech technologies as well as other TTS engines via SSML. The use of adapters that manage the different interpretations and extensions of VoiceXML and grammar formats simplifies deployment across multi-vendor environments. : The set of call flow adapters implements Interactive Response interfaces to the most widely used ACD systems and CTI platforms. For example, the adapter for pre-route solutions from ICM provides a mechanism through which calls can be routed into the Speech Applications Builder platform, with the platform returning the information that it gathers during the call to the ICM so that the ICM can make its routing decision based on that information. Enterprise Application : The Enterprise Application simplifies the interoperability and abstraction mechanisms that enable Speech Applications Builder components to access enterprise data stores, communicate with legacy systems and interact with middleware messaging infrastructure. They form a bridge between systems developed within Speech Applications Builder and the underlying applications infrastructure. For example, they allow a Speech Applications Builder component to expose itself as a Web Service or an EJB while remaining isolated from the technical details of its deployment environment. Also, businesses can leverage best of breed packages, such as Scansoft Open Speech Dialog Modules (OSDMs), as part of their core library of pre-built components. The Enterprise Application were designed to deliver a number of business advantages that include: Avoiding the need to make hard commitments to deployment environments during the development cycle. This means that Speech Applications Builder applications can be moved to or distributed over different deployment environments without changing their constituent components. Interoperability with other systems using open and industry standards, without requiring developers to learn about all the individual standards they might be required to use Abstracting object persistence across a variety of database and storage mechanisms Mapping business objects onto relational schemas in existing data stores, so that old and new systems can work in parallel
avaya.com 7 The Speech Applications Builder Enterprise Application are a powerful abstraction mechanism that addresses the fundamental diversity in standards and environments which systems meet over time, and which many systems often face at any one point in time. It is a system for allowing small, lightweight business objects to share the advantages of their heavyweight colleagues, to remain independent of particular application servers or architectures and to harness existing databases and legacy systems. Most of all, it simplifies development and enhances the reusability of system components. There are two major elements to the Enterprise Application : the persistence abstraction and the distribution, integration and communication abstraction. The former is concerned with mapping the attributes of business objects on to data stores; the latter is concerned with wrapping collections of business objects so that they can be exposed to the outside world as Web Services, EJBs and the like. It also provides abstract views of legacy systems, middleware messaging systems and distribution protocols. The persistence abstraction maps attributes of business objects to persistent data stores, such as RDBMS, OODBMS, XML schemas and bespoke databases. It is a multi-tiered structure consisting of persistence services, mapping cartridges and drivers. Persistence services contain the functionality needed to map an object to a generic kind of persistent data store, such as a relational database or an XML file format. Mapping cartridges define the conversion from an object s attributes and references to the structures of a data store, and vice versa. For example, in a relational database context, a mapping cartridge relates attributes to fields and tables. In an XML context, a mapping relates attributes to elements in an XML schema. Drivers perform the lower level tasks of communicating with specific types of data store, such as an Oracle database or a file system. Speech Applications Builder has persistence services for the most common types of data store (relational, object-oriented, XML and flat file). The relational database persistence service is based on JDBC and therefore works with all industry standard JDBC compliant database systems. All of these tiers are loosely coupled, and any or all of them may be swapped out and replaced where necessary. The design of the persistence abstraction means that switching different persistence layers has no ramifications for objects in the business logic layer: they can remain unaltered. A developer who is tasked to write a communication layer for a bespoke database system therefore does not need to know anything about writing business logic. They can focus exclusively on the details of implementing the database driver. Similarly, business logic developers are isolated from alterations in the underlying persistence mechanisms. For example, mapping a business object to tables in an Oracle relational database involves creating a mapping cartridge that relates the business objects to the chosen database tables, selecting the JDBC persistence service and configuring its Oracle driver. Persisting an object then simply involves no more than invoking a save () method. The distribution, integration and abstraction components wrap collections of business objects so that they can be exposed to the outside world in different ways, for example as Web Services or over an MQSeries transport. It provides Speech Applications Builder components with an abstract view of middleware messaging systems and distribution protocols.
COMMUNICATIONS AT THE HEART OF BUSINESS 8 The abstraction provides three core types of component: Proxies are representations of external services such as distribution mechanisms, as seen from within Speech Applications Builder. wishing to use such a mechanism make calls on the proxy and need not worry about any further details. The interface provided by a proxy remains consistent across different deployment environments. Containers translate calls from a proxy into a form understood by the underlying service implementation. For example, a container may know how to communicate using SOAP or RMI, and will do so on a proxy s behalf. Each deployment environment uses its own particular set of containers. Factories automatically generate pairs of matching proxies and containers for a given deployment environment. Applications written with Speech Applications Builder can always rely on factories to create the right type of proxies and containers for the environment in which their components happen to be running. For example, to write a component that makes use of the Enterprise Application to communicate with a remote object using RMI requires configuring the component for RMI deployment, asking a factory to create a proxy and container pair for the remote object and then calling methods on the proxy. Migrating the component to a SOAP-based Web Services distribution mechanism simply requires reconfiguring for Web Services. The necessary code changes are implemented either at runtime or by automatic code generation. Exposure as an Enterprise Java Bean also requires no more than a similar configuration change. Section 7: The Configurator Tool The Configurator Tool is a component configuration and assembly platform that allows non-technical users to construct and make modifications to voice applications. Using this GUI to access a visual representation of a voice application, users can select and modify the properties of the individual components from which the application is constructed. They can change the prompts, adjust the flow between components and the rules that determine how and when a caller should
avaya.com 9 move from one step to the next, and reconfigure the linkages between the components and the backend systems that the components connect with. The Configurator Tool also provides a run-time environment (along with a debugger) in which applications reside. The GUI allows an application to be assembled and/or modified in a manner that the run-time environment will then support. Using role-based restrictions, the tool can also be used for administration of applications built for that environment. A key advantage with this approach is that the use of this Configurator Tool is not the only way in which applications can be developed and executed. can run within any Java application space and do not have to use the run-time environment provided by the Configurator Tool. Section 8: Operations Administration and Management The OA&M suite consists of the logging, reporting and monitoring tools available with Speech Applications Builder. When Interactive Response is deployed with Interaction Center and Operational Analyst as part of a comprehensive multichannel Avaya Customer Interaction Suite solution, customers gain increased visibility and further reporting simplification on contact center effectiveness across both agent-assisted and selfassisted customer interactions. For businesses seeking to integrate self-service reports with enterprise business analytics, Speech Applications Builder also provides standard report templates for export to commercially available tools such as Crystal Reports. These include: Calls by DDI Call summary, call duration summary dropped calls summary, problem calls summary Half-hourly report Dropped calls by state, forced transfers by state, recognition performance by state Call breakdown, Dropped calls breakdown Application developers and end customers can build custom reports from the logging database, using standard commercially available tools. The monitoring tool enables set up of SNMP traps to enable integration of Speech Applications Builder applications into standard application monitoring environments. Section 9: Speech Applications Builder Roadmap The initial release of Speech Applications Builder includes the infrastructure, elements, components and graphical configuration tools. Complete support for VoiceXML is supported in this initial release. Because Speech Applications Builder is built on a component basis, individual components will be added to the platform between major releases and will be made available to our partners.
COMMUNICATIONS AT THE HEART OF BUSINESS 10 Section 10: Speech Applications Builder Component List 10.1 Dialog Name Ask Dialog Confirm Dialog Dynamic Confirm Dialog HTML Ask Dialog Menu Dialog Question-Confirm Dialog Question Dialog Record Message Dialog Say Dialog Sub-Dialog Yes/No Dialog Spell Dialog Dynamic Say Dialog Dynamic Answer Dialog Dynamic Message Dialog Release Call Dialog Receive Call Dialog Initiate Call Dialog Transfer Call Dialog Operator Dialog Time Dialog Date Dialog Day Dialog Month Dialog Year Dialog Name SSN Dialog Confirm Set Dialog Address Dialog Name Dialog Phone Number Dialog Number Dialog Currency Dialog Money Dialog Login Dialog ID String Dialog Credit Card Dialog Description Asks a question, but does not anticipate a response. Asks a question and gets a yes or no answer. States a message containing a piece variable set on the call and stores the caller s response as a variable. Generates a web-based question. Dictates configurable menu options to the caller. Asks the question and confirms the callers answer. Asks the question and dictates the acceptable answers. Prompts the caller to record a message and contains the capability to replay the message after recording. States a message without requiring caller interaction. Connects the call to another dialog flow. Asks a yes or no question. Take a min and max characters parameter during configuration and records a spelled answer within the set parameters from the caller. States a customer message using dynamic folder data set during the call combined with information set-up during configuration. Answers control the options presented to the user. Plays a message retrieved from the folder. Terminate a call. Concludes the dialog flow; the terminal message, e.g. Goodbye, Thank You, etc. Receives an incoming call. Makes a call to a supplied number. Transfers a call to a supplied number. Transfers a call to the operator. Can be used as an interrupt. Gets a time from the caller. Gets a date from the caller. Prompts the user for a day of the week and records the response. Prompts the user for a month and records the response. Prompts the user for a year and records the response. Description Prompts the user for their social security number records the response. Asks several questions (using sub-dialogs) and presents the user with a summary of the results. Allows the user to go back and change answers. Gets an address from the caller. Gets a name from the caller. Prompts the user for a phone number and records the response. Prompts the user for a number and records the response. Prompts the user for type of currency and records the response. Prompts the user for a monetary amount and records the response. Gets login details from the user. Gets an alphanumeric string from the caller. An expected format must be provided. Gets credit card details from the caller.
avaya.com 11 Payment Dialog Schedule Booking Admin Message Dialog Validate Dialog Call Reporting Gets a payment from a caller, via credit card. Gathers schedule information from a user for the purposes of booking travel. Provides a post booking management system allowing users to get information about their booking and pay the outstanding bill. Plays a message. Test component. Takes the script for a prompt and does a recognize listening for the prompt. Result is based in whether the expected prompt is heard. Logging of call details into a database, display of active calls via a JSP page and display of historical data via Crystal Reports. 10.2 Process Name Addition Copy Text Variable Division Exponentiation Fixed Format Message Email Math Absolute Value Max Number Min Number Multiplication Print Value Proper Name Round Number Set Number Variable Set Text Variable Strip Character Subtraction System Out Name Text Lower Case Text Sub-Text Text Upper Case Truncate Number Consolidation Sub-Process Deployment Migration Manual Workflow Console Currency Conversion Rate Access ACCRINT DB FV NPER PMT Description Adds two values, either of which could be constants or variables. Copies the value of one variable to another variable. Divides two values, either of which could be constants or variables. Takes a value to a configurable exponential level. Sends email with a fixed text. Generates the absolute value of a number. Copies the higher of two numbers into another variable. Copies the lower of two numbers into another variable. Multiplies two values, either of which could be constants or variables. Allows values to be selected and printed out to a debugger. Capitalizes the first letter of each word. Rounds a number. Sets a value to a number variable. Sets a value to a text variable. Removes all occurrences of a specified and replaces them to another value. Subtracts two values, either of which could be constants or variables. Prints a value to the output stream. Description Changes the specified text to all lower case characters. Takes a string and creates a sub-string from specified indexes. For example, if the string Avaya is specified, and the indexes 1 and 5 are specified, the resultant value will be Fn. Changes the specified text to all upper case characters. Truncates the value of a variable and stores the result. Stops the process from continuing until all connections are met Imbeds one process as a step into another processes flow. Migrates a process from one environment to another and is used for custom deployment processes. Stops the process for workflow interaction with an external source. Creates a UI with workflow choices. Converts a value from one currency to another currency. Pulls the daily exchange rates of specified country codes. Returns the accrued interest for a security that pays periodic interest. Returns the depreciation of an asset for a specified period using the fixed-declining balance method. Returns the future value of an investment. Returns the number of periods for an investment. Returns the periodic payment for an annuity.
COMMUNICATIONS AT THE HEART OF BUSINESS 12 PV EFFECT DISC INTRATE NOMINAL NPV SLN SYD TBILLPRICE TBILLYIELD FVSCHEDULE TBILLEQ RECEIVED COUPDAYS ACCRINTM COUPDAYSNC DOLLARFR COUPNUM PRICEDISC COUPDAYBS YIELDDISC YIELDMAT COUPNCD Returns the present value of an investment. Returns the effective annual interest rate. Returns the discount rate for a security. Returns the interest rate for a fully invested security. Returns the annual nominal interest rate. Returns the net present value of an investment based on a series of periodic cash flows and a discount rate. Returns the straight-line depreciation of an asset for one period Returns the sum-of-years digits depreciation of an asset for a specified period Returns the price per $100 face value for a Treasury bill Returns the yield for a Treasury bill Returns the future value of an initial principal after applying a series of compound interest rates Returns the bond-equivalent yield for a Treasury bill Returns the amount received at maturity for a fully invested security Returns the number of days in the coupon period that contains the settlement date Returns the accrued interest for a security that pays interest at maturity Returns the number of days from the settlement date to the next coupon date Converts a dollar price, expressed as a decimal number, into a dollar price, expressed as a fraction Returns the number of coupons payable between the settlement date and maturity date Returns the price per $100 face value of a discounted security Returns the number of days from the beginning of the coupon period to the settlement date Returns the annual yield for a discounted security. For example, a Treasury bill Returns the annual yield of a security that pays interest at maturity Returns the next coupon date after the settlement date Name COUPPCD DOLLARDE CUMIPMT CUMPRINC IRR XNPV PPMT ISPMT XIRR IPMT DDB PRICE PRICEMAT YIELD MIRR VDB Web Services Integration Insert Variables Process Path Record File Read Step Description Returns the previous coupon date before the settlement date Converts a dollar price, expressed as a fraction, into a dollar price, expressed as a decimal number Returns the cumulative interest paid between two periods Returns the cumulative principal paid on a loan between two periods Returns the internal rate of return for a series of cash flows Returns the net present value for a schedule of cash flows that is not necessarily periodic Returns the payment on the principal for an investment for a given period Calculates the interest paid during a specific period of an investment. Returns the internal rate of return for a schedule of cash flows that is not necessarily periodic Returns the interest payment for an investment for a given period Returns the depreciation of an asset for a specified period using the double-declining balance method or some other method you specify Returns the price per $100 face value of a security that pays periodic interest Returns the price per $100 face value of a security that pays interest at maturity Returns the yield on a security that pays periodic interest Returns the internal rate of return where positive and negative cash flows are financed at different rates Returns the depreciation of an asset for a specified or partial period using a declining balance method Makes a call to a web service and integrates its results back into the process Inserts variables into the folder. The name, type and value of the variable are specified Records the evolution of the process into a database Reads the contents of a file into the process
avaya.com 13 Database Query Step HTTP Get Step HTTP Post Step Java Scripted Step Branching Step Call Reporting Reads the contents of a query into the process Reads in XML from an HTTP Get into the process Posts a value to an HTTP form Step can be scripted in Java. Step that allows branching in a process Logging of call details into a database, display of active calls via a JSP page and display of historical data via Crystal Reports. 10.3 Rule Name Boolean Rule Text Contains Rule Text Equals Rule Equals Rule Greater Than Rule Less Than Rule Loop Rule Random Variable Rule Text Exists Variable Rule Name Rule-Set Rule Every X Times Rule HTTP Call Rule EJB Call Rule Database Query Rule Web Service Call Rule Java Scripted Rule Java Script Scripted Rule Always True False Rule Description Takes a Boolean variable and determines if the value equals true or false. Evaluates whether a variable contains a specified value. Evaluates text to see if the value matches up with another value Determines if one value equals another. Evaluates whether one variable is greater than a specified value. Evaluates whether one variable is less than a specified value. Based on looping, the rule returns a true or false based on a configurable number of times. Returns true a configurable percentage of times. Determines whether text is present in a specified variable. Description Imbeds a logical tree into decision point. Evaluates true every X amount of times. Evaluates the result of an HTTP call against a variable. Evaluates the result of an EJB call against a variable. Evaluates the result of a database query against a variable. Evaluates the result of a web service call against a variable. Allows a rule to be scripted in Java and compiled at runtime. Allows a rule to be implemented in JavaScript. Rule that always returns true/false.
About Avaya Avaya enables businesses to achieve superior results by designing, building and managing their communications infrastructure and solutions. For over one million businesses worldwide, including more than 90 percent of the FORTUNE 500, Avaya s embedded solutions help businesses enhance value, improve productivity and create competitive advantage by allowing people to be more productive and create more intelligent processes that satisfy customers. For businesses large and small, Avaya is a world leader in secure, reliable IP telephony systems, communications applications and full life-cycle services. Driving the convergence of embedded voice and data communications with business applications, Avaya is distinguished by its combination of comprehensive, world-class products and services. Avaya helps customers across the globe leverage existing and new networks to achieve superior business results. COMMUNICATIONS AT THE HEART OF BUSINESS avaya.com 2005 Avaya Inc. All Rights Reserved. Avaya and the Avaya Logo are trademarks of Avaya Inc. and may be registered in certain jurisdictions. All trademarks identified by the, SM or TM are registered trademarks, service marks or trademarks, respectively, of Avaya Inc., with the exception of FORTUNE 500 which is a registered trademark of Time Inc. All other trademarks are the property of their respective owners. Printed in the U.S.A. 03/05 EF-LB2432-01