DE60105063T2 - DEVELOPMENT TOOL FOR A DIALOG FLOW INTERPRETER - Google Patents

DEVELOPMENT TOOL FOR A DIALOG FLOW INTERPRETER Download PDF

Info

Publication number
DE60105063T2
DE60105063T2 DE60105063T DE60105063T DE60105063T2 DE 60105063 T2 DE60105063 T2 DE 60105063T2 DE 60105063 T DE60105063 T DE 60105063T DE 60105063 T DE60105063 T DE 60105063T DE 60105063 T2 DE60105063 T2 DE 60105063T2
Authority
DE
Germany
Prior art keywords
computer
data file
dfi
human
application
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
DE60105063T
Other languages
German (de)
Other versions
DE60105063D1 (en
Inventor
Wilmer Karl SCHOLZ
S. James IRWIN
Samir Tamri
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Unisys Corp
Original Assignee
Unisys Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from US09/702,224 external-priority patent/US7024348B1/en
Application filed by Unisys Corp filed Critical Unisys Corp
Application granted granted Critical
Publication of DE60105063D1 publication Critical patent/DE60105063D1/en
Publication of DE60105063T2 publication Critical patent/DE60105063T2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M3/00Automatic or semi-automatic exchanges
    • H04M3/42Systems providing special services or facilities to subscribers
    • H04M3/487Arrangements for providing information services, e.g. recorded voice services or time announcements
    • H04M3/493Interactive information services, e.g. directory enquiries ; Arrangements therefor, e.g. interactive voice response [IVR] systems or voice portals
    • H04M3/4936Speech interaction details
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/38Creation or generation of source code for implementing user interfaces
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M2203/00Aspects of automatic or semi-automatic exchanges
    • H04M2203/35Aspects of automatic or semi-automatic exchanges related to information services provided via a voice call
    • H04M2203/355Interactive dialogue design tools, features or methods

Landscapes

  • Engineering & Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)
  • Machine Translation (AREA)
  • Devices For Executing Special Programs (AREA)

Abstract

A computer software product (200) is used to create applications for enabling a dialogue between a human and a computer. The software product provides a programming tool (210) that insulates software developers from time-consuming, technically-challenging programming tasks by enabling the developer to specify generalized instructions to a Dialogue Flow Interpreter (232), which invokes functions to implement a speech application, automatically populating a library (540) with dialogue objects that are available to other applications. The speech applications created through the DFI may be implemented as COM (component object model) objects, and so the applications can be easily integrated into a variety of different platforms. In addition, "translator" object classes are provided to handle specific types of data, such as currency, numeric data, dates, times, string variables, etc. These translator object classes have utility either as part of the DFI library or as a sub-library separate from dialogue implementation.

Description

GEBIET DER ERFINDUNGFIELD OF THE INVENTION

Die vorliegende Erfindung betrifft allgemein sprachaktivierte interaktive Sprachreaktionssysteme (IVR) und auf ähnliche Systeme, die einen Dialog zwischen einem Menschen und einem Computer einbeziehen. Im Besonderen stellt die vorliegende Erfindung ein Entwicklungswerkzeug für einen Dialogflussinterpreter zum Implementieren von maschinennahen Dialogdetails als auch von Übersetzerobjektklassen zum Handhaben von spezifischen Datentypen (z. B. Währung, Datumsangaben, Stringvariablen, usw.) bereit.The The present invention relates generally to voice-activated interactive Speech Response Systems (IVR) and similar systems using a Involve dialogue between a human and a computer. in the In particular, the present invention provides a development tool for one Dialog flow interpreter for implementing near-machine dialog details as well as translator object classes to handle specific data types (eg currency, dates, String variables, etc.).

HINTERGRUND DER ERFINDUNGBACKGROUND OF THE INVENTION

Computer sind in unserem Alltag allgegenwärtig geworden. Heute verrichten Computer viel mehr als nur zu rechnen: Supermarktscanner berechnen unsere Lebensmittelrechnung während sie das Ladeninventar verfolgen; computerisierte Fernsprechvermittlungsstellen lenken Millionen von Verbindungen; Bankautomaten (ATMs) gestatten es Menschen, Banktransaktionen von nahezu überall zu führen – die Liste lässt sich weiter fortsetzen. Für die meisten Menschen ist es schwer, sich einen einzigen Tag vorzustellen, an dem sie nicht in irgendeiner Weise mit einem Computer interagieren.computer are omnipresent in our everyday lives become. Today computers do much more than just calculate: Supermarket scanners charge our food bill while they do that Track store inventory; computerized telephone exchanges channel millions of connections; ATMs (ATMs) allow It allows people to conduct banking transactions from just about anywhere - the list goes down continue. For most people find it hard to imagine a single day where they do not interact in any way with a computer.

Früher waren Computerbenutzer gezwungen, mit Computern nach den Bedingungen des Computers zu interagieren – über die Tastatur oder die Maus oder seit Neuerem über die Tastaturwahl auf einem Telefon (als DTMF bezeichnet – für Zweiton-Mehrfrequenz). Der Trend bewegt sich jedoch mehr und mehr dahin, Interaktionen zwischen Computern einfacher und benutzerfreundlicher zu gestalten. Ein Weg, um Interaktionen zwischen Computern und Menschen freundlicher zu gestalten, besteht darin, es Menschen und Computern zu gestatten, über gesprochene Worte zu interagieren.Were earlier Computer users are forced to use computers under the terms of the computer to interact - about the Keyboard or the mouse or since more recent on the keyboard choice on one Telephone (referred to as DTMF - for two-tone multifrequency). However, the trend is moving more and more, interactions between computers easier and more user-friendly. A way to make interactions between computers and people friendlier to make it possible to allow people and computers to talk about Words to interact.

Um einen Dialog zwischen einem Menschen und einem Computer zu ermöglichen, benötigt der Computer zuerst eine Spracherken nungsfähigkeit, um die gesprochenen Worte zu erfassen und sie in irgendeine Form von Computer-lesbaren Daten umzuwandeln, wie z. B. in einen einfachen Text. Als Nächstes benötigt der Computer irgendeinen Weg, um die Computer-lesbaren-Daten zu analysieren und zu bestimmen, was jene Worte in ihrer Verwendung bedeuteten. Eine höhere sprach-aktivierte, stimm-aktivierte oder natürliche Sprache verstehende Anwendung arbeitet typischerweise, indem sie einen schrittweise gesprochenen Dialog zwischen dem Benutzer und dem Computersystem führt, auf dem die Anwendung läuft. Beim Verwenden von herkömmlichen Verfahren legt der Entwickler von derartigen höheren Anwendungen den Quellcode fest, der jeden möglichen Dialog und jeden Schritt von jedem Dialog implementiert. Um eine robuste Anwendung zu implementieren, sieht der Entwickler voraus und handhabt in der Software auf jede mögliche Eingabeaufforderung jede mögliche Benutzerantwort, egal ob derartige Antworten erwartet oder unerwartet sind. Die Last auf dem Entwickler für die höhere Anwendung ist beträchtlich, um derartige maschinennahe Details zu handhaben.Around to allow a dialogue between a human and a computer, needed the computer first has a speech recognition capability to the spoken Capture words and translate them into some form of computer readable To convert data, such as B. in a simple text. Next needed the Computer any way to analyze the computer-readable data and to determine what those words meant in their use. A higher one language-enabled, voice-activated or natural language understanding Application typically works by taking a step-by-step approach spoken dialogue between the user and the computer system leads, on which the application is running. When using conventional Method, the developer of such higher applications sets the source code solid, any dialogue and implemented every step of every dialogue. To be a robust To implement the application, the developer looks ahead and manages in the software at every possible Prompt any possible User response, whether such answers are expected or unexpected are. The load on the developer for the higher application is considerable to handle such machine-level details.

Da die Nachfrage nach sprach-aktivierten Anwendungen gestiegen ist, ist somit die Nachfrage nach Entwicklungressourcen gestiegen. Gegenwärtig übersteigt die Nachfrage nach sprach-aktivierten Anwendungen die zur Codierung der Anwendungen erhältlichen Entwicklungsressourcen. Auch die Nachfrage nach Entwicklern mit der notwendigen Sachkenntnis, um die Anwendungen zu schreiben, übersteigt die Kapazität der Entwickler, die über diese Sachkenntnis verfügen. Folglich besteht eine Notwendigkeit, den Entwicklungsprozess von interaktiven Sprachanwendungen zu vereinfachen und voranzutreiben.There the demand for voice-activated applications has risen, Thus, the demand for development resources has increased. Currently exceeds the demand for voice-activated applications the development resources available to encode the applications. Also, the demand for developers with the necessary expertise, to write the applications exceeds the capacity of the developers, the above to have this expertise. Consequently, there is a need to change the process of development Simplify and accelerate interactive speech applications.

Zusätzlich zu der Zeitdauer, die benötigt wird, um sprachaktivierte Anwendungen zu entwickeln und zu der Fertigkeitsstufe, die erforderlich ist, um diese Systeme zu entwickeln, besteht ein weiterer Nachteil der gegenwärtigen Form von sprach-aktivierter Anwendungsentwicklung darin, dass sie verkäuferspezifisch ist, was einer Wiederverwendung des Codes deutlich entgegenwirkt, wenn der Verkäufer wechselt, und anwendungsspezifisch ist, was bedeutet, dass ein bereits geschriebener Code für eine andere Anwendung nicht wiederverwendet werden kann. Somit besteht auch eine Notwendigkeit, in der Lage zu sein, ein verkäufer-unabhängiges System und einen wiederverwendbaren Code hervorzubringen.In addition to the amount of time it takes to develop voice-activated applications and the skill level, It is necessary to develop these systems further disadvantage of the present Form of language-enabled Application development in that it is seller specific, what a Reuse the code significantly counteracts when the seller changes, and application specific, which means that an already written Code for another application can not be reused. Thus exists also a need to be able, a vendor-independent system and to produce a reusable code.

Ein zusätzlicher Hintergrund zu IVR-Systemen kann im US-Patent 6.094.635 vom 25. Juli 2000 mit dem Titel "System and Method for Speech Enabled Application (System und Verfahren für eine sprach-aktivierte Anwendung)"; im US-Patent 5.995.918 vom 30. November 1999 "System and Method for Creating a Language Grammar using a Spreadsheet or Table Interface (System und Verfahren zum Erschaffen einer Programmiersprachengrammatik, die eine Tabellenkalkulations- oder Tabellenschnittstelle verwendet)" und im US-Patent 6.510.411 vom 21. Januar 2003 "Task Oriented Dialog Model, and Manager (Aufgabenorientiertes Dialogmodell und Verwalter)" gefunden werden. Diese Patente sind gemeinsam an die Unisys Corporation übertragen worden.One additional Background to IVR systems can be found in US patent 6,094,635 issued on July 25, 2000 the title "System and Method for Speech Enabled Application (System and Procedures for a voice-activated Application) "; U.S. Patent 5,995,918, issued November 30, 1999, "System and Method for Creating a Language Grammar using a Spreadsheet or Table Interface (system and method to create a programming language grammar that is a spreadsheet or table interface) "and in US Patent 6,510,411 of 21. January 2003 "Task Oriented Dialog Model, and Manager (Task-Oriented Dialogue Model and steward) " become. These patents are commonly assigned to Unisys Corporation Service.

ZUSAMMENFASSUNG DER ERFINDUNGSUMMARY OF THE INVENTION

Die vorliegende Erfindung wird in den angefügten Ansprüchen definiert und bezieht sich auf, ist aber nicht notwendigerweise beschränkt auf, Computersoftwareerzeugnisse, die dazu verwendet werden, um Anwendungen zum Ermöglichen eines Dialogs zwischen einem Menschen und einem Computer hervorzubringen. Eine derartige Anwendung könnte in irgendeiner Branche (die Verwendung im Bankwesen, Maklerwesen oder im Internet, usw. einschließend) verwendet werden, wodurch ein Benutzer einen Dialog mit einem Computer unter Verwendung z. B. eines Telefons, Funktelefons oder Mikrofons führt.The The present invention is defined and claimed in the appended claims but not necessarily limited to computer software products, which are used to enable applications to create a dialogue between a human and a computer. Such an application could in any industry (use in banking, brokerage or on the internet, etc.), whereby a user interacts with a computer using, e.g. B. a phone, cellular phone or microphone leads.

Die vorliegende Erfindung stellt die zuvor genannten Notwendigkeiten zufrieden, indem sie ein Entwicklungswerkzeug bereitstellt, das Softwareentwickler von zeitintensiven, technisch herausfordernden Entwicklungsaufgaben löst, indem es dem Entwickler gestattet, verallgemeinerte Befehle an das Entwicklungswerkzeug für einen Dialogflussinterpreter (DFI) oder das DFI-Werkzeug festzulegen. Eine Anwendung instantiiert ein Objekt (d. h. das DFI-Objekt), wobei das Objekt dann Funktionen aufruft, um die Sprachanwendung zu implementieren. Das DFI-Werkzeug besetzt automatisch eine Bibliothek mit Dialogobjekten, die für andere Anwendungen verfügbar sind.The The present invention provides the aforementioned needs Satisfied by providing a development tool that Software developer of time-consuming, technically challenging Solve development tasks, by allowing the developer to generalize commands to the development tool for one Dialog Flow Interpreter (DFI) or the DFI tool. An application instantiates an object (that is, the DFI object), where the object then call functions to implement the speech application. The DFI tool automatically populates a library of dialog objects, the for other applications available are.

Die Sprachanwendungen, die durch das DFI-Werkzeug hervorgebracht wurden, können als COM-Objekte (Komponentenobjektmodell) implementiert werden, und somit können die Anwendungen einfach in eine Vielzahl von unterschiedlichen Plattformen integriert werden. Eine Anzahl von unterschiedlichen Spracherkennungsmaschinen kann auch unterstützt werden. Die spezielle Spracherkennungsmaschine, die in einer speziellen Anwendung verwendet wird, kann einfach gewechselt werden.The Voice applications produced by the DFI tool, can implemented as COM objects (component object model), and thus can the applications easily into a variety of different platforms to get integrated. A number of different speech recognition engines can also support become. The special speech recognition engine, which in a special Application is used, can be easily changed.

Ein weiterer Aspekt der vorliegenden Erfindung ist die Bereitstellung von "Übersetzer"-Objektklassen, die entworfen wurden, um spezifische Datentypen wie z. B. Währung, numerische Daten, Datumsangaben, Zeitangaben, Stringvariablen, usw. zu handhaben. Diese Übersetzerobjektklassen können einen Nutzen entweder als ein Teil der DFI-Bibliothek von Objekten haben, die oben zum Implementieren von Dialogen beschrieben wurden, oder als eine Unter-Bibliothek, die von einer Dialogimplementierung getrennt ist.One Another aspect of the present invention is the provision of "translator" object classes that designed to handle specific types of data, such as Eg currency, numeric To handle dates, dates, times, string variables, etc. These translator object classes can one Benefit either as part of the DFI library of objects, described above for implementing dialogs, or as a sub-library, separated from a dialog implementation is.

Andere Aspekte der vorliegenden Erfindung werden unten beschrieben.Other Aspects of the present invention will be described below.

KURZE BESCHREIBUNG DER ZEICHNUNGENBRIEF DESCRIPTION OF THE DRAWINGS

1 stellt ein herkömmliches IVR-System schematisch dar. 1 schematically illustrates a conventional IVR system.

2 ist ein Flussdiagramm eines Verfahrens gemäß der vorliegenden Erfindung für die Entwicklung einer Sprachanwendung. 2 Figure 4 is a flowchart of a method according to the present invention for the development of a speech application.

3 ist ein Flussdiagramm, das eine Sprachanwendung aus dem Stand der Technik darstellt. 3 Fig. 10 is a flowchart illustrating a prior art voice application.

4 ist ein Flussdiagramm eines Verfahrens gemäß der vorliegenden Erfindung für die Entwicklung eines Entwurfs und die Erzeugung einer Datendatei für eine Sprachanwendung. 4 Figure 4 is a flowchart of a method according to the present invention for developing a design and generating a data file for a speech application.

5 ist ein Flussdiagramm eines Verfahrens gemäß der vorliegenden Erfindung für die Erzeugung einer Sprachanwendung. 5 Figure 4 is a flow chart of a method according to the present invention for generating a speech application.

6(a) und 6(b) liefern einen Vergleich der Menge an Code, die von einem Entwickler geschrieben wurde, der ein System aus dem Stand der Technik verwendet, mit derjenigen, die von einem Entwickler geschrieben wurde, der ein System gemäß der vorliegenden Erfindung verwendet. 6 (a) and 6 (b) provide a comparison of the amount of code written by a developer using a prior art system with that written by a developer using a system according to the present invention.

7 ist ein schematisches Diagramm, das Funktionen und gemeinsam benutzte Objekte gemäß der vorliegenden Erfindung darstellt. 7 FIG. 12 is a schematic diagram illustrating functions and shared objects according to the present invention. FIG.

DETAILLIERTE BESCHREIBUNG DER BEVORZUGTEN AUSFÜHRUNGSFORMENDETAILED DESCRIPTION THE PREFERRED EMBODIMENTS

Überblickoverview

Die 1 stellt einen herkömmlichen IVR-Typ des Systems dar. In einem derartigen System kommuniziert eine Person (nicht gezeigt) mit einem Server-Computer 110. Der Server-Computer 110 ist mit einem Datenbankspeichersystem 112 verbunden, das den Code und die Daten zum Steuern des Betriebs vom Server-Computer 110 beim Führen eines Dialogs mit dem Anrufer enthält. Der Server-Computer 110 ist wie gezeigt mit einem öffentlichen Telefonnetz (PSTN) 114 verbunden, das dann wiederum einen Zugriff für Anrufer über Telefone wie z. B. das Telefon 116 bereitstellt. Wie erwähnt, werden derartige sprach-aktivierte Systeme in einer breiten Vielzahl von Anwendungen verwendet, welche Voice-Mail, Call-Center, Bankwesen, usw. einschließen.The 1 represents a conventional IVR type of the system. In such a system, a person (not shown) communicates with a server computer 110 , The server computer 110 is with a database storage system 112 connected the code and data to control the operation of the server computer 110 when conducting a dialog with the caller. The server computer 110 is as shown with a public telephone network (PSTN) 114 connected, which in turn access for callers on phones such. For example, the phone 116 provides. As mentioned, such voice-activated systems are used in a wide variety of applications, including voice mail, call centers, banking, and so on.

Früher hätten Sprachanwendungsentwickler eine Spracherkennungsmaschine und einen Code, ein anwendungs-spezifisches und spracherkennungsmaschinen-spezifisches System gewählt, das vom Entwickler gefordert hat, jedes einzelne Detail des Dialogs zu handhaben und das gesamte Universum von möglichen Ereignissen vorauszusehen und bereitzustellen. Derartige Anwendungen mussten für eine neue Anwendung vollständig neugeschrieben oder eine unterschiedliche Spracherkennungsmaschine musste verwendet werden.Previously, speech application developers would have chosen a speech recognition engine and code, an application-specific and speech recognition engine-specific system that required the developer to handle every single detail of the dialogue and anticipate and provide the entire universe with possible events. Such applications had to for a new application completely rewritten or a different speech recognition engine had to be used.

Im Gegensatz zum Stand der Technik und in Bezug auf die 2 stellt die vorliegende Erfindung ein System bereit, das Entwickler von zeitintensiven, maschinennahe Programmierungsaufgaben gelöst, indem es dem Entwickler ermöglicht, verallgemeinerte Befehle über den Fluss einer Konversation (das potenziell viele Zustände oder Wechsel einer Konversation einschließt) an ein Entwicklungswerkzeug für einen Dialogflussinterpreter (DFI) 210 festzulegen, auf das über eine Programmierer-freundliche grafische Schnittstelle (nicht gezeigt) zugegriffen werden kann. Das DFI-Entwurfswerkzeug 210 erzeugt eine Datendatei 220 (eine Benutzeroberfläche der Anwendung). Wenn das aufrufende Programm (Sprachanwendung) 230, das vom Entwickler in einer Vielzahl von Programmiersprachen geschrieben sein kann, ausgeführt wird, instantiiert das aufrufende Programm 230 den Dialogflussinterpreter 232, wobei es dem Interpreter 232 die Datendatei 220 bereitstellt, die vom DFI-Entwurfswerkzeug 210 erzeugt wurde. Der Dialogflussinterpreter 232 ruft dann Funktionen des DFI-Objekts auf, um die Sprachanwendung zu implementieren, wobei er sämtliche Details der Zustandshandhabung und des Konversationsflusses bereitstellt, die zuvor der Programmierer schreiben musste. Nachdem das aufrufende Programm 230 einmal geschrieben wurde, kann es für verschiedene Anwendungen verwendet werden. Die Anwendungen unterscheiden sich von einander im Inhalt der Eingabeaufforderungen und der erwarteten Antworten und in der resultierenden Verarbeitung (Verzweigungen und Konversationsfluss) und in der verwendeten Spracherkennungsmaschine, von denen sämtliche gemäß der vorliegenden Erfindung in der Datendatei 220 gespeichert sein können. Folglich kann das bestehende aufrufende Programm 230 durch Wechseln der Datendatei 220 für unterschiedliche Anwendungen verwendet werden.In contrast to the state of the art and in terms of the 2 The present invention provides a system that solves developers of time-consuming, near-machine programming tasks by allowing the developer to generalize commands about the flow of a conversation (potentially including many states or conversions) to a Dialog Flow Interpreter (DFI) development tool. 210 which can be accessed via a programmer-friendly graphical interface (not shown). The DFI Design Tool 210 creates a data file 220 (a user interface of the application). When the calling program (speech application) 230 , which may be written by the developer in a variety of programming languages, instantiates the calling program 230 the dialog flow interpreter 232 , being the interpreter 232 the data file 220 that is provided by the DFI Design Tool 210 was generated. The dialog flow interpreter 232 then calls functions of the DFI object to implement the speech application, providing all the state handling and conversation flow details previously required by the programmer. After the calling program 230 Once written, it can be used for various applications. The applications differ from each other in the content of the prompts and the expected responses and in the resulting processing (branches and conversational flow) and in the speech recognition engine used, all of which are in the data file according to the present invention 220 can be stored. Consequently, the existing calling program may 230 by changing the data file 220 be used for different applications.

Das Entwicklungswerkzeug 200 speichert automatisch den wiederverwendbaren Code von irgendeiner Detailstufe, wobei es Dialogobjekte einschließt, in einer Bibliothek, die für die Verwendung in anderen Anwendungen zugreifbar gemacht werden kann. Ein Dialogobjekt ist eine Sammlung von einem oder mehreren Dialogzuständen, welche die Verarbeitung einschließt, die im Aneinanderhängen der Zustände eingeschlossen ist.The development tool 200 automatically stores the reusable code from any level of detail, including dialog objects, in a library that can be made accessible for use in other applications. A dialog object is a collection of one or more dialog states, including the processing involved in concatenating the states.

Da die durch das Entwicklungsprogrammierwerkzeug erschaffenen Sprachanwendungen als ausführbare Objekte implementiert werden, können die Anwendungen einfach in eine Vielzahl von verschiedenen Plattformen integriert werden. Eine Anzahl von verschiedenen Spracherkennungsmaschinen kann unterstützt werden. Die spezielle Spracherkennungsmaschine, die in einer speziellen Anwendung verwendet wird, kann einfach gewechselt werden. Wir werden nun die vorliegende Erfindung detaillierter erklären, indem sie mit dem Stand der Technik verglichen wird.There the speech applications created by the development programming tool as executable Objects can be implemented, the Applications easily into a variety of different platforms to get integrated. A number of different speech recognition engines can support become. The special speech recognition engine, which in a special Application is used, can be easily changed. We will Now, explaining the present invention in more detail by contacting with the state the technology is compared.

Stand der TechnikState of the art

Wieder mit Bezug auf die 1 ist der gewöhnlichste Weg für einen Benutzer in einem Dialog-basierten System mit einem Computer zu kommunizieren über ein Mikrofon oder über ein Telefon 116, das über ein Fernsprechvermittlungssystem 114 mit einem Computer verbunden ist, auf dem die Software, die es dem Menschen und dem Computer zu interagieren ermöglicht, in einer Datenbank 112 gespeichert ist. Jede Interaktion zwischen dem Computer und dem Benutzer, in welcher der Computer versucht, ein bestimmtes Stück von Information vom Benutzer herauszuholen, wird ein Zustand oder ein Wechsel genannt. In jedem Zustand beginnt der Computer mit einer Eingabeaufforderung und der Benutzer gibt eine gesprochene Antwort. Die Anwendung muss das, was der Benutzer gesagt hat, erkennen und interpretieren, die passende auf dieser Antwort basierende Handlung ausführen und dann die Konversation zu dem nächsten Zustand oder Wechsel führen. Die Schritte sind wie folgt:

  • 1. Der Computer gibt eine Eingabeaufforderung heraus.
  • 2. Der Benutzer (oder der Anrufer) antwortet.
  • 3. Der Spracherkenner wandelt die Antwort in eine Computerlesbare Form um.
  • 4. Die Anwendung interpretiert die Antwort und handelt dementsprechend. Dies kann zum Beispiel einen Datenbankzugriff für eine Abfrage einschließen.
  • 5. Die Anwendung kann dem Benutzer antworten.
  • 6. Die Schritte 1 bis 5 können wiederholt werden bis eine zufriedenstellende Antwort vom Benutzer empfangen wird.
  • 7. Die Anwendung geht in den nächsten Zustand über.
Again with respect to the 1 The most common way for a user in a dialogue-based system to communicate with a computer is over a microphone or over a telephone 116 that via a telephone exchange system 114 Connected to a computer on which the software that allows the human and the computer to interact is stored in a database 112 is stored. Any interaction between the computer and the user in which the computer attempts to extract a particular piece of information from the user is called a state or change. In each state, the computer starts with a prompt and the user gives a spoken answer. The application must recognize and interpret what the user has said, execute the appropriate action based on that response, and then lead the conversation to the next state or transition. The steps are as follows:
  • 1. The computer issues a prompt.
  • 2. The user (or the caller) answers.
  • 3. The speech recognizer converts the answer into a computer-readable form.
  • 4. The application interprets the answer and acts accordingly. This may include, for example, database access for a query.
  • 5. The application can respond to the user.
  • 6. Steps 1 to 5 can be repeated until a satisfactory response is received from the user.
  • 7. The application goes to the next state.

Somit schließt eine Dialog-basierte Sprachanwendung einen Satz von Zuständen ein, die einen Benutzer zu seinem Ziel führen. Zuvor musste der Entwickler jeden Schritt im Dialog codieren, indem er für jedes mögliche Ereignis und jede mögliche Antwort im Universum der möglichen Ereignisse codiert hat, eine zeitintensive und technisch komplexe Aufgabe. Der Entwickler musste ein interaktives Sprachausgabesystem (IVR) auswählen, wie zum Beispiel das Parity, und die Anwendung in der Programmiersprache codieren, die mit jener Sprache verbunden war, wobei eine Spracherkennungsmaschine wie Nuance, Lernout und Hauspie oder eine andere Spracherkennungsmaschine verwendet wurde, die in die IVR-Umgebung einschließbar war.Consequently includes a dialog-based speech application sets a set of states, leading a user to his destination. Previously, the developer had to code each step in the dialogue by checking for any event and any response in the universe of possible Encoded events, a time-consuming and technically complex Task. The developer needed an interactive voice output system Select (IVR), such as the parity, and the application in the programming language encoded with that language using a speech recognition engine like Nuance, Lernout and Hauspie or another speech recognition engine which was included in the IVR environment.

Sprachobjekte sind kommerziell erhältlich. Mit Bezug auf die 3 stellen die Sprachobjekte 322, 324 vorgefertigte Bits von sämtlichen Dingen dar, die in eine Sprachhandlung einfließen, typischerweise eine Eingabeaufforderung, eine Grammatik und eine Antwort. In diesem Schema wird ein Sprachobjekt, zum Beispiel das "Hole die Sozialversicherungsnummer" 322, von einem Verkäufer bezogen. Ein Entwickler schreibt den Software-Code 320 in der für die ausgewählten Sprachobjekte erforderlichen Programmiersprache, und platziert das bezogene Sprachobjekt "Hole die Sozialversicherungsnummer" 322 in seiner Software. Wenn das Programm ausgeführt wird und einen Punkt erreicht, an dem die Sozialversicherungsnummer benötigt wird, dann wird das Sprachobjekt "Hole die Sozialversicherungsnummer" 322 aufgerufen. Die Anwendung kann sich geringfügig geändert haben, dadurch wie die Frage gestellt wurde, aber der Flexibilitätsbereich des Sprachobjekts ist beschränkt. Nachdem die Antwort vom Benutzer erhalten wurde, wird die Steuerung an die Anwendung 320 zurückgegeben. Die vom Entwickler geschriebene Anwendung 320 muss dann den Übergang zu dem nächsten Zustand, die "Hole die PIN-Nummer" 324 usw., handhaben. Sprachobjekte werden an einem spezifischen Entwicklungssystem (z. B. das "Speech Channels" genannte "IVR-System" von Nuance und das als ein integriertes Anwendungssoftwarepaket bezeichnete "IVR-System" von SpeechWorks) implementiert. Diese wiederverwendbaren Teile sind nur innerhalb der Umgebung wiederverwendbar, für die sie erstellt wurden. Zum Beispiel wird eine SpeechWorks-Implementierung hiervon, die "Dialog Modules" genannt wird, nur innerhalb dem integrierten SpeechWorks-Anwendungssoftwarepaket funktionieren. Die Kernlogik ist nicht wiederverwendbar, weil es an die Implementierungsplattform gebunden ist.Language objects are commercially available. With reference to the 3 put the language objects 322 . 324 preformed bits of all things that flow into a speech action, typically a prompt, a grammar, and an answer. In this scheme, a language object, for example, the "Get the Social Security Number" 322 , sourced from a seller. A developer writes the software code 320 in the programming language required for the selected language objects, and places the referenced language object "Get Social Security Number" 322 in his software. When the program runs and reaches a point where the social security number is needed, the language object "Get Social Security Number" 322 called. The application may have changed slightly as the question was asked, but the flexibility scope of the language object is limited. After the response has been received from the user, control is sent to the application 320 returned. The application written by the developer 320 then has to transition to the next state, the "get the PIN number" 324 etc., handle. Speech objects are implemented on a specific development system (e.g., Nuance's "Speech Channels" and the SpeechWorks "IVR system", referred to as an integrated application software package). These reusable parts are reusable only within the environment for which they were created. For example, a SpeechWorks implementation called "Dialog Modules" will only work within the integrated SpeechWorks application software package. The core logic is not reusable because it is tied to the implementation platform.

DFI-EntwurfswerkzeugDFI design tool

Im Gegensatz, gemäß der vorliegenden Erfindung und in Bezug auf die 4 benutzt der Entwickler das DFI-Entwurfswerkzeug 400, um einen Entwurf der gesamten Anwendung einzugeben, wie im Schritt 410 dargestellt ist, der viele derartige Zustände wie "Hole die Sozialversicherungsnummer", "Hole die PIN-Nummer" und so weiter einschließt. Sobald die Anwendung im Simulator erprobt worden ist, Schritt 420 (siehe als Referenz das Patent mit der Seriennummer 09/417.166), können Dateien erzeugt werden, die diesen Entwurf darstellen, Schritte 440 und 450.In contrast, according to the present invention and in relation to the 4 the developer uses the DFI design tool 400 to enter a draft of the entire application as in step 410 which includes many such states as "Get the Social Security Number", "Get the PIN Number" and so on. Once the application has been tested in the simulator, step 420 (See patent serial number 09 / 417,166 for reference), files may be generated that represent this design steps 440 and 450 ,

Wie in der 5 gezeigt wird, instantiiert die Softwareanwendung 510, die vom Entwickler in irgendeiner der Vielzahl von Programmiersprachen codiert wurde, den Dialogflussinterpreter 530 und sagt ihm, den Entwurf zu interpretieren, der in der Datei 520 festgelegt ist, die oben vom DFI-Entwurfswerkzeug erzeugt wurde. Der Dialogflussinterpreter 530 steuert den Fluss durch die Anwendung, die den gesamten zugrundeliegenden Code 540 liefert, den zuvor der Entwickler schreiben musste.Like in the 5 is shown instantiating the software application 510 , which has been encoded by the developer in any of a variety of programming languages, the dialog flow interpreter 530 and tell him to interpret the design in the file 520 set up by the DFI design tool above. The dialog flow interpreter 530 Controls the flow through the application that handles all the underlying code 540 supplies that the developer had to write before.

Wie aus der 6A, 612 und der 6B, 622 ersichtlich ist, wird die Menge an Code, die von einem Programmierer geschrieben werden muss, erheblich verringert. Tatsächlich kann sie in einigen Anwendungen vollkommen eliminiert werden.Like from the 6A . 612 and the 6B . 622 As can be seen, the amount of code that needs to be written by a programmer is greatly reduced. In fact, it can be completely eliminated in some applications.

DialogflussinterpreterDialogue flow interpreter

Der Dialogflussinterpreter oder der DFI der vorliegenden Erfindung stellt eine Bibliothek von "standardisierten" Objekten bereit, die maschinennahe Details von Dialogen implementieren. Der DFI kann als eine Anwendungsprogramm-Schnittstelle (API) implementiert werden, was die Implementierung von Sprachanwendungen vereinfacht. Die Sprachanwendungen können entworfen sein, indem ein Werkzeug verwendet wird, das als das DFI-Entwicklungswerkzeug bezeichnet wird. Die von der Erfindung bereitgestellte Vereinfachung rührt von der Tatsache, dass der DFI in der Lage ist, den gesamten Dialog einer Sprachanwendung vom Anfang bis zum Ende automatisch zu führen, und somit die entscheidende und oftmals komplexe Aufgabe der Dialogverwaltung eliminiert. Herkömmlich ist ein derartiger Vorgang anwendungsabhängig und erfordert deswegen eine Neuimplementierung für jede neue Anwendung. Der DFI löst dieses Problem, indem es eine "einmal Schreiben"-"oft ausgeführt"-Lösung bereitstellt.Of the Dialog Flow Interpreter or the DFI of the present invention a library of "standardized" objects ready, Implement the machine-level details of dialogs. The DFI can implemented as an application program interface (API), which simplifies the implementation of voice applications. The voice applications can be designed by using a tool called the DFI Development Tool referred to as. The simplification provided by the invention stirs up the fact that the DFI is capable of the entire dialogue to automatically guide a voice application from start to finish, and thus the crucial and often complex task of dialogue management eliminated. conventional is such a process application-dependent and therefore requires a New implementation for every new application. The DFI triggers Solve this problem by writing a "write once" - "often executed" solution provides.

Die 2 stellt die Beziehung zwischen dem DFI-Entwurfswerkzeug 210, dem Dialogflussinterpreter 232 und anderen Sprachanwendungskomponenten dar. (In diesem Diagramm stellen Block- pfeile die Richtung des Datenflusses dar.)The 2 Represents the relationship between the DFI design tool 210 , the dialog flow interpreter 232 and other speech application components. (In this diagram, block arrows represent the direction of the data flow.)

Funktionselementefunctional elements

Eine Sprachanwendung schließt eine Reihe von Übergängen zwischen Zuständen ein. Jeder Zustand besitzt seinen eigenen Satz von Eigenschaften, der die abzuspielende Eingabeaufforderung, die zu ladende Grammatik des Spracherkenners (nach dem zu horchen, was der Benutzer des Sprachsystems sagen könnte), die Erwiderung auf die Antwort eines Anrufers und Handlungen einschließt, die basierend auf jeder Antwort auszuführen sind. Der DFI verfolgt den Zustand des Dialogs zu jedem gegebenen Zeitpunkt während dem Bestehen der Anwendung und bietet Funktionen, um auf Zustandseigenschaften zuzugreifen.A Voice application closes a series of transitions between states one. Each state has its own set of properties, the prompt to play, the grammar to load the speech recognizer (after listening to what the user of the speech system could say), includes the response to a caller's response and actions that based on each answer. The DFI is following the state of the dialogue at any given time during the Pass the application and provide features to state properties access.

Mit Bezug auf die 7 ist ersichtlich, dass Zustandseigenschaften in Objekten gespeichert werden, die als "gemeinsam benutzte Objekte" (shared objects) 710 bezeichnet werden. Beispiele dieser Objekte beinhalten, sind aber nicht darauf beschränkt, ein Eingabeaufforderungsobjekt, ein Schnipselobjekt (snippet object), ein Grammatikobjekt, ein Antwortobjekt, ein Handlungsobjekt und ein Variableobjekt.With reference to the 7 it can be seen that state properties are stored in objects called "shared objects" 710 be designated. Examples of this Objects include, but are not limited to, a prompt object, a snippet object, a grammar object, a response object, an action object, and a variable object.

Beispielhaft geben die DFI-Funktionen 780 einige der oben beschriebenen Objekte zurück. Diese Funktionen schließen folgendes ein:Exemplary give the DFI functions 780 back some of the objects described above. These functions include:

"Hole die Eingabeaufforderung" 720: Gibt die passende abzuspielende Eingabeaufforderung zurück. Diese Eingabeaufforderung wird dann an die passende Tonabspielroutine für die Tonausgabe weitergegeben."Get the prompt" 720 : Returns the appropriate prompt to play. This prompt is then passed to the appropriate audio output sound playback routine.

"Hole die Grammatik" 730: Gibt die passende Grammatik für den gegenwärtigen Zustand zurück. Diese Grammatik wird dann in die Spracherkennungsmaschine geladen."Get the grammar" 730 : Returns the appropriate grammar for the current state. This grammar is then loaded into the speech recognition engine.

"Hole die Antwort" 740: Gibt ein Antwortobjekt zurück, das die aktuelle Benutzerantwort, irgendeine der Abweichungen, die diese Antwort enthalten kann, und sämtliche möglichen Handlungen, die für diese Antwort definiert sind, umfasst."Get the answer" 740 : Returns a response object that includes the current user response, any of the deviations this response may contain, and any possible actions defined for that response.

"Schreite den Zustand fort" 750: Führt den Dialog in den nächsten Zustand über."Continue the state" 750 : Returns the dialog to the next state.

Andere DFI-Funktionen werden verwendet, um Zustand-unabhängige Eigenschaften zu erlangen (d. h. globale Projekteigen schaften). Diese beinhalten, sind aber nicht darauf beschränkt:
den Projektpfad 760
den Pfad der Projekttöne
die Eingabeart (DTMF oder Ton)
die Aufschaltungsart (DTMF oder Ton)
den gegenwärtiger Zustand
den vorherigen Zustand
Other DFI functions are used to obtain state independent properties (ie global project properties). These include, but are not limited to:
the project path 760
the path of project sounds
the input type (DTMF or tone)
the connection type (DTMF or tone)
the current state
the previous state

Alternative DFI-VerwendungenAlternative DFI Uses

Das Registriergerät für die Dialog-Metrik – Weil der DFI das Interne des Übergangs zwischen den Zuständen steuert, wäre es eine einfache Angelegenheit zu zählen, wie oft ein bestimmter Zustand eingenommen wurde, zum Beispiel so, dass Statistiken darüber gesammelt werden könnten, wie eine Sprachanwendung verwendet wird oder wie eine Sprachanwendung arbeitet.The Recorder for the Dialogue Metric - Because the DFI the internal of the transition between the states controls would be It's a simple matter to count how many times a given one State was taken, for example, so that statistics collected about it could become, how a voice application is used or how a voice application is used is working.

Belastungstester für die Sprachanwendung – Weil der DFI das Interne des Übergangs zwischen den Zuständen steuert, ermöglicht das DFI-Werkzeug die Entwicklung einer Anwendung (bei der Verwendung von Text zu Sprache), die das Testen von Sprachanwendungen erleichtern würde, indem sie die menschliche Seite des Dialogs zusätzlich zur Computerseite des Dialogs vorsieht.load tester for the Speech application - Because the DFI the internal of the transition between the states controls, allows the DFI tool the development of an application (in use from text to speech) that facilitate the testing of speech applications would, by the human side of the dialogue in addition to the computer side of the Dialogs provides.

Die 7 stellt dar, wie die DFI-Funktionen 780 als eine Anwendungsprogramm-Schnittstelle (API) implementiert oder betrachtet werden können.The 7 represents how the DFI functions 780 as an application program interface (API) can be implemented or considered.

Vergleich des DFI mit SprachobjektenComparison of the DFI with language objects

Sprachobjekte (ein gewöhnliches Konzept in der Industrie) stellen vorgefertigte Bits von sämtlichen Dingen dar, die in eine "Sprachhandlung" einfließen, typischerweise eine Eingabeaufforderung (etwas zu sagen), eine Grammatik (nach etwas zu horchen) und vielleicht irgendeine Art von Reaktion auf der Seite des Systems. Das könnte das Zusammentragen eines einzelnen Informationsbits abdecken (was einfach erscheint solange man alles, was schief laufen könnte, berücksichtigt). Ein Ansatz besteht darin, eine vorgefertigte Funktionalität anzubieten (z. B. SpeechWorks (www.speechworks.com)). Ein Beispiel des grundlegenden Modells ist wie folgt: Der Entwickler kauft (z. B. von Nuance) ein Sprachobjekt, das "Hole die Sozialversicherungsnummer" genannt wird, und setzt es in sein Programm ein. Wenn das Programm einen Punkt erreicht, an dem die Sozialversicherungsnummer eines Benutzers benötigt wird, ruft der Entwickler das "Hole die Sozialversicherungsnummer"-Objekt auf. Die Anwendung könnte es ein wenig abgeändert haben, indem sie genau verändert, wie die Frage gestellt wird oder die Breite dessen ausweitet, was sie hören wird, aber der Grundwert ist die vorgefertigte Methodologie und die voreingestellte Funktionalität des Objekts.language objects (an ordinary Concept in the industry) provide prefabricated bits of all Things that flow into a "speech act", typically a prompt (something to say), a grammar (after to hear something) and maybe some kind of reaction the side of the system. This may cover the collation of a single information bit (what It seems easy as long as you consider everything that could go wrong). One approach is to offer a ready-made functionality (eg SpeechWorks (www.speechworks.com)). An example of the basic Model is as follows: The developer buys (eg from Nuance) Language object, the "hole the social security number "called will, and put it in his program. If the program has a Point reached at which the social security number of a user needed the developer calls the "hole the Social Security Number "object on. The application could it changed a little bit have, by changing exactly, how the question is asked or the breadth of what extends they hear is, but the basic value is the ready-made methodology and the default functionality of the object.

Im Entwicklungswerkzeug für einen Dialogflussinterpreter der vorliegenden Erfindung benutzt der Entwickler ein Entwurfswerkzeug (sprich das von der Unisys Corporation angebotene DFI-Werkzeug), um einen Entwurf der gesamten Anwendung einzugeben (die potenziell viele Zustände wie "Holen der SV-Nr." und "Holen. der PIN" und so weiter einschließt). Sobald diese Anwendung in einem Simulator erprobt worden ist ("Wizard of Oz"-Tester), werden Dateien erzeugt, die diesen Entwurf darstellen (z. B. MySpeechApp). Der DFI wird von der "Laufzeit"-Anwendung instantiiert (die in irgendeiner Programmiersprache geschrieben wurde) und angewiesen, den Entwurf zu interpretieren (MySpeech-App), der vom Entwurfswerkzeug erstellt wurde. Sobald die Einrichtung erfolgt ist, braucht der Anwendungscode dem DFI nur die Details dessen zu geben, was vor sich geht, um den Entwurf für das "zurückzulesen", was als nächstes zu tun ist. So kann zum Beispiel der Entwerfer eine Sequenz wie folgt angeben:
Wie ist Ihre SV-Nummer?
(nach der SV-Nummer horchen)
Wie lautet Ihre PIN?
(nach der PIN horchen)
Wollen Sie anweisen oder ein Problem melden?
(nach "Anweisen" oder "Ein Problem melden" horchen)
wenn "Anweisen", dann
Wie ist Ihre Anweisung ...
sonst wenn "Ein Problem melden", dann
Was ist Ihr Problem ...
In the development tool for a dialog flow interpreter of the present invention, the developer uses a design tool (ie, the DFI tool offered by the Unisys Corporation) to enter a design of the entire application (which potentially has many states such as "Get the SV #" and "Get the PIN "and so on). Once this application has been tested in a simulator ("Wizard of Oz" tester), files are generated that represent this design (eg MySpeechApp). The DFI is instantiated by the "runtime" application (written in any programming language) and instructed to interpret the design (MySpeech app) created by the design tool. Once set up, the application code only needs to give the DFI the details of what is going on to "read back" the design for what to do next. For example, the designer can specify a sequence as follows:
What is your SV number?
(listen for the SV number)
What is your PIN?
(listen for the PIN)
Do you want to instruct or report a problem?
(listen for "instruct" or "report a problem")
if "instruct," then
How is your statement ...
otherwise if "Report a problem", then
What is your problem ...

In diesem Fall nimmt der DFI zuerst einen Zustand ein, in dem, als das Programm gefragt hatte welche Eingabeaufforderung abzuspielen sei, es "Wie ist Ihre SV-Nummer?" antwortet und angibt, dass das Programm nach der SV-Nr. horchen soll. Sobald die Anwendung dem DFI mitgeteilt hat, dass dies ausgeführt worden ist und fortzufahren sei, fragt die Anwendung wieder den DFI, was zu sagen sei und es antwortet nun "Wie ist Ihre PIN". Der DFI fährt solange fort, direktionale Daten zu liefern, bis die Anwendung geendet hat. Der Punkt ist der, dass der DFI das "Interne" für jeden Wechsel des Dialogs (Eingabeaufforderung, nach was zu horchen, usw.) als auch den Fluss durch die Anwendung liefert.In In this case, the DFI first enters a state in which, as the program had asked which prompt to play Be it, it's like Your SV number? "Replies and indicates that the program after SV-No. should listen. As soon as the application has informed the DFI that this has been done is and should continue, the application again asks the DFI what to say and it now answers "What is your PIN". The DFI continues as long, directional Provide data until the application has ended. The point is, that the DFI is the "internal" for everyone Change of dialogue (prompt, what to listen to, etc.) as well as delivering the flow through the application.

Obwohl sie ähnliche Probleme ansprechen, ist der DFI sehr verschieden vom Modell der Sprachobjekte. Sprachobjekte richten Grundeinstellungen ein, über die sich ein Programm hinwegsetzen kann (das Programm muss das von irgendwo wissen), wohingegen der DFI die Anwendung damit versorgt, was als nächstes zu tun ist. Sprachobjekte sind starr und vorprogrammiert und von beschränktem Umfang, wohingegen der DFI für eine ganze Anwendung erstellt und dynamisch ist. Sprachobjekte sind für einen besonderen Zweck "eingestellt", nämlich dem zuvor genannten. Diese Einstellung kann auch über das DFI-Entwurfswerkzeug bereitgestellt werden. Eine andere Möglichkeit, um sich den Unterschied bewusst zu machen besteht darin, dass der DFI über das Werkzeug erstellte "kundenspezifische" Sprachfähigkeiten liefert, die das, wie sie aneinander "hängen" einschließt. Sprachobjekte stellen "vorgefertigte" Fähigkeiten (mit dem Vorteil des "Fachmannentwurfs" und der Einstellung) und ohne einen "Fluss" zwischen ihnen bereit.Even though they are similar To address problems, the DFI is very different from the model of the Language objects. Language objects set basic settings over which a program can override (the program needs that from somewhere whereas the DFI provides the application with what is known as next to do is. Language objects are rigid and preprogrammed and of limited Extent, whereas the DFI for an entire application is created and dynamic. Are language objects for one special purpose, namely the one previously mentioned. This setting can also be done through the DFI Design Tool to be provided. Another way to get aware of the difference to make is that the DFI created via the tool "custom" language skills which includes how they "hang" on each other. language objects provide "ready-made" skills (with the benefit of "professional design" and attitude) and without a "river" between them ready.

ÜbersetzerobjektklassenTranslator Object Classes

Eine Sprachanwendung muss in der Lage sein, Information in einer Form zu erlangen, welche die Software interpretieren kann. Sobald die Information erhalten wurde, kann es wünschenswert sein, diese Information in einem speziellen Sprachformat an die Außenwelt auszugeben. Gemäß der vorliegenden Erfindung ermöglichen es Übersetzerobjektklassen einem Entwickler, Parameter bereitzustellen, um Details darüber festzulegen, wie ein spezielles Stück an Information ausgeben werden sollte, und der DFI wird alles Notwendige zurückgeben, um diese Aufgabe auszuführen. Wenn zum Beispiel das gewünschte Objekt in Englisch in der Standardzeit auszugeben ist, wie spät es gegenwärtig in Belgien ist, legt der Entwickler die Sprache (Englisch), das Gebiet (Belgien), die Zeit (die momentane Zeit in Belgien) und das Format (die Standardzeit) fest, und der DFI gibt eine Programmliste von allem Erforderlichen zurück, um es dem Zuhörer zu ermöglichen, die Datenstruktur mit jenen Kennzeichen (die momentane Zeit in Belgien im Standardformat, auf Englisch gesprochen) zu hören.A Speech application must be able to provide information in a form to obtain, which the software can interpret. As soon as the Information received, it may be desirable this information in a special language format to the outside world. According to the present Invention enable it translator object classes a developer to provide parameters to set details about like a special piece should be spent on information, and the DFI will do everything necessary hand back, to perform this task. If, for example, the desired To spend object in English in the standard time is what time it is currently in Belgium is the developer, the language (English), the area (Belgium), the time (the current time in Belgium) and the format (the default time), and the DFI returns a program list of everything necessary, to the listener to enable the data structure with those marks (the current time in Belgium in standard format, spoken in English).

Wenn zum Beispiel der DFI das Eingabeauffordern beendet hat, greift der DFI auf die Funktion "Hole die Eingabeaufforderung" 720 zu, 7, die zurückgegeben worden wäre (wenn die ausgegebene Sprache eine aufgezeichnete Datei ist):

  • 1. die Datei "Es ist jetzt".wav,
  • 2. den Wert der Zeitinstanz (variabel), 12:35 nachmittags, und die zugehörigen Dateien: zwölf.wav dreißig.wav fünf.wav nachmittags.wav,
  • 3. und die Datei "in Belgien".wav.
For example, if the DFI has finished input prompting, the DFI will use the Get Command Prompt feature. 720 to, 7 that would have been returned (if the output language is a recorded file):
  • 1. the file "It's Now" .wav,
  • 2. the value of the time instance (variable), 12:35 pm, and the related files: zwölf.wav thirty.wav five.wav afternoons.wav,
  • 3. and the file "in Belgium" .wav.

Der Zuhörer würde hören: "Es ist jetzt zwölf-fünfunddreißig nachmittags in Belgien". Es sollte verstanden werden, dass das obige Beispiel nur für exemplarische Zwecke ist. Die vorliegende Erfindung einschließt auch die "Text zu Sprache" (Computererzeugte) Sprachausgabe.Of the listeners would hear: "It's now twelve-thirty-five in the afternoon in Belgium " It should be understood that the example above is exemplary only Purposes is. The present invention also includes the "text to speech" (computer generated) Voice output.

Ersatzweise, wenn der Entwickler das Objekt in seiner Anwendung unmittelbar verwenden will, ohne den DFI zu verwenden, kann die Anwendung auf den Übersetzer unmittelbar zugreifen. Der Übersetzer sendet den Wert der Zeitinstanz (12:35) und die zugehörigen Dateien zurück:
zwölf.wav
dreißig.wav
fünf.wav
nachmittags.wav
Alternatively, if the developer wants to use the object directly in his application without using the DFI, the application can immediately access the translator. The translator returns the value of the time instance (12:35) and the associated files:
zwölf.wav
dreißig.wav
fünf.wav
nachmittags.wav

Somit enthalten die Übersetzerobjektklassen Objekte, die von der Sprachanwendung verwendet werden können, die vom Entwickler oder vom DFI geschrieben wurde. Obwohl kommerziell erhältliche Sprachobjekte eine ähnliche Funktionalität bereitstellen können, liegt das Erfinderische der Übersetzerobjektklassen darin, dass der Entwickler die Steuerung der maschinennahen Details nicht verliert; wie die Information ausgegeben wird, weil der Entwickler seine eigenen zu der Klasse beizufügenden Objekte schreiben kann. Wenn ein Entwickler kommerziell erhältliche Sprachobjekte verwendet, muss der Entwickler den Flexibilitätsverlust in Kauf nehmen, um die Arbeitsweise des Sprachobjekts zu steuern. Mit Übersetzerobjekten gemäß der vorliegenden Erfindung hält der Entwickler die Steuerung der maschinennahen Details aufrecht, während die maximale Menge an Automation stets erlangt wird.Consequently the translator feature classes contain objects, which can be used by the voice application, by the developer or written by the DFI. Although commercially available language objects a similar functionality can provide lies the inventive element of the translator object classes in that the developer controls the machine-related details do not lose; as the information is issued because the developer can write his own objects to be attached to the class. If a developer uses commercially available language objects, the developer must accept the loss of flexibility to the Control the operation of the language object. With translator objects according to the present Invention stops the developer maintains control of the machine-level details, while the maximum amount of automation is always obtained.

Schlussfolgerungconclusion

Zusammenfassend stellt die vorliegende Erfindung ein System und Verfahren bereit, um interaktive Dialoge zwischen einem Menschen und einem Computer zu erzeugen, wie z. B. in einem IVR-System oder dergleichen. Es wird jedoch verstanden, dass die Erfindung verschiedene Veränderungen und alternative Konstruktionen zulässt. Es besteht keine Absicht, die Erfindung auf die hierin beschriebenen spezifischen Konstruktionen zu beschränken. Die Erfindung beabsichtigt im Gegenteil, sämtliche Veränderungen, alternative Konstruktionen und Äquivalente abzudecken, die in den Schutzumfang der Erfindung fallen. Die vorliegende Erfindung kann zum Beispiel nicht sprach-aktivierte Anwendungen unterstützen, in denen ein Computer und ein Mensch interagieren. Die vorliegende Erfindung gestattet den Wiederaufruf der Textbeschreibung einer Eingabeaufforderung, die schriftbildlich dar gestellt werden kann, wobei der Benutzer durch Eintippen in ein Bearbeitungsfeld antwortet. Mit anderen Worten sind es der Dialogfluss und die Eigenschaften von jedem Zustand, was den Kern der Erfindung darstellt und nicht die Verwirklichung des Dialogs. Eine derartige Ausführungsform kann in einem Computerspiel oder innerhalb einer Software verwendet werden, die eine Konfigurationsinformation sammelt, oder in einer Internetanwendung, die interaktiver ist als das, was einfache grafische Benutzerschnittstellentechniken (GUI) ermöglichen.In summary, the present Er provide a system and method for generating interactive dialogues between a human and a computer, such as: In an IVR system or the like. It will be understood, however, that the invention allows for various modifications and alternative constructions. There is no intention to limit the invention to the specific constructions described herein. On the contrary, the invention is intended to cover all modifications, alternative constructions and equivalents which fall within the scope of the invention. For example, the present invention may support non-voice-activated applications in which a computer and a human interact. The present invention allows the retrieval of the textual description of a prompt that can be displayed in a textual manner, with the user answering by typing in an edit field. In other words, it is the flow of dialogue and the properties of each state that is at the heart of the invention, not the realization of the dialogue. Such an embodiment may be used in a computer game or within software that collects configuration information, or in an Internet application that is more interactive than what is possible with simple graphical user interface (GUI) techniques.

Es soll auch angemerkt werden, dass die vorliegende Erfindung in einer Vielzahl von Computerumgebungen implementiert werden kann. Zum Beispiel kann die vorliegende Erfindung in Java implementiert werden, wobei sie einen direkten Zugriff aus irgendeiner Java-Programmiersprache ermöglicht. Zusätzlich kann die Implementierung von einer COM-Schicht umhüllt sein, die es irgendeiner Sprache, die das COM unterstützt, auf die Funktionen zuzugreifen gestattet, und es somit traditionellen Entwicklungsumgebungen wie Visual Basic, C/C++, usw. ermöglicht, die vorliegende Erfindung zu verwenden. Auf die vorliegende Erfindung kann auch ausgehend von Microsoft-Anwendungen zugegriffen werden, die von Word, Excel, usw. bis zum Beispiel das Visual Basic für Anwendungen (VBA) beinhalten, aber nicht darauf beschränkt sind. Herkömmliche DTMF-orientierte Systeme, wie zum Beispiel das Parity, die kommerziell erhältlich sind, können die vorliegende Erfindung in ihre Plattform einbetten. Die vorliegende Erfindung und dessen zugehörige Objekte können auch in Entwicklungsumgebungen für das World Wide Web und das Internet eingesetzt werden, wobei es der Hypertext Markup Language (HTML) und ähnlichen Protokollen ermöglicht wird, auf das DFI-Entwicklungswerkzeug und auf dessen Objekte zuzugreifen.It It should also be noted that the present invention in a Variety of computer environments can be implemented. For example For example, the present invention may be implemented in Java, wherein They provide direct access from any Java programming language allows. additionally can the implementation be wrapped by a COM layer, It can access the functions of any language that supports the COM and, therefore, it allows traditional development environments Visual Basic, C / C ++, etc., to use the present invention. On the present invention can also be accessed from Microsoft applications, from Word, Excel, etc. to the example Visual Basic for Applications (VBA) include, but are not limited to. Conventional DTMF-oriented Systems, such as parity, which are commercially available, can Embed the present invention in its platform. The present Invention and its associated Objects can also in development environments for the World Wide Web and the Internet are used, it being Hypertext Markup Language (HTML) and similar protocols are enabled, to access the DFI development tool and its objects.

Die hierin beschriebenen unterschiedlichen Techniken können in eine Hardware oder eine Software oder in eine Kombination von beidem implementiert werden. Vorzugsweise werden die Techniken in Computerprogramme implementiert, die auf programmierbaren Computern ablaufen, von denen jeder einen Prozessor, ein vom Prozessor lesbares Speichermedium (das flüchtige und nichtflüchtige Speicher und/oder Speicherelemente einschließt), wenigstens ein Eingabegerät und wenigstens ein Ausgabegerät einschließt. Der Programmcode wird auf eingegebene Daten angewendet, wobei das Eingabegerät verwendet wird, um die oben beschriebenen Funktionen auszuführen und die Ausgabeinformation zu erzeugen. Die Ausgabeinformation wird auf ein oder mehrere Ausgabegeräte angewendet. Jedes Programm wird vorzugsweise in eine höhere verfahrensorientierte oder objektorientierte Programmiersprache implementiert, um mit einem Computersystem zu kommunizieren. Die Programme können jedoch in die Assembler- oder Maschinensprache implementiert werden, wenn es erwünscht wird. In jedem Fall kann die Sprache eine kompilierte oder interpretierte Sprache sein. Jedes derartige Computerprogramm wird vorzugsweise auf einem Speichermedium oder -gerät (z. B. ein ROM oder eine Diskette) gespeichert, die von einem für einen allgemeinen oder speziellen Zweck programmierbaren Computer zum Konfigurieren und Betreiben des Computers gelesen werden kann, wenn das Speichermedium oder -gerät vom Computer gelesen wird, um die oben beschriebenen Abläufe auszuführen. Es kann auch in Erwägung gezogen werden, das System als ein Computer-lesbares Speichermedium zu implementieren, das mit einem Computerprogramm konfiguriert ist, wo das derart konfigurierte Speichermedium einen Computer dazu veranlasst, in einer spezifischen und vordefinierten Weise zu arbeiten.The Various techniques described herein can be used in a hardware or software or a combination of both be implemented. Preferably, the techniques are in computer programs implements running on programmable computers each one has a processor, a processor-readable storage medium (the fleeting and non-volatile memory and / or memory elements), at least one input device and at least an output device includes. The program code is applied to input data, with the input device is used to perform the functions described above and to generate the output information. The output information is on one or more output devices applied. Each program is preferably in a higher procedural or object-oriented programming language implemented with to communicate with a computer system. However, the programs can into the assembler or Machine language can be implemented, if desired. In any case, the language can be either compiled or interpreted Be a language. Any such computer program is preferred on a storage medium or device (eg, a ROM or a Floppy disk), which is of one for a general or special purpose Purpose programmable computer for configuring and operating the computer can be read when the storage media or device from the computer is read to carry out the above-described operations. It may also be considered will implement the system as a computer-readable storage medium, which is configured with a computer program where configured Storage medium causes a computer to work in a specific and work in a predefined way.

Obwohl oben eine exemplarische Implementierung der Erfindung im Detail beschrieben wurde, wird der Fachmann leicht verstehen, dass in den beispielhaften Ausführungsformen viele zusätzliche Veränderungen möglich sind, ohne wesentlich von den neuen Lehren und Vorteilen der Erfindung abzuweichen. Dementsprechend ist es beabsichtigt, diese und sämtliche derartige Veränderungen innerhalb des Schutzumfangs dieser Erfindung wie in den angefügten Ansprüchen definiert wird zu umfassen.Even though above, an exemplary implementation of the invention in detail The person skilled in the art will easily understand that in the exemplary embodiments many extra changes possible are without material to the new teachings and advantages of the invention departing. Accordingly, it is intended that these and all such changes within the scope of this invention as defined in the appended claims will include.

Claims (11)

Ein Verfahren zur Entwicklung einer Dialog-aktivierten Anwendung zum Ausführen auf einem Computer, die es einem Menschen und einem Computer ermöglicht, zu interagieren, das die folgenden Schritte umfasst: (a) Eingeben von Befehlen, die den Fluss einer Konversation zu einem Entwurfswerkzeug festlegen, wobei das Entwurfswerkzeug eine Datendatei erzeugt und wobei die Datendatei Information über Eingabeaufforderungen, Antworten, Verzweigungen und Konversationsfluss zum Implementieren einer sprach-aktivierten Mensch-Computer-Interaktion enthält; und (b) Instantiieren eines Interpreterobjekts innerhalb der Anwendung, wobei das Interpreterobjekt die Datendatei zusammen mit einer Bibliothek von gemeinsam benutzten Objekten interpretiert, um die Dialog-aktivierte Mensch-Computer-Interaktion bereitzustellen, die von der Datendatei definiert wird.A method of developing a dialog-enabled application for execution on a computer that allows a human and a computer to interact, comprising the steps of: (a) inputting commands that determine the flow of a conversation to a design tool; wherein the design tool generates a data file, and wherein the data file contains prompts, responses, branches, and conversational flow information for implementing a data file contains voice-activated human-computer interaction; and (b) instantiating an interpreter object within the application, wherein the interpreter object interprets the data file along with a library of shared objects to provide the dialog-enabled human-computer interaction defined by the data file. Das Verfahren gemäß Anspruch 1, wobei die Datendatei ferner Information über einen Spracherkennungsmechanismus enthält.The method according to claim 1, wherein the data file further comprises information about a voice recognition mechanism contains. Das Verfahren gemäß Anspruch 1, wobei die Datendatei automatisch gespeichert wird.The method according to claim 1, where the data file is automatically saved. Das Verfahren gemäß Anspruch 1, wobei die Eingabe der Befehle über eine grafische Schnittstelle erfolgt.The method according to claim 1, wherein the input of the commands via a graphical interface. Ein System zum Entwickeln einer Dialog-aktivierten Software zum Ausführen auf einem Computer, die es einem Menschen und einem Computer ermöglicht, zu interagieren, das folgendes umfasst: ein Entwurfswerkzeug zum Annehmen von Befehlen, die den Fluss einer Konversation festlegen, wobei das Entwurfswerkzeug eine Datendatei erzeugt und wobei die Datendatei Information über Eingabeaufforderungen, Antworten, Verzweigungen und Konver sationsfluss zum Implementieren einer sprach-aktivierten Mensch-Computer-Interaktion enthält; und einen Interpreter zum Interpretieren der Datendatei zusammen mit einer Bibliothek von gemeinsam benutzten Objekten, wobei der Interpreter die Mensch-Computer-Interaktion automatisch ermöglicht.A system for developing a dialog-enabled Software to run on a computer that allows a human and a computer to interact, comprising: a design tool to accept commands that determine the flow of a conversation, wherein the design tool generates a data file and wherein the Data file information about Prompts, responses, branches, and conversion flow to implement a voice-activated human-computer interaction contains; and an interpreter for interpreting the data file together with a library of shared objects, the Interpreter automatically enables human-computer interaction. Das System gemäß Anspruch 5 ferner eine Bibliothek umfassend, wobei die Bibliothek die Datendateien enthält.The system according to claim 5 further comprising a library, wherein the library is the data files contains. Das System gemäß Anspruch 5, wobei das Entwurfswerkzeug ferner eine "grafische Schnittstelle umfasst.The system according to claim 5, wherein the design tool further includes a graphical interface. Ein Computer-lesbares Medium, das Computer-ausführbare Anweisungen zum Anweisen eines Computers umfasst, um folgende Handlungen auszuführen: Annehmen von Befehlen, wobei die Anweisungen einen Fluss von Konversation zwischen einem Menschen und einem Computer festlegen; Erzeugen einer Datendatei zur Eingabe an einen Interpreter, wobei die Datendatei Information über Eingabeaufforderungen, Antworten, Verzweigungen und Konversationsfluss zum Implementieren einer sprach-aktivierten Mensch-Computer-Interaktion enthält; Interpretieren der Datendatei zusammen mit einer Bibliothek von gemeinsam benutzten Objekten; und Bereitstellen der Dialog-aktivierten Mensch-Computer-Interaktion, die von der Datendatei definiert wird.A computer-readable medium, the computer-executable instructions to instruct a computer to perform the following actions: Accept of commands, the instructions being a flow of conversation between a human and a computer; Produce a data file for input to an interpreter, the data file information about Prompts, Responses, Branches, and Conversation Flow for implementing a voice-activated human-computer interaction; Interpret the data file along with a library of shared objects; and Providing dialog-enabled human-computer interaction, which is defined by the data file. Das Computer-lesbare Medium gemäß Anspruch 8, das ferner Befehle enthält, die es ermöglichen, dass auf den erzeugten Code durch andere Softwareentwickler sofort zugegriffen werden kann.The computer-readable medium of claim 8, further comprising instructions contains which make it possible that on the generated code by other software developers immediately can be accessed. Ein Dialogflussinterpreter (DFI) zur Verwendung in einem Computer-implementierten System zum Ausführen eines Dialogs zwischen einem Menschen und einem Computer, wobei der DFI Computer-ausführbare Befehle zum Lesen einer Datendatei umfasst, die Information über Eingabeaufforderungen, Antworten, Verzweigungen und Konversationsfluss zum Implementieren eines sprach-aktivierten Mensch-Computer-Dialogs enthält, und einen Computerausführbaren Code zum Verwenden der Information zusammen mit einer Bibliothek von gemeinsam benutzten Objekten, um den Dialog zu führen.A dialog flow interpreter (DFI) for use in a computer-implemented system to run a Dialogue between a human and a computer, the DFI Computer-executable Commands to read a data file include information about prompts, Responses, Branches, and Conversation Flow to Implement a voice-activated human-computer dialogue contains and a computer executable Code to use the information together with a library of shared objects to guide the dialog. Ein DFI gemäß Anspruch 10, wobei der DFI in einer Anwendung implementiert ist, die zusätzlich zu dem DFI einen Sprachinterpreter, ein Erkennungsmechanismus und ein Sprachein- und -ausgabegerät umfasst.A DFI according to claim 10, where the DFI is implemented in an application in addition to the DFI comprises a speech interpreter, a recognition mechanism and a speech input and output device.
DE60105063T 2000-10-31 2001-10-19 DEVELOPMENT TOOL FOR A DIALOG FLOW INTERPRETER Expired - Lifetime DE60105063T2 (en)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US09/702,224 US7024348B1 (en) 2000-09-28 2000-10-31 Dialogue flow interpreter development tool
US702224 2000-10-31
PCT/US2001/050119 WO2002037268A2 (en) 2000-10-31 2001-10-19 Dialogue flow interpreter development tool

Publications (2)

Publication Number Publication Date
DE60105063D1 DE60105063D1 (en) 2004-09-23
DE60105063T2 true DE60105063T2 (en) 2005-08-18

Family

ID=24820327

Family Applications (1)

Application Number Title Priority Date Filing Date
DE60105063T Expired - Lifetime DE60105063T2 (en) 2000-10-31 2001-10-19 DEVELOPMENT TOOL FOR A DIALOG FLOW INTERPRETER

Country Status (6)

Country Link
EP (1) EP1352317B1 (en)
JP (2) JP2004513425A (en)
AT (1) ATE274204T1 (en)
CA (1) CA2427512C (en)
DE (1) DE60105063T2 (en)
WO (1) WO2002037268A2 (en)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7653545B1 (en) 1999-06-11 2010-01-26 Telstra Corporation Limited Method of developing an interactive system
AU2002950336A0 (en) 2002-07-24 2002-09-12 Telstra New Wave Pty Ltd System and process for developing a voice application
AU2002951244A0 (en) 2002-09-06 2002-09-19 Telstra New Wave Pty Ltd A development system for a dialog system
AU2003900584A0 (en) 2003-02-11 2003-02-27 Telstra New Wave Pty Ltd System for predicting speech recognition accuracy and development for a dialog system
AU2003902020A0 (en) 2003-04-29 2003-05-15 Telstra New Wave Pty Ltd A process for grammatical inference
US20040217986A1 (en) * 2003-05-02 2004-11-04 Myra Hambleton Enhanced graphical development environment for controlling mixed initiative applications
EP3535664A4 (en) * 2016-11-04 2020-06-17 Semantic Machines, Inc. Data collection for a new conversational dialogue system
US10824798B2 (en) 2016-11-04 2020-11-03 Semantic Machines, Inc. Data collection for a new conversational dialogue system
WO2018148441A1 (en) 2017-02-08 2018-08-16 Semantic Machines, Inc. Natural language content generator
US10762892B2 (en) 2017-02-23 2020-09-01 Semantic Machines, Inc. Rapid deployment of dialogue system
WO2018156978A1 (en) 2017-02-23 2018-08-30 Semantic Machines, Inc. Expandable dialogue system
US11069340B2 (en) 2017-02-23 2021-07-20 Microsoft Technology Licensing, Llc Flexible and expandable dialogue system
US11132499B2 (en) 2017-08-28 2021-09-28 Microsoft Technology Licensing, Llc Robust expandable dialogue system

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04147200A (en) * 1990-10-09 1992-05-20 Oki Electric Ind Co Ltd Sound control system
JP3691962B2 (en) * 1998-05-14 2005-09-07 株式会社東芝 Agent system and information processing method
JP2000194568A (en) * 1998-12-25 2000-07-14 Canon Inc Interpreter, control method for interpreter, and storage medium

Also Published As

Publication number Publication date
CA2427512C (en) 2011-12-06
JP2004513425A (en) 2004-04-30
WO2002037268A3 (en) 2003-07-31
JP2007122747A (en) 2007-05-17
ATE274204T1 (en) 2004-09-15
DE60105063D1 (en) 2004-09-23
EP1352317A2 (en) 2003-10-15
WO2002037268A2 (en) 2002-05-10
EP1352317B1 (en) 2004-08-18
CA2427512A1 (en) 2002-05-10

Similar Documents

Publication Publication Date Title
US7389213B2 (en) Dialogue flow interpreter development tool
EP1435088B1 (en) Dynamic creation of a conversational system from dialogue objects
DE69835718T2 (en) Method and apparatus for voice interaction over a network using configurable interaction definitions
DE60105063T2 (en) DEVELOPMENT TOOL FOR A DIALOG FLOW INTERPRETER
DE69932803T2 (en) DYNAMICALLY LOADABLE LIBRARY LIBRARIES FOR SPEECHED LANGUAGE GRAMMARICS IN AN INTERACTIVE SYSTEM
DE60037164T2 (en) Method and apparatus for accessing a multi-client dialogue system
DE69829604T2 (en) System and method for distal automatic speech recognition via a packet-oriented data network
DE10125406A1 (en) Method for simultaneous access to network based electronic content using both visual and voice browsers where the voice browser calls up voice based content that can be simultaneously played or displayed with called up visual data
DE10104043A1 (en) Method and system for improving the use of in-built macro-languages makes it possible for existing applications to use languages other than their in-built macro-languages without changing an existing application.
US6934905B1 (en) Automated document drafting system
EP0990339B1 (en) Conversational prompting method for voice-controlled information and inquiry services involving computer telephony
DE10110977C1 (en) Providing help information in a speech dialogue system
DE69333762T2 (en) Voice recognition system
EP1211588B1 (en) Method for using a data processing system dependent on an authorization, corresponding data processing system and corresponding program
EP3576084B1 (en) Efficient dialog design
DE60126948T2 (en) INTERACTIVE DIALOGUE
EP1240775B1 (en) Communication system and method for establishing an internet connection by means of a telephone
DE10020831A1 (en) Interactive information interrogation method using mobile telephone has speech information analysed at mobile radio service device for providing required data response
WO2003055189A1 (en) Method for exchanging information by means of voice over a packet-oriented network
EP2184678A1 (en) Automated generation of a computer application
EP1454212A2 (en) Cpl editor
EP1263246B1 (en) Method for automatic programmation and corresponding components
DE10306810B4 (en) Method and arrangement for displaying software assistants on mobile terminals
EP1959430A2 (en) Method for automatically generating voiceXML speech applications from speech dialog models
DE102019126818A1 (en) COMPUTER-IMPLEMENTED METHOD AND DATA PROCESSING SYSTEM FOR ANSWERING A VOICE CALL FROM A USER

Legal Events

Date Code Title Description
8364 No opposition during term of opposition