Kapitel 21. Upgrade Asterisk 1.2 auf 1.4

1. Einleitung

Beim Schreiben dieses Buches wurde großer Wert darauf gelegt, dass immer alles auf der Asterisk-Version 1.2 und auf der Asterisk-Version 1.4 funktioniert. Immer wenn es Abweichungen gibt, wurden diese besonders hervorgehoben. Vollkommen deprecated (von den Entwicklern unerwünschte) Wege wurden gar nicht erst beschrieben. Sie sind also gut gerüstet für beide Versionen. Einige besonders wichtige Neuerungen der Version 1.4 werden in diesem Kapitel behandelt.

2. Das neue Buildsystem

Wie Sie im Installationskapitel schon gelesen haben, ist die Version 1.4 die erste Asterisk-Version, die mit einem ./configure-Skript vor dem Kompilieren konfiguriert werden muss. Hilfe zu diesem Skript kann man mit ./configure --help aufrufen.

menuselect

Wie beim Linux-Kernel schon seit Jahren bekannt, kann man[147] bei der Version 1.4 mit einem make menuselect einzelne Module aktivieren oder deaktivieren. Das Menü sieht wie folgt aus:

                      *************************************
                            Asterisk Module Selection
                      *************************************

                               Press 'h' for help.

                         ---> 1.  Applications
                              2.  Call Detail Recording
                              3.  Channel Drivers
                              4.  Codec Translators
                              5.  Format Interpreters
                              6.  Dialplan Functions
                              7.  PBX Modules
                              8.  Resource Modules
                              9.  Voicemail Build Options
                              10. Compiler Flags
                              11. Module Embedding
                              12. Core Sound Packages
                              13. Music On Hold File Packages
                              14. Extras Sound Packages

Wenn man bestimmte Bibliotheken oder Programme nicht installiert hat, kann man entsprechende Module nicht aktivieren. Hier ein Beispiel für func_curl und func_odbc:

                      *************************************
                            Asterisk Module Selection
                      *************************************

                               Press 'h' for help.

                              [*] 1.  func_base64
                              [*] 2.  func_callerid
                              [*] 3.  func_cdr
                              [*] 4.  func_channel
                              XXX 5.  func_curl
                              [*] 6.  func_cut
                              [*] 7.  func_db
                              [*] 8.  func_enum
                              [*] 9.  func_env
                              [*] 10. func_global
                              [*] 11. func_groupcount
                              [*] 12. func_language
                              [*] 13. func_logic
                              [*] 14. func_math
                              [*] 15. func_md5
                              [*] 16. func_moh
                              XXX 17. func_odbc
                              [*] 18. func_rand

Wer die Funktion curl benutzen will, muss auf einem Debian Linux erst mit apt-get -y install libcurl3 curl libcurl3-dev die entsprechenden Pakete installieren und danach ein make clean && ./configure && make menuselect ausführen, um dann im folgenden Fenster überprüfen zu können, dass die Funktion jetzt mit einkompiliert werden kann:

                      *************************************
                            Asterisk Module Selection
                      *************************************

                               Press 'h' for help.

                              [*] 1.  func_base64
                              [*] 2.  func_callerid
                              [*] 3.  func_cdr
                              [*] 4.  func_channel
                              [*] 5.  func_curl
                              [*] 6.  func_cut
                              [*] 7.  func_db
                              [*] 8.  func_enum
                              [*] 9.  func_env
                              [*] 10. func_global
                              [*] 11. func_groupcount
                              [*] 12. func_language
                              [*] 13. func_logic
                              [*] 14. func_math
                              [*] 15. func_md5
                              [*] 16. func_moh
                              XXX 17. func_odbc
                              [*] 18. func_rand

Neue Soundcodecs für die Voiceprompts

Innerhalb von make menuselect kann man auch die Installation von Voiceprompts für andere Codecs aktivieren. Alle englischen Sprachbausteine wurden von Digium neu aufgenommen und in allen populären Codecs encoded.

                      *************************************
                            Asterisk Module Selection
                      *************************************

                               Press 'h' for help.

                              [ ] 1.  EXTRA-SOUNDS-EN-WAV
                              [ ] 2.  EXTRA-SOUNDS-EN-ULAW
                              [ ] 3.  EXTRA-SOUNDS-EN-ALAW
                              [ ] 4.  EXTRA-SOUNDS-EN-GSM
                              [ ] 5.  EXTRA-SOUNDS-EN-G729
                              [ ] 6.  EXTRA-SOUNDS-EN-G722

3. Neue Struktur bei CLI-Kommandos

Ab der Asterisk-Version 1.4 wird im CLI (Command Line Interface) eine neue Struktur für Kommandos eingefügt. Die Kommandos sollten jetzt nach folgendem Muster eingegeben werden: <modulname> <kommando> <objekt>

So bekommt man mit der Eingabe show voicemail users folgende Ausgabe im CLI:

debian*CLI> show voicemail users 
Context    Mbox  User                      Zone       NewMsg
default    general New User                                  0
default    1234  Example Mailbox                           0
other      1234  Company2 User                             0
The 'show voicemail users' command is deprecated and will be removed in a future release. Please use 'voicemail show users' instead.
debian*CLI>

In der letzten Zeile wird darauf hingewiesen, dass diese Art der Eingabe deprecated (unerwünscht) ist. Benutzt man die neue Struktur voicemail show users, dann bekommt man keine Fehlermeldung:

debian*CLI> voicemail show users 
Context    Mbox  User                      Zone       NewMsg
default    general New User                                  0
default    1234  Example Mailbox                           0
other      1234  Company2 User                             0
debian*CLI>

In diesem Buch wurde absichtlich die alte Schreibweise benutzt, weil es für die Asterisk-Versionen 1.2 und 1.4 geschrieben ist. Falls Sie nur noch die neue Version einsetzen, sollten Sie sich langsam an die neue Struktur gewöhnen.



[147] Können heißt aber wie so oft nicht müssen. Für einen Großteil aller Asterisk-Installationen ist diese Funktionalität unnötig und oft reine Zeitverschwendung.


Version 1.2, November 2002

Neue Version verfügbar

Sie betrachten gerade die alte Version des Buches (Version 1.0). Wir empfehlen Ihnen für Asterisk 1.4 und 1.6 die neue Version des Buches.

Asterisk-Tag 2008

Lernen Sie Mark Spencer (den Erfinder von Asterisk) kennen! Viele Vorträge, Case-Studies und Workshops rund um das Thema VoIP. Asterisk-Tag.org

Das gedruckte Buch

Werbung