Beta Test!
Asterisk-Schulungen und Consulting vom Autor dieses Buches finden Sie auf http://www.amooma.de. |
Konfiguriert man ein einzelnes Gerät, so kann dies durchaus manuell erfolgen. In diesem Fall sollte man dem Gerät dennoch per DHCP eine IP-Adresse zuweisen lassen und den Rest der Konfiguration dann bequem über einen Webbrowser durchführen, denn die snom-Telefone verfügen alle über einen eingebauten Webserver, so dass alle Settings komfortabel von außen editiert werden können, ohne dass man sich über die zehn Ziffern- und Menütasten quälen muss.
Achten Sie darauf, dass sich das Telefon im Admin-Modus befindet, nur so können Sie wirklich alle Einstellungen des Telefons verändern. Normalerweise befindet sich das Telefon in diesem Modus, falls nicht, kann dieser über die "Settings"-Taste aktiviert werden. Das Default-Admin-Passwort ist "0000".
Alle Details zur Einstellung am Gerät selbst finden sich auf der snom-Homepage http://www.snom.com. Dort sind für alle Endgeräte Anleitungen im PDF-Format frei erhältlich. Die Konfiguration zur Anbindung eines Telefons an eine Anlage mit obiger Beispiel-Konfiguration ist sehr einfach:
Bereits nach diesen Einstellungen sollte sich das Telefon erfolgreich mit der Anlage verbinden können.
Für ein Massen-Rollout ist ein solches Verfahren natürlich denkbar ungeeignet. Daher sind nachfolgend die Schritte beschrieben, die ein Rollout auch in großen Stückzahlen ermöglichen.
Zunächst sollten Sie Ihren DHCP-Server mit ein paar zusätzlichen Einstellungen konfigurieren. Es wird davon ausgegangen, dass der Telefonserver und die Telefone in einem eigens dafür eingerichteten Netzwerk agieren. Sollte eine Integration in ein bestehendes Netzwerk durchgeführt werden, ist im Einzelfall zu überprüfen, ob sich die notwendigen Einstellungen mit bereits im Netz befindlichen Geräten vertragen.
Damit die Telefone in der Lage sind, sich selbständig zu konfigurieren, muss ein spezieller DHCP-Parameter beim DHCP-Request mit übergeben werden. Dies kann bei den meisten Linux-Systemen über die Datei /etc/dhcp.conf
festgelegt werden:
option tftp-server-name "http://pbx.apfelmus-gmbh.de/snom/settings/snom.php?mac={mac}";
Nachdem die Geräte ihre IP-Adresse erhalten haben, setzen sie automatisch eine Abfrage an die oben angegebene URL ab, um ihre Konfiguration zu erhalten. Dabei wird der Parameter {mac}
automatisch mit der MAC-Adresse des Telefons belegt. Man sollte sich nicht verwirren lassen, dass ein HTTP- statt eines TFTP-Servers über diesen Parameter konfiguriert wird. Die Telefone erkennen automatisch, dass sie einen HTTP-Request durchführen müssen. Es muss kein zusätzlicher TFTP-Server konfiguriert werden. Nachfolgend ein Beispiel für ein PHP-Skript, das als Rückgabe die Settings für ein bestimmtes Telefon liefert:
<html> <pre> <?php // Die MAC-Adresse aus der URL (GET) lesen und in $mac abspeichern. $mac = $_GET['mac']; // Allgemeine Konfiguration readfile("snom-base.htm"); // Spezielle Konfiguration fuer diese MAC-Adresse readfile("snom-".$mac.".htm"); ?> </pre> </html>
Über das Skript wird der Inhalt mehrerer Dateien übermittelt. Neben dem Header, dem Footer und den Einstellungen, die bei allen Endgeräten konstant sein sollen, wird des Weiteren eine Datei speziell für das Telefon mit der übergebenen MAC-Nummer übermittelt.
In der Datei snom-base.htm
befinden sich die Settings, die für alle Telefone identisch sein sollen. In der Regel kann man hier Sprach- und Datumseinstellungen, feste Tastaturbelegungen etc. konfigurieren.
# After each setting (before the colon) you can set a flag, which means respectively: # ! means writeable by the user, but will not overwrite existing # $ means writeable by the user, but will overwrite existing (available since version 4.2) # & (or no flag) means read only, but will overwrite existing # more settings can be found at the settings (dump) page of the phone's build in webinterface # Language and Time settings language$: Deutsch web_language$: Deutsch timezone$: GER+1 date_us_format&: off time_24_format&: on tone_scheme&: GER # define the firmware update policy here # valid values are <auto_update>, <ask_for_update>, <never_update_firm>, # <never_update_boot>, <settings_only> update_policy: auto_update #define the firmware update interval here, amount in minutes, default is 1440 = 1 day firmware_interval: 2880 setting_server!: http://pbx.apfelmus-gmbh.de/snom/settings/snom.php?mac={mac} subscribe_config!: off update_server!: http://pbx.apfelmus-gmbh.de/snom/settings/snom.php?mac={mac} contrast!: 14 dtmf_speaker_phone!: on web_language!: Deutsch dkey_snom&: url http://pbx.apfelmus-gmbh.de/snom/webapps/mainmenu.xml admin_mode: off admin_mode_password$:4321 admin_mode_password_confirm$:4321 alert_internal_ring_text: alert-internal alert_external_ring_text: alert-external alert_group_ring_text: alert-group
Alle oben aufgeführten Einstellungen sind im Grunde Standard-Einstellungen. Besonderes Augenmerk gilt den Parametern dkey_snom
, alert_internal_ring_text
, alert_external_ring_text
und alert_group_ring_text
. Deren Bedeutung wird später noch genauer erläutert.
Passend zur allgemeinen Konfiguration bekommt jedes Telefon auch eine spezifische Konfiguration. Jeder Teilnehmer sollte in der Lage sein, bei einem Bürowechsel oder einem Reset des Telefons genau die Konfiguration an seinem Telefon wiederzufinden, die ihm vom Administrator zugewiesen wurde. Telefonspezifische Einstellungen werden daher in einer Datei snom-{mac}.htm
abgespeichert, also bei einem Telefon mit MAC-Adresse 00:04:13:23:8B:60
in der Datei snom-000413238B60.htm
. Der Aufbau des Dateinamens ist prinzipiel beliebig, wichtig ist dabei ist die Einhaltung der virtuellen Kette zwischen den Einstellungen innerhalb der DHCP-Konfiguration, der dazugehörigen Skriptdatei und letztendlich der Settings-Datei des Telefons. Anbei die spezielle Konfiguration eines solchen Telefons:
# After each setting (before the colon) you can set a flag, which means respectively: # ! means writeable by the user, but will not overwrite existing # $ means writeable by the user, but will overwrite existing (available since version 4.2) # & (or no flag) means read only, but will overwrite existing # First account user_active1!: on user_realname1$: Hans Mustermann <2000> user_name1$: 2000 user_host1&: pbx.apfelmus-gmbh.de user_pass1$: 1234 # You may add up to 12 accounts # set second account to active outgoing identity active_line$: 1 # in order to perform automated updates, define the firmware setting file URL # where you specify the final firmware image URL firmware_status: http://pbx.apfelmus-gmbh.de/snom/firmware360.htm
Man erkennt in der Konfiguration exakt die Settings wieder, die auch oben in der manuellen Einstellung konfiguriert wurden. Wichtig sind die Flags, die man pro Parameter angeben kann:
! | Der Parameter kann vom Anwender über das Telefon geändert werden. Bestehende Einstellungen werden beim Laden des Settings-Files nicht geändert. |
$ | Der Parameter kann vom Anwender über das Telefon geändert werden. Bestehende Einstellungen werden beim Laden des Settings-Files überschrieben. |
& oder kein Flag | Der Parameter kann vom Anwender nicht über das Telefon geändert werden. Bestehende Einstellungen werden beim Laden des Settings-Files überschrieben. |
Man sollte sehr genau abwägen, welche Parameter man für die Anwender freigibt und welche man festzurrt. Allein die Reduktion auf den User-Mode statt den Admin-Mode des Telefons erleichtert Administratoren später den Alltag.
Es ist sehr leicht möglich, ein Template für die snom-Telefone zu erstellen, ohne zunächst mühsam die komplette Dokumentation zu lesen. Am einfachsten konfiguriert man zunächst ein Telefon manuell über einen Webbrowser. In der Navigationsleiste des Web-Interface des Telefons befindet sich ganz unten ein Punkt "Einstellungen" (der Admin-Modus muss aktiv sein!). Dort werden dann im Browser alle aktuellen Einstellungen mit den passenden Parametern ausgegeben. Man braucht also nur noch die gewünschten Parameter in eine entsprechende Datei zu kopieren. Bitte übernehmen Sie auf gar keinen Fall alle Parameter aus der Liste, sondern ausschließlich die, die für Ihre spezielle Konfiguration wichtig sind. Danach entscheiden Sie über die oben angegebenen Flags, welche der Parameter vom Anwender geändert werden dürfen und welche nicht.
Sollte die automatische Konfiguration aus irgendeinem Grund nicht funktionieren, so lohnt sich ein Blick in die Datei /var/log/messages
, um herauszufinden, welche DHCP-Anfragen gestellt wurden, sowie in das Access-Log des Webservers, um zu überprüfen, ob überhaupt die richtigen Dateien angefordert wurden. Bei einem Apache 2.0 auf einem Debian Linux wäre dies z.B. die Datei /var/log/apache2/access_log
. Mittels dieser beiden Logs lassen sich die Fehler bei der Konfiguration in der Regel sehr schnell finden und beheben. Zur Fehlersuche kann man zunächst auch mit statischen Konfigurationsdateien statt mit einem PHP-Skript arbeiten. So wird die Komplexität verringert und es können Fehler in der Skiptdatei ausgeschlossen werden.
Die snom-Telefone brauchen zum Laden und Aktivieren der Settings einige Sekunden. Auch wenn das Telefon sich zunächst in den Standard-Konfigurations-Modus versetzt, warten Sie erst einige Sekunden, bevor Sie einen vermeintlich fehlerhaften Versuch abbrechen.
© by Stefan Wintermeyer