Home > Unix shell, Voice > VoiceGlue Konfiguration – Server für Sprachanwendungen einrichten

VoiceGlue Konfiguration – Server für Sprachanwendungen einrichten

[lang_de]In meinem letzten Artikel habe ich die Installation der IVR Software VoiceGlue unter Fedora Core 8 in einer Parallels Desktop VM beschrieben. Nun möchte ich eine Anleitung für die Einrichtung von VoiceGlue nachliefern. Damit wird es jedem möglich, eine VoiceXML basierte Sprachanwendung aufzusetzen.

[ad#vert-banner]

Nachdem alle Schritte aus der Installationsanleitung befolgt wurden, sind folgende Komponenten auf dem System installiert:

Um tatsächlich Anrufe über das Telefon- oder auch VoIP Netz entgegen nehmen zu können, muss der asterisk Server konfiguriert werden. Eine vollständige Beschreibung der asterisk Konfiguration würde allerdings den Rahmen dieses Tutorials sprengen. Aus diesem Grund wird lediglich die Konfiguration erklärt, mit er es möglich ist, mit Hilfe eines sogenannten Softphones an der Sprachanwendung anzurufen. Für vielschichtige asterisk Konfigurationen findet man in Asterisk: The Future if Telephony ausreichend Hilfe.

Als erstes benötigen wir für die Annahme von Anrufen via SIP einen eigenen Kontext in der Datei: /etc/asterisk/manager.conf. Die folgenden Zeilen sollte man am besten am Ende der Datei einfügen:

[phoneglue]
secret=phoneglue
read = system,call,log,verbose,command,agent,user
write = system,call,log,verbose,command,agent,user

Ausserdem muss der Manager noch aktiviert werden. Deswegen sollte man sicherstellen, dass in der gleichen Datei die Variable enabled=yes gesetzt ist.

Danach wird asterisk so konfiguriert, dass alle angenommenen Anrufe per AGI an den Voicebrowser weitergeleitet werden. Durch die Verwendung von AGI ist es möglich, den Voicebrowser auch auf einem anderen Server zu betreiben und die Verbindung via Netzwerk herzustellen. Dies nimmt bei vielen Anrufen die Last vom System. Die Konfiguration wird in der Datei /etc/asterisk/extensions.conf vorgenommen. Auch hier ist es wieder sinnvoll einen neuem Kontext am Ende der Datei einzufügen:

[phoneglue]
exten => 1,1,Agi(agi://localhost)
exten => 1,2,Hangup

Die Einträge für die Extensions beginnen mit einer 1. Dies ist die Durchwahl für die Sprachanwendung. Der Aufruf “Agi(agi://localhost) verbindet nun den Voicebrowser mit dem Anrufer.

Möchte man nun alle eingehenden Anrufe, welche mit SIP initiiert werden, an die Sprachanwendung leiten, ist noch eine Änderung in der Datei /etc/asterisk/sip.conf nötig. Der Standard Kontext muss von default auf phoneglue gesetzt werden.

[general]
context=phoneglue

Damit ist die Konfiguration von asterisk schon abgeschlossen. Nun kann es mit der Konfiguration der Sprachanwendung weitergehen.

VoiceXML basierte Sprachanwendungen benötigen einen HTTP Server, welcher die statischen oder dynamisch erzeugten *.vxml Dateien ausliefert. Auch hier haben die Entwickler von VoiceGlue mitgedacht, indem das System so konfigurierbar ist, dass der VoiceXML Server auf einer separaten Maschine laufen kann. Zu Demonstrationszwecken genügt es hier allerdings, dass alle Dienste auf einer Maschine laufen. Die Konfiguration wird in der Datei /etc/voiceglue.conf vorgenommen. Hier genügt ein Eintrag, der auf die Einstiegsseite der Sprachanwendung zeigt.

 * http://localhost/index.vxml

Diese Datei muss vom lokalen Apache ausgeliefert werden. Falls noch nicht geschehen, sollte der Apache jetzt gestartet werden:

sudo service httpd start

Standardmässig liegen die HTML für den Apache unter Fedora im Verzeichnis /var/www/html. Genau an dieser Stelle legen wir eine klassische Hello World Anwendung in Form einer VoiceXML Datei mit folgendem Inhalt ab:

Hello World. This is my first voiceglue application.

Damit ist die Konfiguration abgeschlossen. Alle Dienste sind vollständig konfiguriert und sollten jetzt gestartet werden.

sudo service asterisk start
sudo service phoneglue start
sudo service voiceglue start

Als letztes wollen wir überprüfen, ob die Komfiguration erfolgreich war. Dazu benötigen wir ein Softphone. Eine freie Version findet man bei SJLabs. Das Telefon ist für Windows, Linux und OS X verfügbar. Nach dem herunterladen muss im Menupunkt Phone->Services das SIP Protolkoll gewählt werden. Anschließend wählen wir unseren lokalen asterisk Dienst mit der Durchwahl 1@localhost an.

Basierend auf der gezeigten Konfiguration lassen sich beliebige Sprachanwendungen erstellen. Wie jedoch schon im Beitrag VoiceGlue Installation – Interactive Voice Response leicht gemacht beschrieben, fehlt die Intergration einer ASR Engine. Somit beschränken sich Anrufereingaben auf DTMF.[/lang_de]

  1. Bisher keine Kommentare
  1. Bisher keine Trackbacks