Help for Integrators/de

From Askozia Handbook
Jump to: navigation, search


Contents

Das Integrator Panel

Das Integrator Panel bietet zusätzliche Einstellmöglichkeiten über die das Webinterface nicht verfügt. Dabei wird direkt mit Asterisk kommuniziert. Das Integrator Panel ist durch das Drücken von Escape (esc) von jedem Punkt der Weboberfläche aus zu erreichen. Es gliedert sich in vier Bereiche: Console, Asterisk Manager Interface, Configuration Files und Beta Features.

Das Integrator Panel


Konsole

Mit der Konsole kann direkt mit dem unterliegendem Linux-Betriebssystem kommuniziert werden. Die Konsole kann auch mit SSH (Secure Shell) verwendet werden. Aufgrund der vielfältigen Anwendungsmöglichkeiten der Konsole beschränken wir uns hier auf einige Beispiele.

Die Eingabe von ls listet alle laufenden Prozesse auf:

$ ps
PID USER       VSZ STAT COMMAND
1 root      1360 S    init       
2 root         0 SW               [kthreadd]
3 root         0 SW               [ksoftirqd/0]
4 root         0 SW               [events/0]
5 root         0 SW               [khelper]
9 root         0 SW               [async/mgr]
		.
		.
		.		

free zeigt die Arbeitsspeicherverwendung an:

$ free
           total         used         free       shared      buffers
Mem:       382716        27984        354732     0           596
Swap:           0            0             0
Total:     382716        27984        354732

uptime zeigt die Betriebszeit der Telefonanlage und die durchschnittliche Systemauslastung an.

$ uptime
15:54:42 up  1:30, load average: 12.00, 7.00, 4.00


Asterisk Manager Interface

Das Asterisk Manager Interface (AMI) ist ein mächtiges Werkzeug um auf der Kommandoebene mit Asterisk zu kommunizieren. Dieser Abschnitt soll jedoch nur einen Einblick in die Möglichkeiten des AMIs bieten. Detaillierte Informationen finden Sie in der Asterisk-Dokumentation.

help listet alle Befehle des AMIs auf. Um die Suche nach dem benötigten Befehl einzugrenzen kann "help" gefolgt von einem Schlüsselwort eingegeben werden. Das listet alle verwandten Befehle mit Beschreibung auf. Zum Beispiel listet help core alle Befehle auf die das Wort "core" enthalten:

core abort shutdown - Cancel a running shutdown
core restart gracefully - Restart Asterisk gracefully
core restart now - Restart Asterisk immediately
core restart when convenient - Restart Asterisk at empty call volume
core set debug channel - Enable/disable debugging on a channel
core set {debug

"help" kann ebenfalls jedem Befehl vorangestellt werden, um eine Beschreibung des Befehls zu erhalten. Die Eingabe von help sip show peers führt zu folgender Ausgabe:

sage: sip show peers like <pattern>
	  Lists all known SIP peers.
	  Optional regular expression pattern is used to filter the peer list.

Der Befehl sip show peers aus dem letzten Beispiel listet alle bekannten SIP-Teilnehmer auf. In diesem Fall sind es vier SIP-Teilnehmer, drei Telefone und ein Provider. Die Telefone 105, 109 und der SIP-Provider sind angemeldet, Telefon 108 ist offline:

Name/username              Host            Dyn Nat ACL Port     Status     
105/xxxxxxxx               xxx.xx.xx.xxx    D   N      xxxxx    OK (24 ms) 
108                        (Unspecified)    D   N      xxxx     UNKNOWN    
109/xxxxxxxx               xxx.xx.xx.xxx    D   N      xxxxx    OK (12 ms) 
SIP-PROVIDER-91306662834c  xxx.xx.xx.x          N      xxxx     OK (20 ms) 
4 sip peers [Monitored: 3 online, 1 offline Unmonitored: 0 online, 0 offline]


Konfigurationsdateien

Die Asterisk-Konfigurationsdateien (eng.: configuration files) können von erfahrenden Anwendern direkt editiert werden. Wählen Sie dazu die gewünschte Konfigurationsdatei und klicken auf edit. Für das Bearbeiten der Dateien stehen zwei Modi zur Auswahl: "Append" (deu.: anhängen) und "Override" (deu.: überschreiben). Wird Append ausgewählt, werden die Erweiterungen an das Ende der Konfigurationsdatei geschrieben. Wählen Sie Override, werden Parameter in der Konfigurationsdatei überschrieben.

Asterisk-Konfigurationsdatei

Möchten Sie zum Beispiel eine Anwendung unter der Rufnummer "0099" hinzufügen, die dem Anrufer ein Echo wiedergibt, können Sie das mit folgendem Code in der Konfigurationsdatei "extensions.conf" erreichen. Der verwendete Modus ist Append.

[internal](+)
exten => 0099,1,Answer()
exten => 0099,2,Echo()
exten => 0099,3,Hangup()

Möchten Sie zum Beispiel dass alle Asterisk-Module automatisch geladen werden, geben Sie folgenden Code in der Konfigurationsdatei "modules.conf" ein. Der verwendete Modus ist Override.

[modules]
autoload=yes


Beta-Features

Bei den Beta Features handelt es sich neue Features, die noch nicht stabil oder vollständig genug sind, um in der Weboberfläche eingesetzt zu werden. Wenn Sie uns Feedback für diese Features geben möchten, verwenden Sie bitte die Askozia Foren.


Linux-Konsole

Neben dem Integrator Panel kann über das Konsolenmenü von AskoziaPBX unmittelbar nach Start der Telefonanlage auf die Linux-Konsole zugegriffen werden. Drücken und bestätigen Sie dafür '9’.

Askozia-Konsolenoptionen

Weitere Informationen zum Konsolenmenü von AskoziaPBX finden Sie im Menü Einstieg in AskoziaPBX unter Askozia-Konsole und Konsolenoptionen


Konfiguration über Konsole einspielen

Die Konfigurationsdatei config.xml kann über die Konsole eingespielt werden. Befolgen Sie dafür die folgenden Schritte.

1. Starten Sie nach Anschluss eines Monitores die Telefonanlage und warten Sie bis das Konsolenmenü erscheint.
2. Geben Sie ’9’ ein und bestätigen Sie mit der Enter-Taste um die Linux-Konsole aufzurufen.
3. Geben Sie folgenden Befehl ein.

ls /dev/sd*

4. Datenträger mit der XML Konfiguration an den USB Port anschließen. 5. Geben Sie folgenden Befehl ein.

ls /dev/sd*

6. Notieren welches Laufwerk hinzugekommen ist (z.B. sdc1) 7. Geben Sie folgenden Befehl ein.

mkdir /usb

8. Geben Sie folgenden Befehl ein.

mount -r /dev/sdc1 /usb/

9. Geben Sie folgenden Befehl ein.

mount -r remount -w /cf/

10. Geben Sie folgenden Befehl ein.

cp -r /usb/pfad-und-name-des-backups.xml /cf/conf/config.xml

11. Geben Sie folgenden Befehl ein.

reboot

Damit sollte die gewünschte Konfiguration eingespielt worden sein.


SSH-Zugriff auf AskoziaPBX

In vielen Situationen kann es nützlich sein, per SSH auf das System zu zu greifen. Abhängig davon, von welchem Betriebssystem aus dies geschehen soll, sind unterschiedliche Schritte notwendig.


SSH in Unix-basierten Systemen

Zunächst wird ein Terminal Fenster geöffnet. Anschließend wird die Verbindung mit dem folgenden Befehl aufgebaut.


ssh root@[IP.der.Askozia.PBX]

Es wird nach einem Passwort verlangt. Hier muss das Passwort der Weboberfläche genutzt werden.

Man befindet sich nun in der Linux-Konsole von AskoziaPBX.

Um auf die Asterisk-Konsole zu gelangen, wird nun der folgende Befehl benötigt.


asterisk -r

Zugriff auf die Asterisk-Konsole


SSH in Windows

Zunächst muss ein Terminal-Programm heruntergeladen und installiert werden. In diesem Beispiel nutzen wir das Programm PuTTY. Unter Session wird als Host-Name die IP-Adresse der Zielanlage eingegeben. Der Standard SSH-Port lautet 22.

PuTTY, Sitzungseinrichtung, Zuweisung der IP-Adresse


Manuelle Attribute

Manuelle Attribute können für verschiedene Kontexte (hier: Wirkungsbereiche) definiert werden. Die definierten Attribute gelten dann nur in diesem Kontext. Aus diesem Grund gibt es in der Weboberfläche verschiedene Kontexte, in denen manuelle Attribute definiert werden können. Diese befinden sich in den Erweiterten Einstellungen der verschiedenen Telefon- und Provider-Typen. In diesem Kontext definiert, gelten diese Attribute nur für das jeweilige Telefon oder den jeweiligen Provider.

Sollen manuelle Attribute global, dass heißt für alle Telefone und Provider eines Technologietypes (z. B. SIP) gelten, müssen die Attribute in den erweiterten Einstellungen der Weboberfläche (Erweitert:SIP/IAX/Analog) definiert werden. Die hier definierten Attribute gelten im Asterisk-Kontext [general] und überschreiben alle anderen Attribute für diesen Technologietyp, die in anderen Kontexten möglicherweise existieren.

Manuelle Attribute

Um zum Beispiel das User-Agent-Feld für SIP-Nachrichten global festzulegen useragent = meinText im Textfeld für manuelle Attribute eintragen und auf Speichern klicken.

useragent = meineTelefonanlage

Eine Übersicht der existierenden manuellen Attribute finden Sie in der Dokumentation von Asterisk.


Manual Dialplan Incoming/Outgoing

Manuelle Wählpläne können für verschiedene Kontexte (hier: Wirkungsbereiche) definiert werden. Die definierten Wählpläne gelten dann nur in diesem Kontext. Aus diesem Grund gibt es in der Weboberfläche verschiedene Kontexte, in denen manuelle Wählpläne definiert werden können. Diese befinden sich in den Erweiterten Einstellungen der verschiedenen Telefon- und Provider-Typen. In diesem Kontext definiert, gelten diese Wählpläne nur für das jeweilige Telefon oder den jeweiligen Provider.


Sperren von ausgehenden Nummern

Um für Telefone oder Provider einzelne Nummern (z.B. Sonderrufnummern) zu sperren, müssen die folgenden Befehle jeweils in den Manual Dialplan outgoing eingetragen werden. In dem folgenden Bild werden Nummern gesperrt, die mit 0800, 0900 oder mit 01 beginnen. Die Befehle können an den markierten Stellen für andere Rufnummern angepasst werden.

Blockieren von Sonderrufnummern

Indem die Nummernfolge 00.+ gesperrt wird, werden sämtliche, internationale Landesvorwahlen blockiert.

Blockieren von internationalen Rufnummern


Ausnahmen von blockierten Nummern

Sind bestimmte Nummern für Provider gesperrt, kann keines der angemeldeten Telefone über diesen Provider die entsprechenden Nummern anrufen. Soll für einzelne Telefone eine Ausnahme gesetzt werden, geschieht das im Manual Dialplan Outgoing des jeweiligen Telefons. Hierzu muss der folgende Befehl genutzt werden.

Ausnahme geblockter Nummern für einzelne Telefone


Codecs

Ein Codec bestimmt wie Audio- und Videodaten innerhalb eines Netzwerkes transportiert werden und welche Qualität Audio und Video haben. Wenn die Sprachqualität zu niedrig ist oder es während des Gesprächs zu Rucklern oder Ausetzern kommt, kann es Sinn machen den Codec zu wechseln. Oft kann die benötigte Bandbreite für den Codec von der Internetverbindung nicht bereit gestellt werden.

Man unterscheidet zwischen komprimierten und unkomprimierten Daten. Bei den komprimierten, unterscheidet man zusätzlich zwischen verlustfreier und verlustbehafteter Komprimierung.

Ein Codec ist immer ein Kompromiss zwischen verwendeter Bandbreite, aufzuwendender Rechenleistung zur Komprimierung der Sprachdaten und der Sprachqualität. Wideband-Codecs ermöglichen Sprachübertragung in HiFi-Qualität. Dies wird jedoch noch nicht von allen Geräten unterstützt. Narrowband-Codecs ermöglichen Sprachübertragung bei schlechter Bandbreite, jedoch leidet die Gesprächsqualität erheblich. Generell ist eine Bandbreite von 100 kBit/s in beide Richtungen empfehlenswert.


Audio Codecs

AskoziaPBX unterstützt eine Vielzahl von freien und lizensierten Codecs.

MOS (Mean Opinion Score) ist ein Messverfahren, um die Sprachqualität der verschiedenen Codecs miteinander vergleichen zu können. Eine repräsentative Gruppe bestimmt, wie nahe der eingesetzte Codec der menschlichen Sprache im Original kommt. Die Skala reicht von 1 (schlechte Qualität) bis 5 (beste Qualität). Werte größer als 4 entsprechen der Sprachqualität im Festnetz.

Codec Bandbreite MOS-Wert Qualität
G.711u-law 155 kBit/s 4,3 gut (USA und Japan)
G.711A-law 180 kBit/s 4,4 sehr gut (Europa)
GSM 60-90 kBit/s 3,8 befriedigend
G.722 180 kBit/s 4,5 sehr gut
G.723.1 60 kBit/s 3,8 befriedigend
G.726 (AAL2) 100 kBit/s 3,8 befriedigend
G.726 (RFC3551) 120 kBit/s 3,8 befriedigend
G.729 70 kBit/s 3,92 befriedigend
iLBC 80 kBit/s 4 befriedigend
SpeeX 60-120 kBit/s 4 befriedigend
ADPCM 16-64 kBit/s k.A. k.A.
16 bit Signed Linear PCM 64 kBit/s 4 befriedigend
LPC10 2,4 kBit/S k.A. k.A.
Codec-Übersicht

In der folgenden Übersicht können Sie sehen, wie lange die Umwandlung von einem Codec in einen anderen Codec dauert und welche Codecs ineinander umgewandelt werden können. Die Einheit ist Millisekunden.

Translation times between formats (in microseconds) for one second of data
Source Format (Rows) Destination Format (Columns)

	g723 gsm ulaw alaw g726aal2 adpcm slin lpc10 g729 speex ilbc g726 g722 slin16
g723     -    -    -     -      -     -     -     -   -   -      -     -     -      -
 gsm     -    -  3000  3000   7999  3000  2000  9999  -     -    -  6999  4999  10998
ulaw     -  5999   -   1000   6998  1999   999  8998  -     -    -  5998  3998   9997
alaw     -  5001     1     -  6000  1001     1  8000  -     -    -  5000  3000   8999
g726aal2 -  9999  5999  5999     -  5999  4999 12998  -     -    -  9998  7998  13997
adpcm    -  6000  2000  2000  6999     -  1000  8999  -     -    -  5999  3999   9998
slin     -  5000  1000  1000  5999  1000     -  7999  -     -    -  4999  2999   8998
lpc10    - 10999  6999  6999 11998  6999  5999     -  -     -    - 10998  8998  14997
g729     -     -     -     -     -     -     -     -  -     -    -     -     -      -
speex    -     -     -     -     -     -     -     -  -     -    -     -     -      -
ilbc     -     -     -           -     -     -     -  -     -    -     -     -      -
g726     - 10000  6000  6000 10999  6000  5000 12999  -     -    -     -  7999  13998
g722     -  8999  4999  4999  9998  4999  3999 11998  -     -    -  8998     -   5999
slin16   - 13999  9999  9999 14998  9999  8999 16998  -     -    - 13998  5000      -

Per drag-and-drop lassen sich die Codecs in der Weboberfläche von links nach rechts, beziehungsweise von rechts nach links ziehen. Die blau unterlegten Codecs werden verwendet, die rot unterlegten sind deaktiviert. Die Reihenfolge, in der die Codecs angeordnet sind, bestimmt die Priorität in der diese verwendet werden. Oben sind die Codecs mit hoher Priorität, unten die mit niedriger Priorität aufgeführt.

Audiocodecs


Video Codecs

H.261 (von 1988) ist ein Codec für die digitale Kompression und Dekompression von Videosignalen. Ursprünglich wurde er entwickelt um Videotelefonie über ISDN-Leitungen durchzuführen. H.261 war der erste digitale Video-Kodierungs-Standard. H.263 (von 1995) und H.264 (von 2001) basieren auf den Methoden von H.261.

Alle Standards sind für niedrige Datenübertragungsraten und wenig Bewegung in den Bildern optimiert. Datenübertragungsraten sind jedoch nicht definiert. H.264 ist als neuester Standard und auch für hoch aufgelöste Bilddaten geeignet.

Per drag-and-drop lassen sich die Codecs in der Weboberfläche von links nach rechts, beziehungsweise von rechts nach links ziehen. Die blau unterlegten Codecs werden verwendet, die rot unterlegten sind deaktiviert. Die Reihenfolge, in der die Codecs angeordnet sind, bestimmt die Priorität in der diese verwendet werden. Oben sind die Codecs mit hoher Priorität, unten die mit niedriger Priorität aufgeführt.

Videocodecs


Persönliche Sprachmeldungen mit AskoziaPBX verwenden

Um Sprachmeldungen (engl. Voice Prompts) zu verwenden, die nicht standardmäßig in AskoziaPBX enthalten sind, führen Sie bitte folgende Schritte durch.

Es wird davon ausgegangen, dass die passenden Sprachmeldungen in einem Asterisk-konformen Format bereits auf Ihrem Computer vorliegen. Eine Übersicht über verfügbare Asterisk Sounds finden Sie hier. Sollten Sie selbst erstellte Sprachmeldungen verwenden, achten Sie darauf, dass die Bezeichnungen der Dateien identisch mit denen der Asterisk Sounds sind.

Download Seite für Audioprompts

Verbinden Sie sich mit Hilfe eines SFTP-Programms (z.B. Fugu oder WinSCP) mit AskoziaPBX und öffnen Sie die Ordnerstruktur des Speicherlaufwerkes.

User: root

Passwort: “Ihr Webinterface Passwort"


Gehen Sie zu storage -> usbdisk1 -> askoziapbx -> media

AskoziaPBX Ordnerstruktur


Im Ordner sounds sind die vorhandenen Sprachen zu finden. Legen Sie an dieser Stelle bitte einen neuen Ordner an. Dieser Ordner muss custom1, custom2 oder custom3 genannt werden.

Media-Ordner, custom1-Unterordner


In den neu angelegten Ordner müssen nun die gewünschten Sprachmeldungen eingefügt werden. Dabei ist darauf zu achten, dass Ordnerstruktur, Dateinamen und Dateiformat, identisch zu denen der anderen Sprachen sind.

Sounddateien


Anschließend kann im Askozia Webinterface für Telefone und Provider die Sprache angepasst werden. Dafür wird die Spracheinstellung des erstellten Ordners ausgewählt (z.B. Custom 1).

Spracheinstellungen


Nachdem die Einstellungen im Webinterface gespeichert wurden, werden die neu installierten Sprachmeldungen verwendet.


Provider-spezifische Konfiguration

1&1

Der VoIP-Provider 1&1 setzt für eingehende VoIP-Telefonate mehreren Server ein. Dadurch kommen Anrufe, die auf Ihrer AskoziaPBX eingehen von einer Vielzahl unterschiedlicher IP-Adressen. Diese IP-Adressen müssen AskoziaPBX bekannt sein, damit eingehende Anrufe angenommen und zu den entsprechenden Telefonen geroutet werden.

Um die Liste der 1&1 Server einzutragen, gehen Sie bitte in die Provider Konteneinstellungen von 1&1 und öffnen Sie den Reiter "Erweiterte Einstellungen". In dem Feld "Multiple Hosts" müssen nun die IP-Adressen, wie folgt, eingetragen werden.

Auszug der Serverliste von 1&1


Callcentrix

Fügen Sie zur Konfiguration von Callcentrix die folgenden Befehle im Textfeld Manuelle Attribute in den Erweiterten Einstellungen des Providerkontos ein.

progressinband=yes
session-timers=refuse
disallowed_methods=UPDATE
Manuelle Attribute für Callcentrix-Konfiguration


Deutsche Telekom All-IP (DeutschlandLAN)

Für die Nutzung eines Telekom All-IP Anschlusses mit AskoziaPBX sind im Wesentlichen die folgenden Schritte erforderlich. Aufgrund regelmäßiger Änderungen seitens der Deutschen Telekom, können wir an dieser Stelle leider keine detailierte Anleitung anbieten.

1. Bitte registrieren Sie die mitgelieferte Hardware der Deutschen Telekom am Anschluss.

2. Richten Sie nun in der jeweiligen Hardware ein Telefon pro eingehender Nummer ein (Beispiele für interne Nummern: 620, 621, 622, usw.)

3. Leiten Sie die eingehenden Nummern an die entsprechenden internen Telefonkonten.

4. In der Weboberfläche von AskoziaPBX muss ein Provider-Konto für die Deutsche Telekom als VoIP-Provider angelegt werden.

Unterstützte Technologien für Provider

4.1 Host ist die IP-Adresse der Telekom-Hardware

4.2 Nutzername und Passwort sind wie in der Telekom-Hardware zu vergeben.

Grundeinstellungen für Deutsche Telekom IP-Anschlüsse

4.3 In den eingehenden Wählmustern werden nun die Kontonummern der Telekom-Hardware (bsw. 620, 621, 622) eingetragen und an die internen Ziele der Askozia durchgeleitet.

Ausgehende Wählmuster für Deutsche Telekom IP-Anschlüsse


Deutsche Telekom ISDN-Anschlüsse

Deutsche Telekom ist ein Anbieter für ISDN-Anschlüsse in Deutschland. Bei der Konfiguration von ISDN-Anschlüssen der Deutschen Telekom ist es notwendig, die nachstehenden Konfigurationspunkte zu beachten.

Es wird davon ausgegangen dass die Konfiguration der Anschluss-Ports für den ISDN-Provider erfolgreich wie im Kapitel ISDN-Anschlüsse vorgenommen wurde.

Nach dem Anlegen eines ISDN-Provider-Konto müssen die folgenden Schritte beachtet werden.

Konfigurieren Sie zunächst die Grundeinstellungen. Achten Sie auf die Vergabe des korrekten Hardwareport oder der Port-Gruppe.

Grundeinstellungen


Anschließend müssen die eingehenden Wählmuster, wie im Bild zu sehen, zugeordnet werden.

Weiterleitungen


Bitte konfigurieren als nächstes die ausgehende Anrufer-Kennung. Dies kann entweder im Provider-Konto geschehen oder in den Telefonkonten. Wichtig ist, dass das Nummernformat korrekt eingegeben wird.

Anrufer-Kennung


Die Regionalen Einstellungen nehmen Sie bitte wie folgt vor.

Regionale Einstellungen


Easybell

Im folgenden Video wird Easybell als VoIP-Anbieter vorgestellt. Zudem werden ein Easybell SIP-Trunk unter AskoziaPBX eingerichtet und das Easybell Kundenportal vorgestellt.


Easybell Business Voice

Das Einrichten eines Easybell Business Voice Anschlusses mit AskoziaPBX wird im folgenden Video erläutert.


A1 Telekom Österreich

Wird in AskoziaPBX ein Providerkonto für A1 Telekom Österreich eingerichtet, muss darauf geachtet werden, dass die beiden folgenden Punkte eingehalten werden.

  • Es darf in den Anschlusseinstellungen der beroNet-Karte kein Echo-Canceling aktiviert sein
  • Als Switching-Type muss Nationaler Type 1 verwendet werden
AskoziaPBX, Providerkonto für A1 Telekom


CallControl

Dieser Abschnitt erklärt die Konfiguration von CallControl für die Nutzung mit AskoziaPBX. CallControl ist eine CTI (Computer Telephony Integration) Software eines Drittanbieters für Mac OS X mit Asterisk, und ermöglicht Telefonie von Ihrem Computer. Informationen über die CallControl Software lassen sich unter www.callcontrol.us finden.


AskoziaPBX für CTI einrichten

CallControl für AskoziaPBX kann anhand der folgenden Schritte eingerichtet werden.

1. Öffnen Sie das Askozia Webinterface in Ihrem Internetbrowser und klicken Sie auf "Open admin interface".

2. Klicken Sie im Menü auf der linken Seite auf "Erweitert" und anschließend auf "Manager".

3. Aktivieren Sie die Checkbox "Make AMI available from the outside".

Asterisk Manager Interface (AMI) aktivieren

4. Klicken Sie auf den grünen "Hinzufügen" Button auf der rechten Seite, unterhalb der "Asterisk Manager Interface" Kopfzeile.

5. Nehmen Sie die folgenden Einstellungen vor.

  • Username: Wählen Sie einen CallControl Nutzernamen, wie bsw. cti1, und notieren Sie sich diesen.
  • Secret: Wählen Sie ein CallControl Passwort, und notieren Sie sich dieses.
  • Deny Network: 0.0.0.0 / 0.0.0.0
  • Permit Network: Geben Sie Netzwerkadresse und -maske für Ihren Computer an.
  • Read: Aktivieren Sie die folgenden Checkboxes: agent, call, user, verbose.
  • Write: Aktivieren Sie die folgenden Checkboxes: agent, call, originate.
CallControl Nutzerkonto in AskoziaPBX hinzufügen

6. Klicken Sie auf "Speichern".

7. Klicken Sie im "Manager" Fenster ein weiteres Mal auf "Speichern".


Extension und Kontext des Telefones ermitteln

Für die Konfiguration von CallControl, werden Extension und Kontext des gewünschten Telefones benötigt. Folgen Sie dafür den folgenden Schritten.

1. Gehen Sie wieder in das AskoziaPBX Admin Interface.

2. Klicken Sie im Menü auf der linken Seite auf "Konten" und anschließend auf "Telefone". Ihnen wird eine Liste aller an AskoziaPBX angemeldeten Telefone angezeigt.

3. Klicken Sie auf die gewünschte Rufnummer, welche im gegenwärtigen Beispiel "101" laurer, und notieren Sie sich diese.

Beispiel für SIP-Telefonkontenliste

4. Die Weboberfläche bietet Ihnen alle Optionen um dieses Telefon zu konfigurieren. An dieser Stelle ist das allerdings nicht nötigt. Klicken Sie stattdessen nun in die Adressleiste Ihres Internetbrowser, um die vollständige Internetadresse der Internetseite zu sehen, auf der Sie sich gerade befinden.

Adressleiste eines Internetbrowsers während ein SIP-Telefonkonto besucht wird

5. Markieren und kopieren Sie den Teil der Internetadresse hinter "uniqids=". Dieser Teil beginnt üblicherweise mit "SIP-PHONE-<eine id>"

6. Dies ist der "Kontext" Ihres Telefones. Notieren Sie sich diesen um ihn später in den CallControl Einstellungen anzugeben.

An dieser Stele haben Sie alle Informationen ermittelt, die benötigt werden um CallControl mit AskoziaPBX zu konfigurieren.


CallControl einrichten

Vergewissern Sie sich vor der Konfiguration von CallControl für AskoziaPBX dass AskoziaPBX vorbereitend konfiguriert wurde, wie in den vorherigen Abschnitten beschrieben. Folgen Sie anschließend den folgenden Schritten um CallControl zu konfigurieren.

1. Öffnen Sie "CallControl"

2. Klicken Sie im "CallControl" Menü auf "Preferences..."

3. Öffnen Sie den "General" Reiter und nehmen Sie die folgenden Einstellungen vor.

  • Hostname: Geben Sie IP oder Hostname Ihres AskoziaPBX Systemes an.
  • Port: 5038
  • Username: Geben Sie den Nutzernamen an, den Sie in AskoziaPBX unter Asterisk Manager Interface (AMI) angegeben haben.
  • Password: Geben Sie das Passwort (in Asterisk als "Secret" bezeichnet) an, welches Sie in AskoziaPBX unter Asterisk Manager Interface (AMI) angegeben haben.
  • CRAM MD5 Auth: Aktivieren
  • Asterisk Channel: Geben Sie "SIP/Extension" an, bsw. "SIP/101".
  • Dialout Context: Geben Sie den Kontext des Telefones an, den Sie im vorherigen Abschnitt ermittelt haben.
  • Dialin Extension: Geben Sie die Extension des Telefones an, bsw. "101".
  • Dialin Context: "internal"
CallControl, generelle Einstellungen

4. Öffnen sie den "Phone" Reiter und nehmen Sie die folgenden Einstellungen vor.

  • Caller ID: Geben Sie die Extension des Telefones an, bsw. "101".
  • FXO Prefix: 3

5. Konfigurieren Sie die übrigen Einstellungen wie "Dialing Prefix", "Country Code", usw. entsprechend Ihrer Anforderungen.

6. Beenden Sie die Konfiguration durch Schließen der Preferences starten Sie CallControl neu.


Softphones einrichten

Juggler

Im folgenden wird erläutert, wie ein Juggler Softphone unter AskoziaPBX eingerichtet und verwendet werden kann.

1. Zunächst muss in den Juggler-Einstellungen ein neues Konto angelegt werden. Öffnen Sie dazu die Proxy-Einstellungen und tragen Sie Ihre Daten ein. Speichern Sie anschließend Ihre Angaben.

Anlegen eines Kontos in Juggler


2. Im nächsten Schritt muss ein Konto für das Softphone in Askozia angelegt werden. Speichern Sie anschließend Ihre Einstellungen.

Anlegen eines Kontos in Askozia


3. Nach dem Speichern des neuen Telefonkontos, erscheint es in der Übersicht. Das grüne Lämpchen signalisiert dass die Verbindung zwischen AskoziaPBX und Juggler hergestellt wurde.

Askozia Weboberfläche, erfolgreiche Verbindung mit Juggler-Softphone


4. Die erfolgreiche Verbindung wird ebenfalls in Juggler angezeigt, in Form des grünen WiFi-Symboles.

Juggler, Erfolgreiche Verbindung mit AskoziaPBX


5. In Juggler, kann mit einem Rechtsklick auf Kontakte ein neuer Kontakt hinzugefügt werden.

Juggler Kontaktübersicht


6. Tragen Sie die Kontaktdaten ein und speichern Sie Ihre Einstellungen. Es ist wichtig, dass der untere Teil der Einstellungen korrekt ausgefüllt wird, vor allem muss Aktiviert auf Ja gesetzt werden.

Neuen Kontakt in Juggler anlegen


7. Anschließend wird der neue Kontakt unter Kontakte aufgeführt. Das Belegtlampenfeld (BLF) zeigt den Status des Kontaktes an. In diesem Fall ist das BLF grün und suggeriert dass der Kontakt verfügbar ist.

Juggler, Kontakt verfügbar


8. Das BLF wechselt zu rot, wenn der Kontakt sich in einem Gespräch befindet.

Juggler, Kontakt nicht verfügbar


9. Falls ein Kontakt nicht registriert ist, wird dies mit einer Uhr im BLF gekennzeichet, wie in diesem Beispiel für John.

Juggler, Kontakt nicht registriert


10. Falls ein Kontakt versucht, eine andere Person an zurufen, wird sein BLF als rot und damit nicht verfügbar gekennzeichnet, wie Phil in diesem Beispiel.

Falls ein Kontakt gerade von einer anderen Person angerufen wird, wird sein BLF orange gekennzeicht, wie John in diesem Beispiel. Unter dem Kontakt erscheint ein gelbes Feld welches den Anrufer anzeigt. Bei Klick auf dieses Feld, wird der Anruf übernommen.

Juggler, Anrufübernahme


11. Wenn der Anruf angenommen wird, wird das Gespräch aufgebaut und die eigene Statuszeige entsprechend angepasst.

Juggler, ein Telefonat findet statt
Juggler, Status während eines Telefonates


TAPI

AskoziaPBX bietet von Haus aus keine eigene TAPI Schnittstelle. Es können allerdings diverse Asterisk kompatible TAPIs, von Drittanbietern, genutzt werden.


Einbindung der Phone Suite TAPI für Asterisk

Um AskoziaPBX mit der Phone Suite TAPI zu nutzen, muss die folgende Konfiguration vorgenommen werden.

Legen Sie im Askozia Webinterface unter Erweitert -> Manager -> Asterisk Manager Interface einen neuen Nutzer an, wie im Bild zu sehen.

Phone Suite Konfiguration im AskoziaPBX Webinterface


Installieren Sie Phone Suite auf dem gewünschten System und öffnen Sie die Anwendung. Durch einen Klick auf Konfigurieren gelangen Sie in das Einstellungsmenü.

Phone Suite Konfigurationsmenü


Erstellen Sie eine neue TAPI-Line und öffnen Sie die Einstellungen.

Neue TAPI-Line


In den TAPI-Line-Einstellungen müssen nun die Daten (Server Typ, IP-Adresse,Port, Nutzername und Passwort), die Sie bereits in AskoziaPBX eingetragen haben, konfiguriert werden. Anschließend muss die AskoziaPBX neu gestartet werden.

Dateneingabe


Öffnen Sie das Integrator Panel -> AMI und geben Sie den Befehl manager reload ein.

Neustart des Asterisk Manager


Wählen Sie das gewünschte Telefon aus und kopieren Sie den Kontext.

Kopieren der Telefon SIP-ID


Tragen Sie die Daten in die Konfiguration der TAPI ein.

Eingabe der Daten in die TAPI


Nach dem Neustart verbindet sich die Phone Suite TAPI mit AskoziaPBX

Um einen Anruf über Outlook zu initiieren, öffnen Sie bitte eine Visitenkarte und klicken Sie auf Anruf -> Gewünschte Rufnummer.

Anruf initiieren


IP-Türsprechanlagen

Baudisch Intercom

Baudisch Intercom ist ein deutscher Hersteller von IP-Türsprechanlagen, mit Sitz in Wäschenbeuren. Das folgende Video stellt die Firma Baudisch Intercom sowie ihr Produktangebot vor, und erläutert die Konfiguration einer IP-Türsprechanlage mit AskoziaPBX. Im verbleibenden Abschnitt wird der Einsatz von Baudisch IP-Türsprechanlagen und Cam-Modulen mit AskoziaPBX erläutert.


Baudisch Intercom SIP-Türmodul

Um ein Baudisch SIP-Türmodul einzurichten, müssen Sie zunächst die Netzwerkeinstellungen korrekt konfigurieren. Das SIP-Modul kann folgende IP-Adressen ab Werk haben:

  • 192.168.0.105
  • 192.168.1.200
Baudisch Intercom SIP-Türmodul, Netzwerkeinstellungen


1. Konfigurieren Sie zunächst ein Telefon in Askozia, bsw. mit der Nummer 5000.

Baudisch Intercom SIP-Türmodul, SIP-Telefone

2. Konfigurieren Sie eine Rufgruppe, welcher von der Türsprechanlage (wenn geklingelt wird) angerufen wird.

Baudisch Intercom SIP-Türmodul, Rufgruppe editieren
Baudisch Intercom SIP-Türmodul, Rufgruppen anzeigen

3. Klicken Sie auf "Quickstart" um eine Schnelleinrichtung durchzuführen

Baudisch Intercom SIP-Türmodul, Hauptmenü

4. Konfigurieren Sie die entsprechenden Module (Klingeln, Funktionsmodule) und ändern Sie bei Bedarf das Gerätepasswort.

Baudisch Intercom SIP-Türmodul, Schnellstart

5. Richten Sie eine Nummer für die Zentrale ein. Diese Nummer wird bei Bedarf von der Türsprechanlage gewählt (in diesem Fall 5001).

Baudisch Intercom SIP-Türmodul, Zentrale

6. Richten Sie eine Nummer für die Türklingel ein. Diese Nummer wird bei Bedarf von der Türsprechanlage gewählt (in diesem Fall 5001).

Baudisch Intercom SIP-Türmodul, Ziel des Anrufes

7. Tragen Sie die SIP-Daten des zuvor eingerichteten SIP-Telefons (5000) in der Türsprechanlage ein.

Baudisch Intercom SIP-Türmodul, SIP-Daten


Baudisch Intercom CAM-Modul

Um ein Baudisch CAM-Modul einzurichten, müssen Sie zunächst die Netzwerkeinstellungen korrekt konfigurieren. Das CAM-Modul kann folgende IP-Adressen ab Werk haben:

  • 192.168.0.180
  • 192.168.0.185
  • 192.168.1.220

1. Klicken Sie auf "Konfiguration", um das CAM-Modul zu konfigurieren.

Baudisch Intercom CAM-Türmodul, Menü

2. Legen Sie eine generelle feste IP-Adresse für das Modul und ggf. Zugangsdaten fest.

Baudisch Intercom CAM-Türmodul Konfiguration, Teil 1
Baudisch Intercom CAM-Türmodul Konfiguration, Teil 2

3. Sie können nun direkt über das Webinterface auf die Kamera des CAM-Moduls zugreifen. Um das Kamerabild mit einem Telefon nutzen zu können, nutzen Sie folgende URLs:

Baudisch Intercom CAM-Türmodul, Snom-Display
Baudisch Intercom CAM-Türmodul, Snom-Webinterface
Baudisch Intercom CAM-Türmodul, Gigaset-Display
Baudisch Intercom CAM-Türmodul, Gigaset-Webinterface

Diese URLs können entweder im lokalen Telefonbuch des jeweiligen Telefons oder, wenn das Telefon Türsprechanlagen direkt unterstützt, als Türklingel-Bild hinterlegt werden.


Notice-Meldungen in den Logs deaktivieren

Um die Notice-Meldungen in den Logs zu deaktivieren, gehen Sie bitte wie folgt vor.

1. Öffnen Sie im AskoziaPBX Webinterface das Integrator Panel (Drücken der Esc-Taste)

2. Wechseln Sie bitte in den Reiter Configuration Files und wählen Sie die logger.conf aus.

3. Anschließend wählen Sie Override und löschen aus der Zeile syslog.local0... das notice.

4. Bestätigen Sie die Änderung mit Speichern.

Manipulation der "logger.conf"

5. Wechseln Sie in den Reiter AMI und geben Sie den Befehl logger reload ein.

reload logger

Ab diesem Zeitpunkt werden die Notice-Meldungen nicht mehr in den Log-Ausgaben erscheinen.


Fehlerbehebung für Interface-Karten

Es wird gezeigt, welche Schritte notwendig sind um Interface-Karten der unterschiedlichen Techniken zu debuggen.


DAHDI-Karten

Analoge Anschlüsse

In Bearbeitung

ISDN-Anschlüsse

Status des ISDN-Port ist grau

ISDN-Port-Status ist grau

Es wird geprüft ob die LED an der Karte grün leuchtet. Ist dies der Fall, ist die Karte zeitlich synchron. Dieser Zustand weist auf ein Konfigurationsproblem hin.

Entweder wurden Karten doppelt erkannt oder die ordnungsgemäße Konfiguration der Karte durch das System ist fehlgeschlagen. In diesem Fall wird empfohlen, die vorhandenen Anschlusskarten aus dem AskoziaPBX Webinterface manuell zu löschen und durch einen Neustart von AskoziaPBX die Karten neu initialisieren zu lassen. ISDN-Anschlüsse werden erst korrekt erkannt und ausgeleuchtet, wenn auch ein Provider für den Port angelegt wurde.

Mit folgendem Befehl lässt sich prüfen, welche DAHDI-Karten erkannt wurden.

Console: dahdi_scan

Konsole, erkannte DAHDI-Karten

In diesem Bild wurde die ISDN-Karte mit ihren einzelnen Ports erkannt. Wird die Karte korrekt von DAHDI erkannt, listet der folgende Befehl die wichtigsten DAHDI-Konfigurationen auf.

Console: cat /etc/dahdi/system.conf

Konsole, Auflistung der DAHDI-Einstellungen

Variablen, denen kein Wert zugeordnet ist, werden im Webinterface von AskoziaPBX überprüft. Mit dem folgenden Befehl erhält man mehr Informationen.

Console: cat /etc/asterisk/chan_dahdi.conf

Konsole, Auflistung der DAHDI-Kanaleinstellungen

Diese Datei beinhaltet die eigentliche Kanal-Konfiguration. Auch hier wird die Ausgabe nach fehlenden Werten überprüft und Auffälligkeiten werden entsprechend im Webinterface von AskoziaPBX überprüft.

Status des ISDN-Port ist rot

ISDN-Port-Status ist rot

Es fehlt die physikalische Verbindung zwischen NTBA und Kartenanschluss. Dies kann mit dem Befehl Console: pri show spans weiterführend überprüft werden. Auf folgendem Bild ist der ISDN-Anschluss "down", also nicht verbunden.

Asterisk Manager Interface, ISDN "down"

Mit Console: pri show span 2 können weitere Informationen (in diesem Fall zum Anschluss 2) abgerufen werden. Bei Leitungsunterbrechung zeigt sich folgendes Bild.

Asterisk Manager Interface, Kanal-Detailansicht für ISDN "down"

Ist eine physikalische Verbindung gegeben, zeigt pri show spans folgende Ausgabe.

Asterisk Manager Interface, ISDN "up"

Die Detailansicht zeigt nun Folgendes:

Asterisk Manager Interface, Kanal-Detailansicht für ISDN "up"

Port der ISDN-Karte ist gelb

ISDN-Port-Status ist gelb

Die Karte ist erkannt und ein Provider wurde eingerichtet. Entweder ist die Anschlussart des Anschlusses inkorrekt (PTP, PTMP), oder der Anschluss ist nicht synchronisiert. Um den Anschluss zu synchronisieren hilft es in den meisten Fällen, einen ausgehenden Anruf über diesen Port zu initiieren.

Port der ISDN-Karte ist grün aber eingehenden/ausgehenden Anrufe sind nicht möglich

ISDN-Port-Status ist grün

Es ist zu prüfen, ob die ausgehende Rufnummer korrekt gesetzt ist. Nur wenige Provider erlauben einen ausgehenden Anruf mit falscher, ausgehender Nummer. Diese sollte unter "Providerkonto->Anruferkennung Optionen->Ausgehende Anruferkennung" überprüft werden. Zusätzlich ist der "Type of Number" unter "Providerkonto->Regionalen Einstellung” in beiden Fällen auf "unknown" zu setzen.

Funktionieren eingehende Anrufe nicht, ist dies meist ein Problem mit den eingehenden Wählmustern. Es gilt den Provider mit einem einzigen leeren Feld zu testen, welcher dadurch alle eingehenden Anrufe abfängt und sie zunächst auf ein Telefon leitet wie unter Catch All für Eingehende Wählmuster unter Rufweiterleitung für Providerkonten erklärt. Sobald dies funktioniert, sollte man die Kopfnummer des Anschlusses eintragen und die Log-Einträge beachten.

Log-Eintrag, eingehender Anruf konnte keinem internen Telefon zugewiesen werden

Hier ist zu sehen, dass der eingehende Anruf keinem internen Telefon zugewiesen werden konnte. Dies lässt sich beheben, indem man die Nummer aus den Logs in den eingehenden Wählmustern einträgt und somit die Nummer von außen verfügbar macht. Bei ISDN gibt es nur endliche Möglichkeiten für eine korrekte ausgehende Nummer.

Beispiel:

Es besteht ein ISDN-Anschluss mit folgendem Rufnummernblock:

  • 053318042181
  • 053318042182
  • 053318042189

In diesem Fall gibt es bsw. für die Rufnummer 053318042182 folgende Möglichkeiten, welche als ausgehende Rufnummernkennung in Frage kommen.

  • 053318042182
  • 53318042182
  • 4953318042182
  • 004953318042182
  • 8042182
  • 2

Wurden diese Varianten getestet, kann "TON (local)" überprüft werden. Dieser ist nicht mit dem TON der gewählten Rufnummer zu verwechseln!

Provider-Konto, regionale Einstellungen, Type of Number (local)

"TON (local)" wird nun auf die unterschiedlichen Möglichkeiten eingestellt und es werden jeweils die oben genannten Rufnummernformate getestet.


beroNet Gateway-Karten

Um aktive Karten der Firma beroNet zu debuggen, muss zunächst ein Tunnel auf die interne IP-Adresse der Karte erstellt werden. Anhängig vom verwendeten Betriebssystem, geschieht dies wie in den folgenden Abschnitten beschrieben.


Zugriff von Windows

Laden Sie ein Terminal-Programm herunter und installieren Sie dies. In diesem Beispiel nutzen wir das Programm PuTTY. Unter Session wird als Host-Name die IP-Adresse der Zielanlage eingegeben. Der Standard SSH-Port lautet 22.

PuTTY, Sitzungseinrichtung, Zuweisung der IP-Adresse

Wechseln Sie als nächstes in den Menüpunkt SSH -> Tunnels und gibt als Source Port den Port 8888 an. Außerdem ist ein Ziel (engl.: destination) anzugegeben welches sich aus der internen IP-Adresse der beroNet Karte und dem Standard HTTP-Port 80 zusammensetzt.

Wenn nur eine Karte verbaut ist, lautet die IP-Adresse der Karte 10.1.0.2, und das Ziel folglich 10.1.0.2:80. Für zwei verbaute Karten lautet das Ziel 10.1.0.2:80 für die erste Karte, und 10.2.0.2:80 für die zweite Karte. Bei zusätzlichen Karten erhöht sich die IP-Adresse nach dem gleichen Muster.

Mit einem Klick auf Add werden die Daten übernommen.

PuTTY, SSH-Tunnels-Konfiguration

Wechseln Sie nun in den Menupunkt Window und geben Sie als Scrollback den Wert 20000 ein.

PuTTY, Window-Konfiguration

Anschließend kann der konfigurierten Sitzung ein Name zugewiesen werden und sie kann für etwaige spätere Verbindungen mit einem Klick auf Save gespeichert werden. Mit einem Klick auf Open wird die Sitzung gestartet.

PuTTY, Sitzungseinrichtung, Zuweisung eines Namens für die Sitzung

Es kann vorkommen, dass PuTTY eine Warnmeldung auswirft. Diese erscheint, wenn in einer früheren Sitzung, für den gewählten Host ein abweichender Sicherheitsschlüssel gespeichert wurde. Bitte vergewissern Sie sich, dass die verbundende Maschine die Richtige ist und quittieren Sie die Meldung dementsprechend. Die Meldung ist ein Hinweis auf eine mögliche Man-in-the-middle Attacke und sollte genau geprüft werden um potentiellen Schaden zu vermeiden.

PuTTY, Sicherheitswarnung

Es öffnet sich ein Konsolenfenster in dem man aufgefordert wird, sich als Benutzer root mit dem Administratorpasswort von AskoziaPBX anzumelden.

PuTTY console, Root-Login an beroNet Gateway-Karte

Die Verbindung zu der beroNet-Karte wurde hergestellt und kann nun genutzt werden.


Zugriff von Unix-basierten Systemen

Öffnen Sie ein Terminal-Programm, wie z.B. Terminal unter Mac OS X.

Mit dem folgenden Befehl wird die Verbindung zu der beroNet Gateway-Karte hergestellt.

ssh root@[IP.der.Askozia.PBX] -L8888:10.1.0.2:80

Als Source Port ist der Port 8888 anzugeben. Das Ziel setzt sich aus der internen IP-Adresse der beroNet Karte und dem Standard HTTP-Port 80 zusammen.

Wenn nur eine Karte verbaut ist, lautet die IP-Adresse der Karte 10.1.0.2, und das Ziel folglich 10.1.0.2:80. Für zwei verbaute Karten lautet das Ziel 10.1.0.2:80 für die erste Karte, und 10.2.0.2:80 für die zweite Karte. Bei zusätzlichen Karten erhöht sich die IP-Adresse nach dem gleichen Muster.

Nach Eingabe des obigen Befehles werden Sie aufgefordert das Administratorpasswort von AskoziaPBX einzugeben.

Terminal, Root-Login an beroNet Gateway-Karte

Die Verbindung zu der beroNet-Karte wurde hergestellt und kann nun genutzt werden.


Das Webinterface der beroNet Karte

Nachdem der Zugriff auf die Gateway-Karte vorbereitet wurde, öffnen Sie ein Browser-Fenster und greifen Sie mit localhost:8888 auf die Weboberfläche der Gateway-Karte zu. Die Anmeldedaten lauten wie folgt:

Nutzername: admin Passwort: admin

beroNet Interface-Karten, Login-Fenster für das Webinterface

Unter Management ist eine Auflistung der Anschlussports der Karte zu sehen. L1 Link zeigt, ob der jeweilige Port eine physikalische Verbindung hat. L2 Link gibt an ob der Port synchronisiert ist.

beroNet Interface-Karten, Management-Einstellungen

Unter Hardware ist eine Auflistung der einzelnen Ports und Ihrer Konfiguration zu finden.

beroNet Interface-Karten, Hardware-Einstellungen

Eine Auflistung der vorhandenen Wählpläne ist unter Dialplan zu finden.

beroNet Interface-Karten, Dialplan-Einstellungen

Nachdem Änderungen an der Konfiguration der Karte vorgenommen wurden, signalisiert ein Button, wie sich die Änderungen wirksam werden.

  • gelb bedeutet, mit einem Klick auf "Activate" sind die Änderungen ohne weitere Folgen aktiv.
  • orange bedeutet, wenn auf "Activate" geklickt wird, werden die Gespräche unterbrochen.
  • rot bedeutet, die Karte muss neu gestartet werden. Alle Gespräche werden unterbrochen.
beroNet Interface-Karten, Button zur Aktiverungen von Änderungen

Unter Preferences kann durch Änderung des API Password und Löschen des eingetragenen Hosts verhindert werden dass Askozia die Karte nachträglich provisionieren kann, falls sie manuell konfiguriert werden soll.

beroNet Interface-Karten, Preferences-Einstellungen

Um die beroNet Karte über AskoziaPBX zu konfigurieren, ohne dass die Karte nach jeder Änderung neu startet, kann mit dem folgenden Befehl im Integrator Panel der Neustart verhindert werden.

touch /tmp/BERONETNOCONFIGURE
Console, beroNet Karten-Neustart unterbinden

Man macht diese Konfiguration rückgängig mit

rm /tmp/BERONETNOCONFIGURE

Unter Managment->Dialplan Debug kann ein Log-Mitschnitt erzeugt werden. Dazu wird auf Start Dialplan Debugging geklickt und der zu prüfende Fall durchgeführt. Es öffnet sich ein weiteres Fenster in dem der Gesprächsablauf zu sehen ist.

beroNet Interface-Karten, Dialplan Debugging


Beispiele für Anrufablaufpläne

Nachfolgend sind einige Fallbeispiele für Telefonate zu sehen. Die Abläufe sind von unten nach oben zu lesen.

Im ersten Beispiel ist der Ablauf eines ausgehendes Gespräch zwischen einem internen SIP-Telefon und einem ISDN-Provider zu sehen.

  • Gelber Text signalisiert den SIP-Kanal des Gespräches. Von unten beginnend wird eine Anfrage für ein Gespräch von Teilnehmer 101 (Zoiper) an den ISDN-Provider gestellt.
  • Der rote Text deutet auf Abläufe im zugehörigen Dialplan hin und zeigt die Zuordnung zu dem benötigten ISDN-Provider.
  • In schwarz geschriebene Textzeilen zeigen die Abläufe auf der ISDN-Seite. Es wird zunächst eine Gesprächsanfrage ausgegeben, SETUP. Anschließend zeigt CONNECT an, dass die Verbindung zustande gekommen ist. Nach dem Gespräch signalisiert das DISCONNECT das Ende des Gesprächs durch Auflegen Normal Clearing an. Jetzt wird der SIP-Kanal durch ein BYE beendet.
  • Am Ende werden noch Anrufdetails in einen karteninternen Einzelverbindungsnachweis geschrieben. (grauer Text)

Der Prozess ist beendet.

beroNet Interface-Karten, Dialplan Debugging, erstes Beispiel

Das zweite Beispiel zeigt einen Anruf, der über einen ISDN-Port eingeht.

  • SETUP signalisiert den Eingang des Anrufs auf Port 1 für die interne Nummer 321321, mit der eingehenden caller ID 05331900989800.
  • Das rote D INCOMING verweist auf den verwendeten, internen Dialplan hin.
  • Anschließend wird ein INVITE an das SIP-Telefon geschickt, welches mit einem OK bestätigt wird.
  • CONNECT deutet auf den Aufbau der Audioverbindung hin.
  • Nachdem das Gespräch geführt wurde, legt hier das SIP-Telefon auf und beendet das Gespräch. Das gelbe BYE zeigt dies.
  • Nun wird auch der ISDN-Kanal abgebaut und wieder frei gegeben, was durch das RELEASE dargestellt ist.
  • Als letzter Schritt werden die Gesprächsdetails in den Einzelverbindungsnachweis geschrieben.
beroNet Interface-Karten, Dialplan Debugging, zweites Beispiel


Grundlegendes zu Wählplänen

AskoziaPBX basiert auf Asterisk und arbeitet mit Wählplänen. Wahlpläne bestehen aus einzelnen Befehlszeilen durch welche die Abhandlungen von Anrufen gesteuert werden. Um ein Verständnis für Wählpläne zu bekommen, führen wir an dieser Stelle einige Grundlagen auf. Diese sollen als eine Basis dienen und es ermöglichen, mit Hilfe weiterer Dokumentation Wählpläne lesen und verstehen zu können.

Der Wählplan von Asterisk ist in der extensions.conf zu finden. Dieser kann bei AskoziaPBX über das Integrator Panel eingesehen und bearbeitet werden.


Aufbau

Wählpläne bestehen aus einzelnen Kontexten. In jedem Kontext sind die Befehlszeilen enthalten, welche nach Extensions und Prioritäten sortiert sind. Ein einfaches Beispiel könnte wie folgt aussehen.

[101/internal]

exten => 101,1,NoOp(Hier passiert noch gar nichts)
exten => 101,2,Set(CALLERID(num)=123456)
exten => 101,3,Set(CALLERID(name)=fuer 101)
exten => 101,n,Answer()

Hierbei handelt es sich um einen Kontext [101/internal] welcher für interne Gespräche, die auf die interne Nummer 101 eingehen, zuständig ist. Die Namen der Kontexte sind immer in eckige Klammern gesetzt und stehen oberhalb eines Befehlsblock. Die einzelnen Befehlszeilen beginnen immer mit exten => und lassen sich so eindeutig identifizieren. Eine Befehlszeile kann auch, abhängig vom zur Verfügung stehenden Arbeitsfenster, über mehrere Textzeilen laufen. Hinter dem exten => ist die 101 definiert. Dies ist die Extension, auf die sich diese Befehle beziehen. Hier kann, abhängig vom Kontext auch ein Wählmuster eingetragen werden. Dazu später mehr. Die von oben nach unten fortlaufende Zahl ist die Priorität und dient als weitere Zuordnung der Befehle im Kontext. Es ist zu sehen, dass die vierte Befehlszeile die Priorität n hat. Es ist wichtig zu wissen, dass die erste Befehlszeile in einem Kontext immer eine 1 sein muss. Die fortlaufenden Prioritäten können durch n ersetzt werden und werden dann von Asterisk automatisch hochgezählt. Dies dient in komplexen Abläufen zur Vereinfachung der Entwicklung. Hinter der Priorität steht der Befehl. Es gibt unzählige, verschiedene Befehle, welche mit unterschiedlichsten Vorraussetzungen und Variablen bestückt werden. Sie alle aufzuzählen sprengt den Rahmen. Im Fortlauf werden Quellen verlinkt, unter denen genauere Dokumentationen hierzu zu finden sind. Für das obenstehenden Beispiel würde folgendes passieren.

  • Es geht ein Anruf von einem anderen internen Telefon auf die interne Nummer 101 ein.
  • Priorität 1: NoOp ist ein Befehl, der erstmal gar nichts ausführt. Es kann aber genutzt werden um Variablen auszugeben. Dies geschieht indem der Variablenname in die runden Klammern geschrieben wird.
  • Priorität 2: Set setzt oder verändert eine Variable. In diesem Fall wird die Nummer der eingehenden caller ID, CallerID(num), auf 123456 gesetzt.
  • Priorität 3: Wiederum ein Set. Hier wird der Name der eingehenden caller ID, CallerID(name), auf fuer 101 gesetzt.
  • Priorität 4: Hier n, beantwortet den Kanal und lässt das Telefon mit interner Nummer 101 klingeln.
  • Auf dem Display des klingelnden Telefon 101 ist zu lesen:"123456 fuer 101".


Kontexte

Neben einem Kontext für generelle Einstellungen im Wählplan, gibt es verschiedene Kontexte für jedes Endgerät wie bsw. Telefone oder Faxe, für jeden Provider, und für interne Applikationen. Unterschiedliche Übertragungstechniken wie analog, ISDN, SIP und IAX benötigen unterschiedliche Kontexte. Auch die Gesprächsrichtung ist entscheidend. Ein Telefon benötigt unterschiedliche Kontexte für eingehende und ausgehende Gespräche. Interne Telefonate werden wiederum anders behandelt als externe Telefonate. Wichtig zu wissen ist, dass Kontexte immer als "Schnittstelle" zwischen einem "Teilnehmer", also bsw. einem Endgerät oder Provider, und Asterisk dienen. Wenn bsw. Telefon A Telefon B anruft, geschieht diese Verbindung nicht direkt. Es werden folgende Abläufe befolgt.

  • Telefon A richtet eine Anfrage über den Kontext [TelefonA/intern], an Asterisk
  • Asterisk "vermittelt" die Anfrage über den Kontext [TelefonB/eingehend] an Telefon B

Die Verbindung kommt also wie folgt zustande.

Telefon A --> [TelefonA/intern] --> Asterisk --> [TelefonB/eingehend] --> Telefon B

Die Verbindung bleibt so auch bestehen. Asterisk behält für das laufende Gespräch durchweg die Kontrolle.

Die "Kommunikation" in einem Wählplan geschieht innerhalb der Kontexte. Durch Befehle wie Goto([[Kontext|]Extension|]Priorität) kann ein Gespräch von einem Kontext in einen Anderen übergeben werden. Dies wird zum Beispiel bei einer Anrufweiterleitung interessant. Bei der Übergabe durch Goto wird nicht nur der gewünschte Kontext als Ziel angegeben, sondern auch die genaue Einsprungposition in diesem Kontext bestimmt. Dies geschieht durch die Angabe der Extension und der Priorität.


Extensions

Die Extensions dienen der Zuordnung der Befehle zu den Zielteilnehmern. Das anfängliche Beispiel bezieht sich auf die Extension 101. Wird also eine Anfrage für einen Gesprächsaufbau für die Nummer 101 in dem Kontext registriert, wird diese in die erste Priorität der Extension 101 geleitet und der darunterliegende Wählplan wird der Reihe nach abgearbeitet. Es ist zu beachten, dass nicht nur Zahlenfolgen als Extension gültig sind. Bei ausgehenden Gesprächen über unterschiedliche Provider beispielweise, spielen die konfigurierten Wählmuster eine wichtige Rolle. Diese werden in der Funktion der Extension immer mit einem _ gekennzeichnet, wie in dem folgenden Beispiel zu sehen.

exten => _0X.,1,NoOp()

Hier würde der Befehl NoOp ausgeführt werden, wenn eine 0 , gefolgt von einer beliebigen Anzahl Nummern von 0-9 (X.) gewählt würde.


Prioritäten

Die Prioritäten gelten als weitere "Adressierung" innerhalb der Wählpläne. Sie werden entweder fortlaufend von oben nach unten nummeriert, oder aber mit einem "n" ausgeführt. In diesem Fall nummeriert Asterisk automatisch von oben nach unten. Dies hat den großen Vorteil, dass bei nachträglichen Änderungen im Wählplan nicht alle Prioritäten manuell angepasst werden müssen. Ein Nachteil ist allerdings, dass die eindeutige Identifizierung von Einsprungmarken erschwert wird. Im Beispiel Goto([[Kontext|]Extension|]Priorität) muss eine eindeutige Priorität angegeben werden um den Befehl korrekt ausführen zu können. Diese Möglichkeit entfällt, wenn die Prioritäten mit "n" angegeben sind. Für diesen Fall bietet Asterisk die Möglichkeit Prioritäten zu labeln. Eine Priorität kann zum Beispiel wie folgt ausgeführt werden.

[101/intern]
exten => 101,n(label),NoOp()

Möchte man nun aus einem anderen Kontext an diese Stelle springen, würde der Goto Befehl wie folgt aussehen.

Goto([[101/intern|]101|]n(label))


Logische Abläufe

Die Logik eines Wählplans wird aus den unterschiedlichen Befehlen zusammen gesetzt, die Asterisk bietet. Nachdem die Adressierung eines Ablaufs durch Kontext, Extension und Priorität erfolgt ist, wird die nachstehende Operation ausgeführt. Diese kann ein einfacher Befehl wie NoOp() oder Goto() sein. Es kann sich aber auch um eine Zusammensetzung von verschiedenen Bedingungen und Abhängigkeiten von unterschiedlichen Variablen handeln.

exten => GotoIF($["${Status_der_tuer}"="1"]?SCHLIESSE_TUER:OEFFNE_TUER)

Diese Zeile bedeutet Folgendes

  • Es handelt sich um eine Abhängigkeit der Variablen ${Status_der_tuer}
  • Ist ${Status_der_tuer} = 1, dann gehe zu SCHLIESSE_TUER
  • Ist ${Status_der_tuer} <> 1, dann gehe zu OEFFNE_TUER

In dieser Art können Befehle zusammengesetzt werden, welche deutlich länger und komplexer sind als der Rahmen es hier zulässt.

Eine sehr gute Dokumentation zu diversen Asterisk Befehlen und zur korrekten Syntax bietet die Seite VoIP-info.org.

Es gilt, dass Wählpläne für ungeübte Augen sehr fordernd erscheinen können. Es sollte dabei immer beachtet werden, dass lediglich das gesamte Konstrukt eines Wählplans groß und komplex ist. Dieses Konstrukt besteht aber aus vielen, kleinen Teilen welche, einzeln betrachtet, logisch nachvollziehbar durchaus verständlich sind.


Netzwerk-Tracing mit AskoziaPBX

Ab der Version 4.0.3 unterstützt AskoziaPBX das direkte Erstellen von Netzwerkmitschnitten (Traces), welche mit Programmen wie Wireshark [WireSHARK] analysiert werden können. Mithilfe dieser Traces können Datenpakete ausgelesen werden welche von und an AskoziaPBX versandt werden. Mithilfe dieser Paketdaten können komplexere Probleme in der Netzwerkübertragung nachvollzogen werden. Im Folgenden wird erläutert wie solche Traces erstellt werden und wie diese Daten weiter bearbeitet werden können.


Netzwerkmitschnitte erstellen

Um mit AskoziaPBX Mitschnitte (Traces) zu erzeugen, muss eine SSH-Verbindung zu AskoziaPBX hergestellt werden. Gehen Sie dazu bitte vor, wie im Kapitel SSH Verbindung beschrieben. Anschließend wird der Mittschnitt mit folgendem Befehl gestartet.

tcpdump -i eth0 -w /storage/usbdisk1/askoziapbx/wireshark_trace_DATE.pcap
Netzwerk-Tracing starten

Reproduzieren Sie nun die Schritte die zu dem Problem führen, welches analysiert werden soll, wie bsw. unterbrochene Gespräche oder eine Weiterleitung die nicht zum korrekten Ziel führt.

Anschließend wird der Mitschnitt über die Tastenkombination ctrl + cgestoppt.

Netzwerk-Tracing stoppen

Der erstellte Trace wird automatisch, unter dem verwendeten Dateinamen, auf dem Datenspeicher von AskoziaPBX gespeichert. Führen Sie ein Speicher-Backup durch um an die Daten zu gelangen. Die angelegten Dateien sind im Ordner AskoziaPBX zu finden.

AskoziaPBX Ordner

Bitte beachten Sie, dass je nach Umfang und Häufigkeit der Mitschnitte, der Speicher von AskoziaPBX belastet wird. Wir empfehlen daher die Traces von dem Speicherbackup zu entfernen und das bereinigte Backup wieder in AskoziaPBX hochzuladen.


Analyse der Traces mit Wireshark

Die aufgenommenen Mitschnitte haben die Dateiendung *.pcap und können direkt durch einen Doppelklick mit dem Programm Wireshark geöffnet werden. Das Hauptprogrammfenster ist in drei Bereiche aufgeteilt. Im obersten Drittel befindet sich die Auflistung der mitgeschnittenen Netzwerkpakete. Mittig wird das oben markierte Paket mit seinen jeweiligen Informationen dargestellt. Der untere Bereich zeigt die, im mittleren Bereich markierten, Paketinformationen auf Bit-Ebene an.

Wireshark, Hauptfenster

Es werden alle Protokolle aufgelistet, die während des Aufnahmezeitraumes über die Netzwerkschnittstelle von AskoziaPBX gesendet und empfangen wurden. Dadurch lassen sich z.B. Gesprächsabläufe genauestens nachvollziehen. Die Filterfunktion ermöglicht es, lediglich die gewünschten Protokolltypen anzeigen zu lassen. So ist es zum Beispiel möglich die Anzeige des SIP-Protokolles zu beschränken.

Wireshark, Auslistung aller SIP-Protokolle

Den vollen Funktionsumfang von Wireshark zu beschreiben, übersteigt den Umfang dieses Tutorials. Daher sind im Folgenden einige Links zu weiterführenden Informationen aufgelistet.

Offizielle Homepage - https://www.wireshark.org/

Offizielles Wireshark Wiki - https://wiki.wireshark.org/

Online Nutzer-Dokumentation - https://www.wireshark.org/docs/wsug_html_chunked/


SIP-Mitschnitte

SIP-Mitschnitte (engl. Traces) zeigen den SIP-Verkehr, der zwischen den Parteien eines VoIP-Gespräches stattfindet. Es werden SIP-Pakete zwischen den Teilnehmern hin und her gesendet, die den Verlauf der Verbindung steuern. Durch diese Traces kann man in Fehlerfällen den Verlauf eines Anrufs auslesen und auf Fehlerquellen überprüfen. Um die SIP-Traces zu erhalten, müssen folgende Schritte durchgeführt werden.

Zunächst ist eine Verbindung über SSH herzustellen und die Asterisk-Konsole zu öffnen.

Um die SIP-Pakete mitlesen zu können, muss das Log-Level von AskoziaPBX heraufgesetzt und das SIP Debugging gestartet werden. Dies geschieht mit den folgenden Befehlen

core set debug 3

core set verbose 3

sip set debug on

Sind die Log-Level angepasst, kann nun ein Anruf initiiert werden. Zu sehen ist der komplette Ablauf des Anrufs. Die SIP-Pakete sind dabei deutlich zu erkennen. Ein Beispiel eines solchen SIP-Paketes ist im folgenden Bild zu sehen.

Dabei handelt es sich um ein Invite-Paket. Invite-Pakete werden von der Partei gesendet, die einen Anruf initiieren möchte. Folgendes ist in diesem SIP-Paket zu erkennen.

1 - Der Absender des Paketes (hier die Nummer 4953122436750 der Domain [Benutzername]@sipconnect.sipgate.de)

2 - Der Empfänger des Paketes (0511656114@sipconnect.sipgate.de)

3 - Der Statuscode des aktuellen SIP-Paket (Invite)

4 - Eine Auflistung der verwendeten SIP-Header

5 - Die verwendeten Codecs, welche die Telefonanlage für diesen Teilnehmer zulässt

SIP-Tracing, Beispiel

Die folgenden Bilder zeigen eine Auflistung von Konfigurationen im Askozia Webinterface und ihre Auswirkungen im SIP-Paket.

Hier wurde die caller ID des Anrufers angepasst. Als Ergebnis ist zu sehen, dass in dem Invite-Paket die geänderte caller ID angewendet wird.

AskoziaPBX, Einstellungen für Anrufer-Kennung
SIP-Tracing, Beispiel mit angepasster Anrufer-Kennung

Im Webinterface von AskoziaPBX unter "Konten" -> "Provider" -> "Erweiterte Einstellungen" (des gewählten Providers) werden einzelne SIP-Header aktiviert oder deaktiviert. In den SIP-Paketen werden lediglich die aktiven Header eingefügt.

AskoziaPBX, Einstellungen für SIP-Header
SIP-Tracing, Beispiel welches nur aktive SIP-Header anzeigt

In den Erweiterten Einstellungen des Providers wird der sendende "From User" manipuliert. Dies ist notwendig für die Authentifizierung bei einigen Providern.

AskoziaPBX, "from user" Einstellung
SIP-Tracing, "from user" Beispiel

Im folgenden Bild wird die "From Domain" manipuliert. Auch diese Einstellung wird von einigen Providern benötigt um die Verbindung sicher zu stellen.

AskoziaPBX, "from domain" Einstellung
SIP-Tracing, "from domain" Beispiel

Die Checkbox "Disable From User" ersetzt den Benutzernamen gegen die Anrufer-Kennung. Dies wird ebenfalls von einigen Providern benötigt.

AskoziaPBX, "from user" durch Anrufer-Kennung ersetzen
SIP-Tracing, Beispiel mit Anrufer-Kennung anstelle des "from user" Benutzernamens
Personal tools
Namespaces

Variants
Actions
Navigation
Getting Started
AskoziaPBX
Call Flow Editor
UC Client
PRI
CTI
Tools