Snom-Provisionierung mit mehreren Identitäten

Allgemeiner Support zur 3CX IP-Telefonanlage sowie zu VoIP und SIP (Community-gestützt).User-to-User-Support - Forum zum Erfahrungsaustausch mit anderen 3CX-Anwendern. Über dieses Forum steht KEIN technischer Support durch 3CX zur Verfügung.

Moderators: kevin, 3CX staff

Snom-Provisionierung mit mehreren Identitäten

Postby ollibraun » Wed Aug 10, 2011 10:09 pm

Hallo,

aus meiner Sicht ist es ein deutlicher Nachteil von 3CX, dass mehrere Identitäten pro Telefon nicht unterstützt werden. So kann man meines Wissens nach nicht für bestimmte Gespräche im Bedarfsfall eine abweichende Absenderrufnummer aktivieren. Auch sonst sind mehrere Identitäten manchmal praktisch, und ich arbeite gerne damit. Ich beziehe mich bei allem auf snom-Telefone mit 8er-Firmware; wie es bei anderen Herstellern ist, bleibt unberücksichtigt.

Nun wusste ich nicht, wie sich zusätzliche Identitäten mit der automatischen Provisionierung vereinbaren lassen. Deshalb habe ich mal etwas gebastelt, und hoffe, dass es klappt. Bei mir sieht es so aus, vielleicht hat jemand Lust, das mal am eigenen System zu testen, und trifft auf Schwierigkeiten, die ich jetzt übersehe.

Alle snom-Telefone lassen sich so provisionieren, zukünftige 3CX-Updates der Provisionierungs-Templates sind recht pflegeleicht zu verarbeiten, es können zusätzliche Identitäten vergeben werden - allerdings halb zu Fuß, aber wenn ich ein solches Telefon "auf Werkseinstellungen setze", dann wird es gleich wieder richtig provisioniert einschließlich Identitäten und einem für dieses Gerät vielleicht festgelegten abweichenden Klingelton (Schade, dass es für Klingeltöne keine Einstellungsmöglichkeit im 3CX-Interface gibt!).

Erster Schritt

Ich baue in das 3CX-snom-Template ein paar Zeilen ein. Das mache ich ziemlich weit unten im Text, damit ich vorherige 3CX-Settings überschreibe und nicht anders herum. Deshalb setze ich den Text direkt vor die BLF-Definition von 3CX:
Code: Select all
...
<date_us_format perm="R">off</date_us_format>
<user_expiry idx="1" perm="R">180</user_expiry>
<user_ringer idx="1" perm="RW">Ringer7</user_ringer>
</phone-settings>
<!--####################################################-->
<!--###            Mein Einschub - ANFANG            ###-->
<!--####################################################-->
     <setting-files>
     <file url="http://%%pbx_ip%%:%%pbx_http_port%%/provisioning/mein_standard.xml"/>
     </setting-files>
<!--####################################################-->
<!--###            Mein Einschub - ENDE              ###-->
<!--####################################################-->
  <!--########################################################-->
  <!--###                  BLF Settings                    ###-->
  <!--########################################################-->
  <!--# The different BLF keys are referred to using the "idx" paramer, which can have a value between 0 and 11. The first 2 BLF keys are programmed only for line operation to allow the phone to retain Hold, Resume, and Call Transfer functionality.-->
  <!--# The "fkey" field for all keys from idx="2" to idx="11" must contain a string value to specify which extension number to monitor. The provisioning template sets the value to "blf&lt;sip:blf1@%%pbx_ip%%;user=phone&gt;|*20*" for the first usable key (idx="2"), "blf&lt;sip:blf2@%%pbx_ip%%;user=phone&gt;|*20*" for the second usable key (idx="3"), and so on - where the variables "blf1" to "blf10" will be replaced by the extension number chosen from the 3CX Management Console for that extension-->
...


Dann erzeuge ich eine Datei mein_standard.xml und speichere sie in diesem Verzeichnis:
C:\ProgramData\3CX\Data\Http\Interface\provisioning

In diese Datei schreibe ich alles rein, was ich selber und ggf. abweichend von 3CX festlegen möchte. Zum Beispiel stehen die Telefone hier in ziemlich hallenden Räumen, also mache ich die Audioeinstellungen entsprechend. Jedenfalls habe ich alles schön zusammen, was meine Sonderwünsche angeht, und wenn es ein 3CX-Update für das snom-Template gibt, ist der Aufwand gering.

mein_standard.xml (die Einstellungen sind etwas willkürlich und doppelt, dient hier nur als Demo):
Code: Select all
<?xml version="1.0" encoding="utf-8"?>
<settings>
<phone-settings e="2">
<tone_scheme perm="R">GER</tone_scheme>
<admin_mode perm="R">on</admin_mode>
<eth_net perm="R">auto</eth_net>
<eth_pc perm="R">off</eth_pc>
<transfer_on_hangup_with_starcode perm="R">on</transfer_on_hangup_with_starcode>
<transfer_on_hangup perm="R">on</transfer_on_hangup>
<pickup_indication perm="R">off</pickup_indication>
<alert_info_playback perm="R">off</alert_info_playback>
<holding_reminder perm="R">on</holding_reminder>
<audio_device_indicator perm="R">on</audio_device_indicator>
<cw_dialtone perm="RW">on</cw_dialtone>
<silence_compression perm="R">off</silence_compression>
<handsfree_mode perm="RW">echoic</handsfree_mode>
<settings_refresh_timer perm="R">3600</settings_refresh_timer>
<advertisement perm="R">off</advertisement>
<advertisement_url perm="R">http://www.snom.com/en/AddOn</advertisement_url>
<release_sound perm="R">off</release_sound>
<mwi_dialtone perm="R">normal</mwi_dialtone>
<call_waiting perm="RW">off</call_waiting>
<subscribe_config perm="R">on</subscribe_config>
<pnp_config perm="R">off</pnp_config>
<display_method perm="RW">display_name</display_method>
<date_us_format perm="R">off</date_us_format>
<user_expiry idx="1" perm="R">180</user_expiry>
<user_ringer idx="1" perm="RW">Ringer7</user_ringer>
</phone-settings>
</setting>


Zweiter Schritt

Diesen Gedanken habe ich noch erweitert. Ich habe den Text verlängert, den ich in das 3CX-snom-Template einbaue:
Code: Select all
...
<!--####################################################-->
<!--###            Mein Einschub - ANFANG            ###-->
<!--####################################################-->
     <setting-files>
     <file url="http://%%pbx_ip%%:%%pbx_http_port%%/provisioning/mein_standard.xml"/>
     <file url="http://%%pbx_ip%%:%%pbx_http_port%%/provisioning/phone%%extension_number%%-settings.xml"/>
     <file url="http://%%pbx_ip%%:%%pbx_http_port%%/provisioning/phone%%extension_number%%-identity2.xml"/>
     <file url="http://%%pbx_ip%%:%%pbx_http_port%%/provisioning/phone%%extension_number%%-identity3.xml"/>
     <file url="http://%%pbx_ip%%:%%pbx_http_port%%/provisioning/phone%%extension_number%%-identity4.xml"/>
     <file url="http://%%pbx_ip%%:%%pbx_http_port%%/provisioning/phone%%extension_number%%-identity5.xml"/>
     </setting-files>
<!--####################################################-->
<!--###            Mein Einschub - ENDE              ###-->
<!--####################################################-->
...


Nun wünscht der User der Nebenstelle 12 einen abweichenden Klingelton. Den hat er sich früher immer selber eingestellt, aber wenn ich zum Beispiel ein Firmware-Update seines Telefons gemacht habe, dann habe ich gerne auch die Werkseinstellungen aufgerufen, und er hat sich beschwert.

Also habe ich in das Verzeichnis "C:\ProgramData\3CX\Data\Http\Interface\provisioning" die Datei phone12-settings.xml gespeichert und die Einstellung für diese Nebenstelle ein für alle mal festgelegt:
Code: Select all
<?xml version="1.0" encoding="utf-8"?>
<settings>
<phone-settings e="2">
<user_ringer idx="1" perm="R">Ringer5</user_ringer>
</phone-settings>
</setting>


Und dann gibt es bei uns noch eine separate Firma "Nebenverdienst" ohne festes Personal und ohne eigenes Telefon, aber mit einer abweichenden Nummer, welche nach außen publiziert wird.

Die Mitarbeiter mit den Nebenstellen 13, 14 und 15 betreuen diese separate Firma. Die Firma "Nebenverdienst" hat die virtuelle Nebenstelle 25. Diese wird den drei Benutzern als zusätzliche zweite Identität auf die Telefone gelegt. Wenn die Benutzer für "Nebenverdienst" ausgehend telefonieren, wechseln sie auf Identität 2. Natürlich klingeln die Telefone bei eingehenden Rufen auch anders.

Dazu speichere ich einfach unter oben genanntem Pfad noch drei XML-Dateien mit identischem Inhalt:
phone13-identity2.xml, phone14-identity2.xml, phone15-identity2.xml
Code: Select all
<?xml version="1.0" encoding="utf-8"?>
<settings>
-<phone-settings e="2">
<!--########################################-->
<!--### SIP Settings NEBENVERDIENST      ###-->
<!--########################################-->
<user_name perm="" idx="2">25</user_name>
<user_pname perm="" idx="2">25</user_pname>
<user_pass perm="" idx="2">password</user_pass>
<user_realname perm="" idx="2">Nebenverdienst</user_realname>
<user_host perm="" idx="2">10.10.10.10:5060</user_host>
<user_expiry perm="" idx="2">900</user_expiry>
<user_subscription_expiry perm="" idx="2">900</user_subscription_expiry>
<user_remove_all_bindings perm="" idx="2">on</user_remove_all_bindings>
<user_ringer idx="1" perm="RW">Ringer3</user_ringer>
</phone-settings>
</setting>


Achtung: Hier muss "10.10.10.10:5060" stehen und man kann nicht mit "%%pbx_ip%%:%%param::sipport%%" arbeiten, weil diese Datei nicht von 3CX ausgewertet wird, sondern vom snom.

Die Dateiverweise im Ausgangstemplate, die ins Leere führen, haben bei mir noch keine Fehler oder Probleme verursacht. Vielleicht übersehe ich etwas?

Mir wird gerade erst klar, was man mit Provisionierung so alles machen kann. Über weitere Anregungen und Hinweise auf Fehler, die ich (noch) mache, wäre ich dankbar!
Oliver
ollibraun
Expert
Expert
 
Posts: 117
Joined: Sun Jan 10, 2010 1:33 am

Re: Snom-Provisionierung mit mehreren Identitäten

Postby groundhog » Thu Aug 11, 2011 8:32 am

Super Informationen auf die ich gerne zurückgreifen werde.

Vielen Dank!
Veiser Gebäudetechnik GmbH
Ihr ITK Infrastruktur-Dienstleister im Rheinland
http://www.Veiser.de
groundhog
3CX Valued Professional
3CX Valued Professional
 
Posts: 602
Joined: Sat Jul 04, 2009 10:49 am
Location: Neuss-Norf, Germany

Re: Snom-Provisionierung mit mehreren Identitäten

Postby ollibraun » Sat Aug 13, 2011 4:02 pm

Ich ergänze noch zwei Hinweise:

1. Statt des Verzeichnisses "C:\ProgramData\3CX\Data\Http\Interface\provisioning" habe ich die XML-Dateien in einen Unterordner dieses Ordners gelegt und die Pfade entsprechend verlängert. Ist übersichtlicher.

2. Um das Backup solcher Sondereinstellungen (also der XML-Dateien) muss man sich vermutlich selber kümmern. Ich habe es nicht getestet, aber ich vermute, dass 3CX diese Einstellungen nicht mitsichert.
ollibraun
Expert
Expert
 
Posts: 117
Joined: Sun Jan 10, 2010 1:33 am

Re: Snom-Provisionierung mit mehreren Identitäten

Postby StefanW » Tue Aug 16, 2011 8:36 am

wenn Firmware im Backup angegeben wird dann schon! Kann kommt der ganze Braten aus dem Ordner mit
==================================
Stefan Walther
Technical Support Engineer
3CX - Developers of IP PBX Software
StefanW
3CX Support
3CX Support
 
Posts: 2008
Joined: Tue Jun 02, 2009 7:29 am
Location: Cyprus // Zypern (Nicosia)


Return to Deutsch


Who is online

Users browsing this forum: No registered users and 0 guests

Announcements: