2012-03-26 11 views
0

Ich habe ein Formular mit einer Eingabeaufforderung für einen Benutzernamen, die Sache ist, ich brauche keine Regeln hier, alles, was ich tun möchte, ist das Feld nehmen und die Rede des Benutzers speichern. Irgendwo in der Zeile möchte ich diese Variable in eine PHP-Datei posten, die sie zu einer Datenbank hinzufügen wird. Dies mag trivial erscheinen, aber kann mir any1 helfen, all das Beispiel, das ich gesehen habe enthält Grammatiken und Regeln wie oneof usw. Versuch,Nehmen Sie eine Benutzereingabe bestätigen Sie es

?> 
<vxml version="2.0" xmlns="http://www.w3.org/2001/vxml"> 
<var name="myUserName" /> 
<form id="Registerdetails"> 
<field name="User_name"> 
<prompt> 
Welcome to the Day Planner Registration System. 
Please state a username of your choosing? 
</prompt> 
<grammar xml:lang="en-US" root = "User_name"> 
<rule id="User_name" scope="public"> 
</rule> 
</grammar> 
<filled> 
<assign name = "myUserName" expr="User_name"/> 
</filled> 

TIA

Stefan

Antwort

0

Eigentlich, was Sie fordern ist nicht trivial. Es gibt Spracherkennungssysteme, die keine Grammatiken benötigen. Diese Arten von Systemen verwenden eine statistische Sprachmodellierung und sind in der Anschaffung und Abstimmung sehr teuer. Normalerweise können nur die Fortune-500-Unternehmen es sich leisten, diese Art von Systemen richtig zu implementieren. Die meisten Systeme, die heute einen Namen von einer Person anfordern, verwenden immer noch Grammatiken. Ein Beispiel für diese Art von System ist eine automatische Telefonzentrale, die sich wie ein Bediener verhält und versucht, Sie zu der Person zu leiten, die Sie suchen. Diese haben den Vorteil, dass sie die Grammatik auf nur Namen innerhalb der Organisation beschränken können. Wenn Sie versuchen, eine Grammatik zu bekommen, die alle Namen in der Welt behandelt, ist das eine Herausforderung. Eine vorgeschlagene Alternative besteht darin, den vxml-Datensatz-Tag zu verwenden, um den Namen des Benutzers aufzuzeichnen und zu speichern, möglicherweise für eine manuelle Transkription zu einem späteren Zeitpunkt. Selbst das am besten abgestimmte statistische Sprachmodellierungssystem wird Probleme haben, alle Namen in der Welt genau zu transkribieren. Wenn Sie mehr Informationen darüber zur Verfügung stellen, wie die Namen in der Anwendung und der IVR-Plattform, die Sie verwenden, verwendet werden, kann ich eine bessere Antwort geben.

Aktualisiert auf besseres Verständnis der Frage Basierend

Eine Aufnahme wird nicht zur Authentifizierung arbeiten. Wenn Sie Sprache für die Authentifizierung verwenden möchten, möchten Sie die Sprachbiometrie verwenden, die den Stimmabdruck wie einen eindeutigen Fingerabdruck verwendet. Nuance has a product for this. Ich glaube, Nuance hat eine Möglichkeit, diese Technologie in VoiceXML-Anwendungen zu integrieren, obwohl volle Unterstützung für Biometrie in VoiceXML nicht verfügbar sein wird, bis VoiceXML 3.0 verfügbar ist.

Passwörter sind ein Bereich, in dem DTMF-/Telefontasten am besten zu verwenden sind. Wenn ein Benutzer in einer überfüllten Gegend ist, zögern sie oft, ihr Passwort laut auszusprechen. Die Alternative für diese Arten von Systemen besteht darin, die Benutzer registrieren zu lassen, um das System per E-Mail oder Internet zu nutzen und ihnen eine numerische Kontonummer und ein numerisches Passwort/eine PIN zu geben, die sie auf dem Telefon eingeben können. Sie könnten sie sogar per SMS (SMS) mit einem Dienst wie SMSIfied registrieren lassen.

Sie könnten wahrscheinlich einen Registrierungsprozess in der Sprachanwendung einrichten. Vielleicht geben sie bis zu den ersten 6 Ziffern ein, die ihrem Nachnamen auf der Telefontastatur entsprechen (zB: Jones wäre 56637) und sie wählen ihre eigene numerische PIN. Die Anwendung müsste verwalten, dass der Benutzername und die PIN-Kombination für alle Benutzer im System eindeutig sind.

+0

Ok Grundsätzlich möchte ich ein Registrierungssystem in meiner Anwendung, ich möchte, was der Benutzer sagt, wenn aufgefordert, sagen Sie einen Benutzernamen Ihrer Wahl innerhalb einer temporären Variable, die in einem "Goto" zu einer PHP-Datei, die eingefügt wird, übergeben werden die daten in eine datenbank ... ich weiß, das ist vielleicht nicht möglich, weil es bedeutet, dass es keine muster gibt, mit denen man zusammenpassen könnte ... könnten sie DTMF verwenden, um irgendwie text zu verwenden? – aspiringCoder

+0

Also im Grunde wollen Sie das System jeden Namen in der Welt zu verstehen und zu transkribieren, von denen es Millionen gibt. Keine leichte Aufgabe. Was machen Sie mit den Namen in der Datenbank? Ist es genug, um eine Aufnahme zu haben, wie ich in meiner Antwort vorgeschlagen habe? DTMF zu verwenden, um einen Namen zu buchstabieren ist umständlich und wird wahrscheinlich die Mehrheit Ihrer Benutzer frustriert haben und auflegen.Eine Technik, die dafür verwendet wird, sind zwei Tastendruckvorgänge pro Zeichen. Zum Beispiel hat das Tastenfeld 3 die Buchstaben DEF. Für den Buchstaben E würden Sie 3 und dann 2 drücken, da E der zweite Buchstabe auf der Taste 3 ist. –

+0

Die Benutzernamen werden verwendet, um den Benutzer mit einem Passwort usw. zu authentifizieren. Könnten Sie das mit einer Aufnahme tun? – aspiringCoder

Verwandte Themen