Home > Voice > VoiceGlue Installation – Interactive Voice Response leicht gemacht

VoiceGlue Installation – Interactive Voice Response leicht gemacht

Neulich bin ich durch Okko auf VoiceGlue aufmerksam gemacht worden. Dabei handelt es sich um eine Sammlung von Open Source Programmen, die zusammen die Funktionalität einer IVR zur Verfügung stellen. Als ehemalige Mitarbeiter der Mundwerk AG sind wir IVR Systeme der Enterprise Klasse gewohnt. Sicherlich wird VoiceGlue in der aktuellen Version 0.6 diesen Ansprüchen noch nicht gerecht, zumal die Anbindung an ASR Systeme bisher nur auf der Agenda steht. Trotzdem wollten wir wissen: Wie einfach ist es, eine IVR mit VoiceGlue zu installieren.

[ad#vert-banner]

Ein erster Blick auf die Installationsanleitung offenbart keine sehr ausführlichen Informationen. Lediglich ein paar Pakete installieren, und fertig. Nun, wir wollen sehen. Die Installation wurde mit Hilfe von Parallels Desktop 3.0 unter Mac OS X vorgenommen. Als Gastbetriebsystem haben wir, wie in der Anleitung empfohlen Fedora Core 8 verwendet.

Nach der Installation von Fedora Core 8 in der VM mit den Standard Optionen fehlen vor allem noch ein Compiler, ein paar Developer Pakete und jede Menge Perl Module. Der bereits installierte Paketmanager YUM wird also gleich bemüht, um alles Fehlende an den Start zu bringen.

sudo yum install perl gcc-c++ libstdc++-devel xerces-c-devel js-devel flite openssl-devel libxml2-devel expat-devel

Soweit noch nicht geschehen, sollte cpan installiert werden. Hiermit lassen sich benötigte Perl Pakete leicht installieren. Eine Anleitung findet man auf der cpan homepage. Es ist jedoch ratsam folgende Pakete gleich mit zu installieren: ncftp, wget

sudo yum install ncftp wget cpan

Nun fehlen noch folgende Perl Module: XML::LibXML, BSD::Resource, Module::Build. Während der Installation von cpan werden mehrere Fragen gestellt, die eigentlich alle, bis auf die Frage nach dem Ort und den Servern, mit “ENTER” bestätigt werden können. Aber genau lesen hat noch nie geschadet. Die Fragen, ob alle benötigten Pakete ebenfalls installiert werden sollen, kann man auch getrost mit “ja” beantworten. Aber man sollte gewarnt sein: Je nach dem, wie viel oder wenig Perl Module schon installiert sind, dauert es unter Umständen bis zu 10 Minuten. Wie sich allerdings herausstellt, gibt es für Module::Build zwei optionale Pakete, die zwar wichtig sind, aber nicht automatisch installiert werden. Aus diesem Grund wird ExtUtils::ParseXS und damit auch ExtUtils::CBuilder zusätzlich installiert.

cpan install Bundle::CPAN
cpan install XML::LibXML
cpan install BSD::Resource
cpan install ExtUtils::ParseXS
cpan install Module::Build

Wenn alle Module erfolgreich installiert wurden, fehlt nur noch der asterisk Dienst. Dieser ist jedoch nicht über das Fedora Repository erhältlich. Deswegen muss in die YUM Konfiguration ein weiteres Repository aufgenommen werden. Dazu wird die Datei /etc/yum.repos.d/atrpms.repo mit folgendem Inhalt angelegt:

[atrpms]
name=Fedora Core $releasever - $basearch - ATrpms
baseurl=http://dl.atrpms.net/f$releasever-$basearch/atrpms/stable
#enabled=1
gpgkey=http://ATrpms.net/RPM-GPG-KEY.atrpms
gpgcheck=1

Anschließend muss noch der GPG Schlüssel für das neue Repository importiert werden:

sudo rpm --import http://ATrpms.net/RPM-GPG-KEY.atrpms

Jetzt kann der asterisk Dienst installiert werden. YUM wird vorschlagen, alle fehlenden Pakete ebenfalls zu installieren:

sudo yum install asterisk

Nachdem nun endlich alle Vorbereitungen für die Installation abgeschlossen sind, sollte das Voiceglue Paket heruntergeladen werden. Nachdem Download einfach entpacken, und los geht der Spass.

tar xvfz voiceglue_0.6.tar.gz
cd voiceglue_0.6
perl doc/install-voiceglue

Sollte das Installationsskript wider Erwarten nicht korrekt durchlaufen, müssen die einzelnen Komponenten per Hand in der richtigen Reihenfolge installiert werden:

  • Cam-Scom
  • dynlog
  • libvglue
  • openvxi
  • phoneglue
  • Satc
  • SRGSDTMF
  • voiceglue
  • Vxglue

In jedem Unterverzeichnis sollte entweder eine Build.pl Datei oder ein build Skript liegen, welches ausgeführt werden muss. Bei Problemen kann ich gerne versuchen zu helfen.

Fazit: Mit der Original Anleitung war die Installation sehr mühsam, weil nicht alle Pakete aufgeführt sind, die benötigt werden. Nach mehrmaligem Zurücksetzen der Virtuellen Maschine konnte ich alle Paketabhängigkeiten herausfinden und auflösen. Die hier beschriebene Lösung funktionierte für mich ohne Probleme. Wie immer ist Feedback sehr willkommen. Für Hinweise und bei Problemen einfach einen Kommentar hinterlassen.

  1. 7. Dezember 2007, 09:20 | #1

    Danke Christoph!

    Doug Campbell von VoiceGlue erwähnt Anbindung von Spracherkennung sei in Sicht, jedoch verzögert. Man darf gespannt bleiben.

  2. Andrea
    14. Dezember 2007, 11:21 | #2

    Tolles HowTo Christoph!
    Da bekommt man ja glatt Lust, mal lokal eine kleine VoiceApp aufzusetzen. ;)

  3. 6. Januar 2008, 12:58 | #3

    Hi,

    da ist ein kleiner Fehler bei der cpan Eingabeliste zur Installation der benötigten Perlmodule. Sollte lauten:
    cpan install ExtUtils::ParseXS
    cpan install ExtUtils::CBuilder
    cpan install Module::Build

    (Das ExtUtils::CBuilder fehlte, wird aber ja kurz davor in Prosa erwähnt.)

  4. 6. Januar 2008, 16:31 | #4

    Nee, das hat schon seine Richtigkeit. Der ExtUtils::ParseXS hat als Requirement den CBuilder. Der wird dann automatisch mit installiert.

  5. 22. Juni 2009, 17:12 | #5

    Wow, toll gemacht. Gratuliere!

    Eine Anleitugn zu Asterisk findest du auch hier auf meiner Seite
    http://www.suvi.org/theory/Asterisk/DerWegZuVoIP.html

  1. 21. Dezember 2007, 20:30 | #1