
Asterisk läuft unter Linux und kann eine vorhandene klassische Telefonanlage sowohl einbinden als auch ersetzen. Hauptsponsor der unter der GPL verbreiteten Soft-PBX ist die amerikanische Firma Digium, deren Mitarbeiter Mark Spencer Asterisk entwickelte und nach wie vor das Projekt koordiniert. Digium stellt unter anderem Asterisk-kompatible Schnittstellenkarten zur Anbindung analoger Endgeräte her, dadurch kann sich der Anwender zumindest für einen großen Teil der benötigten Hardware auf eine gute Softewareunterstützung verlassen.
Release Candidate 1.0 erschien am 18. Juli dieses Jahres. Grund genug, die Leistungsfähigkeit der Software auszuloten und ein beispielhaftes Umstiegsszenario auf Asterisk-Basis für einen mittelständischen Betrieb nachzuvollziehen.
Der Name Asterisk (engl: Stern(chen)) ist Programm: In vielen Betriebssystemen ist der * ein Platzhalter für alle möglichen Inhalte. Ebenso steht die Software Asterisk dafür, die unterschiedlichsten Aufgaben in einem Telefoniesystem übernehmen zu können, auch solche, die mit VoIP (zunächst) nichts zu tun haben. Der Grund für diese Flexibilität liegt in der modularen Architektur, die beinahe alle gängigen Techniken einbinden kann, seien es VoIP-Protokolle wie SIP, H.323, MGCP und das Asterisk-spezifische Protokoll IAX oder traditionelle Verfahren wie T1, ISDN PRI und BRI sowie analoge PSTN (zu den Begriffen siehe der Textkasten Akronymia).
Kernstück von Asterisk ist der PBX-Vermittlungskern, der Anrufe über die verschiedenen Schnittstellen entgegennimmt und anhand des internen Wählplans an andere Schnittstellen weitervermittelt, Endgeräte anspricht oder Voicemail- und Call-Assistant-Anwendungen startet. Gesteuert durch Konfigurationsdateien weiß der Vermittlungskern, auf welche Kommunikationskanäle und Anwendungen er zugreifen kann und ob für die Gesprächsvermittlung zwischen verschiedenen Kanälen beziehungsweise Endgeräten Transkodierungen nötig sind. Der Zugriff auf die verschiedenen Kanäle, Anwendungen, Codecs und Dateiformate (wie Audiodaten im MP3-, Wav- oder GSM-Format) erfolgt über Module, die der Dynamic Module Loader bei Bedarf lädt.
Ein ebenfalls eingebauter Codec-Übersetzer (Transcoder) ermöglicht es, Verbindungen zwischen Schnittstellen herzustellen, deren Sprachdatenströme mit unterschiedlichen Codecs digitalisiert sind.
Zur Integration analoger Telefone respektive Anschlüsse bietet Digium verschiedene Schnittstellenkarten an, etwa die Wildcard TDM400P für bis zu vier FXS- oder FXO-Schnittstellenmodule. Jedes Modul stellt entweder eine Verbindung zu einem analogen Endgerät (FXS) oder einer analogen Amtsleitung (FXO) her. In Deutschland vertreibt unter anderem Beronet (www.beronet.com) die Digium-Produkte.
Da ISDN, insbesondere in der Basisvariante, in den USA wenig bis gar nicht verbreitet ist, hält sich der dortige Bedarf an entsprechender Asterisk-kompatibler Schnittstellenhardware in Grenzen. Hier springt der in Berlin ansässige Hersteller Junghanns.net in die Bresche und bietet mit der QuadBRI (und seit neuestem der OctoBRI) eine Asterisk-kompatible Schnittstellenkarte mit vier beziehungsweise acht ISDN-Basisanschlüssen an. Die Ports der Karten lassen sich wahlweise im NT- oder im TE-Modus betreiben, je nachdem, ob ISDN-Endgeräte angeschlossen oder Amtsanschlüsse beziehungsweise Querverbindungen zu anderen TK-Anlagen betrieben werden sollen.
Darüber hinaus ist es möglich, beliebige ISDN-Karten zu verwenden, für die unter Linux eine CAPI bereitsteht. Auf Grund des fehlenden NT-Mode der meisten Karten kommt dies jedoch nur für Amtsanschlüsse in Betracht. Für den Primär-Multiplexanschluss (E1) hat wiederum Digium passende Karten mit einem oder vier E1/T1-Anschlüssen im Portfolio (Wildcard TE410P/E100P).
Die für Asterisk verfügbare Schnittstellenhardware deckt somit die meisten gängigen Interface-Standards der konventionellen Telefonietechnik für Nebenstellenanlagen ab.
Ein typisches Anwendungsszenario in mittelständischen Betrieben dürfte der Ersatz beziehungsweise die Erweiterung einer vorhandenen Telefonanlage sein. Ziel eines solchen Projekts könnte die verbesserte Anbindung externer Standorte oder Außendienstler sowie die Erweiterung der vorhandenen Telefonanlagenfunktionen durch die Möglichkeiten von VoIP sein.
Beispiel: Die Telefonanlage wird bisher genutzt, um mehrere ISDN-Basis- oder -Primärmultiplexanschlüsse zu verwalten. Da den Kunden die Telefonnummern gut bekannt sind, soll eine Vorgabe darin bestehen, die vorhandenen ISDN-Anschlüsse einzubinden. Darüber hinaus sollen mehrere Außendienstler sowie eine in einer anderen Stadt angesiedelte Abteilung über die Zentralrufnummer und Weiterleitung per VoIP zu erreichen sein. Eine Internetanbindung mit ausreichender Bandbreite ist vorhanden, auch zur Filiale. Die Außendienstler sind über DSL an die Zentrale angebunden.
Im Rahmen einer Asterisk-basierten Lösung würde dieses Szenario den Einsatz jeweils eines Asterisk-Switches in der Zentrale sowie in der Zweigniederlassung erfordern. Die Außendienstler behalten für eine Übergangszeit ihre, den Kunden bekannten, Rufnummern und Telefonanschlüsse und bekommen zusätzlich ein IP-Telefon. Dieses ist von der Zentrale aus über eine Durchwahlnummer erreichbar, beim Kunden wird bei Anrufen des Außendienstlers künftig diese Durchwahlrufnummer angezeigt. Bei einem eventuellen Umzug des Außendienstlers würde sich so für den Kundenkontakt nichts mehr ändern.
Als Endgerät könnte hier zum Beispiel das Zultys 4x5 IP-Telefon zum Einsatz kommen, das in einem Gerät DSL-Router, VoIP-Telefon, 4-Port-Switch, VPN-Gateway mit IPSec und einen Bluetooth-Sender/Empfänger für ein Headset vereint.
Will man die vorhandene Telefonanlage in der Zentrale ganz durch Asterisk ersetzen, muss diese Software-PBX die vorhandenen analogen Amtsleitungen oder ISDN-Anschlüsse verwalten. Für beide Aufgaben gibt es die eingangs erwähnten Schnittstellenkarten. Die Junghanns.net-Produkte ermöglichen das Setzen von Karten-IDs, so dass in einem Asterisk-Rechner je nach Anzahl der verfügbaren PCI-Steckplätze und im Rahmen der Kapazitätsgrenzen des karteninternen TDM-Busses bis zu acht QuadBRI-Karten einsetzbar sind.
Von den vier ISDN-Anschlüssen auf der QuadBRI haben wir für die Beispielkonfiguration je zwei Ports im NT- und zwei im TE-Modus betrieben. Zur Stromversorgung angeschlossener ISDN-Endgeräte im NT-Modus dient ein externes Netzteil, das ebenfalls Junghanns.net zur Verfügung stellte.
Als Hardwarebasis diente ein PC mit Intel MicroATX-Board, 1,8-GHz-Celeron, 128 MByte Speicher und 40-GB-IDE-Festplatte in einem handlichen Micro-Towergehäuse, in das alle Komponenten gerade hineinpassen.
Betriebssystembasis für die Asterisk-Installation war ein Debian-Linux. Dafür gibt es bereits Asterisk-Packages als Binaries, die per apt-get geladen werden können. Für die Junghanns.net-Karten muss man allerdings die aktuelle Version aus dem Asterisk-CVS laden und neu kompilieren.
Bristuff, die Treibersoftware für die QuadBRI-Karte, residiert in einem eigenen CVS und lädt sich beim make die passende Asterisk-Version. Zudem bedarf es verschiedener Patches für die Asterisk-Quelldateien, damit diese gemeinsam mit den Bristuff-Treibern übersetz- und linkbar sind. Diese Patches sind Teil des Bristuff-Pakets.
Bevor man mit Asterisk telefonieren kann, müssen die verschiedenen Anschlüsse beziehungsweise Kanäle konfiguriert und ein Rufnummernplan festgelegt werden. Dieser bestimmt, wie Asterisk die verschiedenen innerhalb des Systems verfügbaren Kanäle miteinander verbindet und gegebenenfalls Anwendungen startet. Die wichtigsten Konfigurationsdateien für die Beispielinstallation sind zaptel.conf und zapata.conf (für die TDM-Ka-näle traditioneller Telefonietechnik), sip.conf (für VoIP-Kanäle via SIP), extensions.conf sowie voicemail.conf (für Voicemail-Anwendungen).
Während in zaptel.conf, zapata.conf, sip.conf und voicemail.conf die Kanäle, die Asterisk zur Verfügung stehen, sowie die Voicemail-Anwendung definiert sind, befindet sich der eigentliche Rufnummernplan in der Datei extensions.conf. Er besteht aus so genannten Extension Contexts, die jeweils mit Namen benannt sind und Anweisungen an Asterisk enthalten, wie hereinkommende und ausgehende Anrufe zu behandeln sind. Dabei geht es um weit mehr als nur das einfache Durchstellen an Endgeräte. Eine der Stärken des Asterisk-Systems ist, dass über Extension Contexts komplexe Abläufe inklusive des Startens von Anwendungen wie Voice-Mail oder des Weiterleitens von Anrufen an andere Standorte beziehungsweise Asterisk-Systeme (zum Beispiel über das IAX-Protokoll) realisierbar sind. Wie das prinzipiell funktioniert, zeigt der Kasten Asterisk-Konfiguration - die ersten Schritte (in der Printausgabe). Die Beschreibung der Konfiguration dort kann natürlich die verschiedenen Konfigurationsmöglichkeiten nur skizzieren und will auf keinen Fall eine gründliche Einführung in das Thema ersetzen.
Das Potenzial einer Nebenstellenanlage auf Asterisk-Basis ist enorm. Man hat viele Optionen, die mit überschaubaren Kosten umsetzbar sind. Nimmt man sich die Zeit für eine gründliche Einarbeitung oder zieht im Rahmen eines Projektes Fachleute hinzu, kann man ohne einen grundlegenden Architekturwechsel mit der Open-Source-PBX leistungsfähige und umfangreiche Telefonie-Infrastrukturen aufbauen; je nach Bedarf sogar mit mehreren im Netz verteilten Systemen, die über das IAX-Protokoll miteinander in Verbindung stehen.
Auch hier gilt übrigens: Der Appetit kommt beim Essen. Ein einfaches Asterisk-System ist mit überschaubarem Aufwand anhand der mitgelieferten Konfigurationsdateien aufgesetzt. Fragen die Benutzer dann nach weiteren Funktionen, muss dieses nicht mit einem Verweis auf die Kosten sofort abgeschmettert werden, denn vieles lässt sich allein durch eine geänderte Konfiguration realisieren - ganz anders als bei konventionellen Telefonanlagen.
Natürlich darf man dabei den Zeitaufwand nicht aus den Augen verlieren. Für das eingangs beschriebene Umstiegsszenario fallen hardwareseitig nur die Kosten für einen durchschnittlich ausgestatteten Rechner sowie die Karten zum Anschluss der Endgeräte und Amtsleitungen an. Softwareseitig allerdings ist die Installation und Konfiguration des Systems nicht an einem Abend erledigt und erfordert mindestens die Qualifikation eines erfahrenen Linux-Anwenders, besser eines Systemadministrators.
Dieter Michel
leitet als freier DV-Journalist und ist Chefredakteur der Fachzeitschrift Prosound.
Torsten Krüger
ist Geschäftsführer der Ncore GmbH in Duisburg und betreut seit 1999 die VoIP-Infrastruktur des Unternehmens.
| iX-TRACT |
|
Wie man Asterisk konfiguriert und was man bei der Codec-Auswahl beachten muss, lesen Sie in der Print-Ausgabe der aktuellen iX.
Dieser Text ist der Zeitschriften-Ausgabe 11/2004 von iX entnommen.
iOS, Android, Windows Phone 7 und HTML5 - das neue Sonderheft von heise Developer führt Einsteiger und Profis in die Programmierung mobiler Geräte ein.