asterisk-1.4.4 & spandsp-0.0.3
UPDATE: Diese Anleitung ist veraltet! Die spandsp-Entwickler haben die test-apps-asterisk offline genommen, auch über archive.org oder den Google-Cache konnte ich sie nicht mehr vollständig zusammenkriegen. Ein adäquater Ersatz für die test-apps-asterisk sind die agx-ast-addons, einsetzbar jedoch lediglich ab asterisk-1.4! Vgl. ggf. auch hier…
Hier mal quick & dirty eine Beschreibung, wie ich die Software ans Laufen bekomme – auf mehreren Produktivsystemen im Einsatz…
zaptel
$ cd /usr/src
$ wget http://ftp.digium.com/pub/zaptel/zaptel-1.4.3.tar.gz
$ tar xvfz zaptel-1.4.3.tar.gz
$ cd zaptel-1.4.3
$ make
$ make
$ make install
spandsp
$ cd /usr/src
$ wget http://soft-switch.org/downloads/spandsp/spandsp-0.0.3.tgz
$ tar xvfz spandsp-0.0.3.tgz
$ cd spandsp-0.0.3
$ ./configure
$ make
$ make install
$ echo "/usr/local/lib" >> /etc/ld.so.conf.d/i486-linux-gnu.conf
$ ldconfig
http://soft-switch.org/downloads/snapshots/spandsp/test-apps-asterisk-1.4/asterisk.patch
asterisk
$ cd /usr/src
$ wget http://ftp.digium.com/pub/asterisk/releases/asterisk-1.4.4.tar.gz
$ tar xvfz asterisk-1.4.4.tar.gz
$ cd asterisk-1.4.4/apps
$ wget http://soft-switch.org/downloads/snapshots/spandsp/test-apps-asterisk-1.4/app\_rxfax.c
$ wget http://soft-switch.org/downloads/snapshots/spandsp/test-apps-asterisk-1.4/app\_txfax.c
$ cd ..
$ wget http://soft-switch.org/downloads/snapshots/spandsp/test-apps-asterisk-1.4/asterisk.patch
$ patch -p0 < asterisk.patch
patching file build\_tools/menuselect-deps.in
Hunk #1 succeeded at 19 (offset 2 lines).
patching file configure.ac
Hunk #1 FAILED at 174.
Hunk #2 succeeded at 900 (offset 105 lines).
1 out of 2 hunks FAILED -- saving rejects to file configure.ac.rej
patching file makeopts.in
Hunk #1 succeeded at 133 (offset 13 lines).
Daher passen wir configure.ac
manuell an und fügen in Zeile 198 – in der Zeile nach AST_EXT_LIB_SETUP([RADIUS], [Radius Client], [radius])
nun AST_EXT_LIB_SETUP([SPANDSP], [spandsp Library], [spandsp])
ein. Wunderbar.
$ cd /usr/src/asterisk-1.1.4/include
$ cp /usr/local/include/spandsp/plc.h .
$ cd ..
$ ./bootstrap.sh
$ ./configure
Nach dem ./configure
muss in build-tools/menuselect-deps
eine Zeile stehen, die etwas so ausschaut: SPANDSP=1
Und in makeopts
sollte soetwas hier stehen: SPANDSP_LIB=-lspandsp -ltiff
Wenn nicht, ist bis hierhin schon etwas schief gelaufen!
$ make
$ make install
$ make samples
Es ist ein relativer Krampf, aber so funktioniert es ganz gut eigentlich. Mit spandsp-0.0.4pre${x}
konnte ich es nicht zum Laufen bewegen. Wichtig ist, im laufenden asterisk
dann auch zu überprüfen, dass die Applikationen wirklich vorhanden sind:
CLI> show application RxFax
CLI> show application TxFax
Sind sie es nicht, einfach mal den asterisk -vvvvc
auf Konsole starten und schauen, welche Fehlermeldungen er bringt; ist es eine blafasel.so not found-Meldung
, so wurde aller Wahrscheinlichkeit der Schritt bzgl. ldconfig
vergessen… Naja, einfach mal ausprobieren.
Vor allem bei einem Update von 1.2.x auf 1.4.x sollte man ggf. /usr/lib/asterisk
zumindest umbenennen, wenn schon nicht löschen, ehe man make install
aufruft. Je nach verwendeter Hardware müssen unter Umständen auch die Treiber erneut gebacken werden.
Es kann passieren, dass der asterisk
in sich zusammenbricht, sobald er ein Fax annehmen soll; setzt man die Konsole per core set verbose 17
mal auf gesprächig, so sieht man – je nach Wählplan – als letzten Aufruf den von RxFax nebst Parametern; der Disconnect von der asterisk
-Konsole, der dann folgt, ist nicht nur ein Disconnect, sondern ein Komplettabsturz des Prozesses. In dem Fall: ganz von vorne anfangen.
Macht man im spandsp-0.0.3
-Verzeichnis ein make uninstall
, schmeißt er wirklich allen relevanten Kram raus – ein sehr nettes Feature, vor allem bei Updates von bestehenden Servern! Sourcen neu auspacken, komplett neu patchen, alles von vorne machen – dann sollte es tun…
Hintergrundbild: 849x 500px, Bild genauer anschauen – © Marianne Spiller – Alle Rechte vorbehalten