Kapitel 20. Asterisk und VoiceXML

VoiceXML ist eine auf XML basierende Auszeichnungssprache für die Implementierung interaktiver Sprachdialoge.

[Tipp]

VoiceXML ist ein W3C-Standard. Aktuell ist Version 2.0 und Sie können die Spezifikation unter folgender Adresse nachlesen: http://www.w3.org/TR/voicexml20/. Auf Ken Rehors Webseite World of VoiceXML (http://www.kenrehor.com/voicexml/) sind die wichtigsten Links zum Thema VoiceXML zusammengefasst.

Die zugrunde liegende Hardware soll dabei für den Anwendungsprogrammierer verborgen bleiben (Plattformunabhängigkeit), so dass er sich voll und ganz auf das Design der eigentlichen Sprachapplikation konzentrieren kann. Um sich eine Vorstellung von der Funktionsweise von VoiceXML zu machen, ist es hilfreich, sie mit anderen Auszeichnungssprachen (markup languages) wie z.B. HTML zu vergleichen:

VoiceXML-Dokumente liegen genau wie HTML-Dokumente auf einem Webserver und werden über das HTTP-Protokoll heruntergeladen. Das Herunterladen erfolgt wie bei HTML durch einen Browser, einen sogenannten Voicebrowser. Dieser Voicebrowser ist aber im Gegensatz zu den hinlänglich bekannten Webbrowsern nicht irgendeine Software, die auf einem Gerät des Endanwenders läuft. Vielmehr handelt es sich um einen leistungsfähigen Computer, der einerseits am Telefonnetz, andererseits am Internet angeschlossen ist. Der Voicebrowser ist sozusagen das Verbindungsglied zwischen der Telefonwelt und der IP-Welt.

Wie ein konventioneller Webbrowser muss auch der Voicebrowser von einem Endanwender bedient werden. Während man aber einen Webbrowser mit den Augen betrachtet und mit Maus und Tastatur steuert, ruft man einen Voicebrowser über ein Telefon an, lauscht seinen Ansagen und steuert ihn durch Sprache bzw. das Drücken der Nummerntasten auf dem Telefon. Der Funktionsumfang eines Voicebrowsers umfasst im Wesentlichen:

  • Entgegennehmen von Anrufen

  • Herunterladen von VoiceXML-Dokumenten

  • Interpretation der VoiceXML-Dokumente

  • Sprachsynthese (TTS - Text-to-Speech)

  • Automatische Spracherkennung (ASR - Automatic speech recognition)

  • Erkennung von DTMF-Eingaben (Dual Tone Multi Frequency)

  • Navigation zu weiteren VoiceXML-Dokumenten

  • Aufnehmen von Nachrichten des Anrufers

  • Weitervermittlung des Anrufs

Bei näherer Betrachtung der Liste fällt auf, dass es sich hierbei um Funktionen handelt, für die Asterisk eigentlich prädestiniert wäre.

[Warnung]

Zur Zeit der Drucklegung dieses Buches gibt es leider noch kein fertiges VoiceXML Add-On für Asterisk. Wer sich bis dahin schon einmal mit dem Thema VoiceXML auseinandersetzen will, der sei an dieser Stelle auf das Hastenix-AGI-Skript von http://hastenix.hawhaw.de/ verwiesen.