Unify Firmware- und Config-Tool

jodost

Mitglied
Mitglied seit
29 Apr 2004
Beiträge
491
Punkte für Reaktionen
50
Punkte
28
Hallo in die Runde,

ich möchte an dieser Stelle zwei selbst-gebastelte Tools vorstellen, einerseits falls sie jemand brauchen kann, und andererseits mit der Bitte um Mithilfe.

Zum Hintergrund: Mein Arbeitgeber ist seit >15 Jahren Hoster von Telefonanlagen der Marke Swyx, die auf Unify-HFA-Telefone setzt und natürlich auch das Autoprovisioning macht. Und im Laufe der Zeit muss man immer wieder Handgriffe machen, die nerven und wo man sich als ITler denkt "das muss auch besser gehen". Bei mir waren das z.B.

- Bei den alten OpenStage 60 z.B. Austausch des Hintergrundbildes (kann die Swyx nur global für alle User; aber bei Bürogemeinschaften usw. haben wir teilweise verschiedene Bilder an der gleichen Anlage konfiguriert) oder je nach Hintergrund-Bild das Farbdesign auf orange-dunkel ändern (kann Swyx nicht per Autoprov)
- Firmware-Wechsel (HFA-zu-SIP, weil wir in einigen Betriebsarten auch SIP-Firmware unterstützen, oder SIP-zu-HFA, wenn der Kunde versehentlich falsche Firmware gekauft/geliefert bekommen hat)
- Firmware-Upgrade (mit SwyxWare 12 wurden uralte unify-Firmware-Versionen rausgeworfen ... theoretisch muss man nur vor dem Update der Telefonanlage gucken, ob die Telefone automatisch aktualisiert wurden. Praktisch passiert es alle halbe Jahre mal, dass man die Telefonanlage aktualisiert hat und der Kunde danach noch alte Geräte im Keller findet
- 08/15-SIP-Account auf einem OpenStage SIP-Gerät konfigurieren, wenn man mal ein Einzel-Telefon irgendwo zum Testen braucht.

Jedenfalls, ich habe daraus zwei Tools gebaut, die ich vor ein paar Wochen ohnehin erneuern musste (verändertes Browser-Verhalten):

- https://vollzeitnerd.de/tools/unify-firmware kann die Firmware aktualisieren/tauschen oder das Gerät auf Werkseinstellungen zurücksetzen ohne die Geräte mittels DERT-Tool alle einzeln anfassen zu müssen
- https://vollzeitnerd.de/tools/unify-quickconfig kann alle Arten von Konfigurationsparametern (die für mich wichtigsten kann man sich in Templates reinklicken) auf die Geräte ausrollen

Beide Tools funktionieren im Browser, nehmen mit dem Gerät (oder mit den Geräten, ich habe einen IP-Suchlauf eingebaut) per JavaScript Kontakt auf, verbinden es mit meinem selbst gebauten DLS-(AutoProvisioning)-Server und der rollt dann die o.g. Funktionen einfach aus, fertig. Beide Tools wollen als Sicherheitsabfrage den sechsstelligen FactoryReset-Code wissen, um eine Kindersicherung gegen "ich weiß nicht was es macht, aber ich klicke es mal an ... oh, jetzt sind hier im Büro alle Telefone kaputt" zu haben.

Wie gesagt, ich freue mich auch über MIthilfe: Das Firmware-Tool habe ich für alle Geräte gebaut, mit denen ich beruflich zu tun habe: OpenStage 15/40/60 und OpenScape CP200/400/600. Grundsätzlich wird das auch mit jedem anderen Gerät funktionieren, aber einerseits habe ich dafür evtl. nicht den passenden Firmware-Server verlinkt, und andererseits erfolgt die Erkennung, welche Firmware ich ausliefere, anhand der Geräte-Bezeichnung, mit der das Ding sich bei mir meldet. Mir fremde Geräte müsste ich also erstmal ausprobieren, gucken wie deren genaue Bezeichnung ist, passende Firmware verlinken und testen ... wer also ein geeignetes Modell hat, mit dem ich per Remote-Test mein Tool erweitert kann, melde sich gerne bei mir.

Tschö!

Joern
 
Ich habe das Tool zum Aktualisieren der Firmware mal spasseshalber an einem OS40 HFA getestet.
Das Tool hat einwandfrei funktioniert, nur wurde das OS40 zurückgerüstet auf eine V3_R0.42.1 aus 2018.
Wo kommt die alte Firmware her?
 
oh, danke für den Hinweis, da war ein falscher Pfad verlinkt (bzw. nicht aktualisiert ... das "Grundtool" im Hintergrund gibt's schon ein paar Tage länger). Bei der HFA-Firmware liefere ich als Quelle den offiziellen Server "unseres" Tk-Anlagen-Herstellers aus (um gar nicht erst Urheberrechts-Probleme zu bekommen, wenn das Ding bei mir läge), und hatte da wie gesagt eine ältere Tk-Anlagen-Version hinterlegt

Ich habe gerade ein OS40 zur Hand, kannst Du nochmal gucken welche Version er jetzt ausrollt?
 
wieder die V3_R0.42.1
 
Unify Quickconfig: Interessantes Tool. Wäre es möglich den Sourcecode bspw. über github zu veröffentlichen? Dann könnten alle Interessenten dort gemeinsam daran weiterarbeiten.
 
Unify Quickconfig: Interessantes Tool. Wäre es möglich den Sourcecode bspw. über github zu veröffentlichen? Dann könnten alle Interessenten dort gemeinsam daran weiterarbeiten.

so richtig viel zu veröffentlichen gibt es da gar nicht.

Die eigentlichen Konfigurationsschnippsel werden von mir ja gar nicht groß beachtet, sondern 1:1 (nur ein bisschen XML-formatiert) ans Telefon geschickt. Welche es gibt usw. kommt ja nicht aus meinem Tool, sondern von unify. Ein "Weiterarbeiten" besteht also eigentlich nur darin, mögliche sinnvolle Setting-Kombinationen zusammenzustellen und dann mache ich da eine Text-Vorlage draus.

Der Rest ist relativ primitiv, ein JavaScript ruft vereinfacht gesagt das Webinterface des Telefons auf und sagt ihm, es soll meinen DLS-Server kontaktieren. Und der DLS-Server ist eigentlich nur ein Webserver mit ein paar minimal anderen Settings, der erkennt das Gerät (je nach Anwendungszweck anhand MAC oder in diesem Fall Absender-IP), sucht die auszuliefernde Konfiguration raus und liefert die als XML aus - fertig. Der ist für eine Veröffentlichung eher ungeeignet, das QuickConfig-Tool ist ein Abfallprodukt meines Arbeitgebers - das Ding macht eigentlich "echtes" Autoprovisioning für Telefonanlagen-Produkte, auch für andere Hersteller und das zum Veröffentlichen rauszulösen ist nicht in 5 Minuten gemacht. Bei begrenzten Nutzen, denn das Ding macht wie gesagt nur Konfigurationsschnippsel-ungesehen-in-XML-ausgeben.
 
Hallo, sehr interessante Geschichte die ihr da habt. Ich versuche seit Wochen im lokalen LAN mehren CP400 Telefonen, die Gateway-IP zu ändern.
Also über Scripting via Curl. Mit den OpenStage40 ging dies mal, aber nun wird immer anscheinent eine SessionID oder Token erwartet (page_ident) .
Der DLS ContactMe-Aufruf funktioniert super!
curl "http://172.xx.zz.yy:8085/contact_dls.html/ContactDLS" --data-raw "ContactMe=true&dls_ip_addr=172.xx.zz.aa&dls_ip_port=18443"
Damit die DLS verändert.
Was und Wie bekommt das IP-Tel nun ihre INfos ?Reicht es dort einen Http-Server zu haben, der XML-Datei bereithält, oder wird was gepuscht.
Ich überlege mit ggf. einen Nodered zu installieren, indem ich dort im WEB einfach die nun zu ändernde IP des Gateway/oderso eintragen, und mit Curl
das Phone antriggere sich die neuen Daten zu holen.
 
Was und Wie bekommt das IP-Tel nun ihre INfos ?Reicht es dort einen Http-Server zu haben, der XML-Datei bereithält,
im Prinzip reicht das, ja. Wie die Kommunikation genau abläuft, ist im Provisioning Interface Developers Handbuch (A31003-S2000-R102-16-7620) ziemlich genau beschrieben
 
Good morning,
I bought a brand new CP200 to add to our existing Unify OSBv2 system. Does this install the correct HFA software?

Apparently it must be CP_LO_HFA_V1_R3_10_0.img

Thank you
 
to be honest: I don't know.

The HFA-firmware will be taken from the Swyx/enreach Firmware download server.

Their release notes:
https://service.swyx.net/hc/de/arti...Notes_SwyxWare_13_-_Product_Version_13.10.pdf
recommend "HFA V1 R6.3.0" and I think their download server will have the corresponding version.

The https://wiki.unify.com/wiki/OpenScape_Desk_Phone_CP_HFA_Release_Notes however does not know anything about "6.3.0"

If I have time, I'll make some tests this weekend and tell you, what firmware was deployed.


But: Why don't you just connect your phone to the PBX and let the PBX update/downgrade/... it to the preferred version? The main reason for my tool was to switch between SIP and HFA or vice versa (because SIP-devices cannot connect to out Swyx PBXes, and HFA-devices cannot connect to our SIP-servers), or to upgrade "very old Openstage-phones" (where firmware is so old, that it cannot connect to modern PBXes).
 
@jodost

Ich habe gerade angefangen, für ein Unternehmen zu arbeiten und habe keine Erfahrung mit diesen Handys oder dem Unify OS-System. Ich habe das Mobilteil mit unserem Netzwerk verbunden und das Telefon neu gestartet - sagte, es würde heruntergeladen, neu gestartet und sagt jetzt nur, dass die Telefonie ausgefallen ist - ich habe eine Nebenstelle auf dem System eingerichtet (214), aber ich weiß nicht, wie ich das machen soll Telefon wissen, dass es 214 sein sollte und es verbinden.

Meine Ereignisanzeige sagt nur:

Code:
14 Jul 2022 10:30:19:55  Administration:1:
                         SIP Client with call number 1-1364 unknown or not
                         configured
14 Jul 2022 10:30:55:10  Administration:1:
                         SIP Client with call number 1-1365 unknown or not
                         configured
14 Jul 2022 10:30:55:10  Administration:1:
                         SIP Client with call number 1-1365 unknown or not
                         configured

Es scheint also, dass dieses Mobilteil ein SIP-Client ist?

Ich kann nicht einmal herausfinden, wie die IP-Adresse des Telefons lautet, da keine der Tasten funktioniert, da dort "Telefon ist ausgefallen" steht.
 
I guess you translated it from English to German, or?

Because you wrote "Handys" and "Mobilteil". The CP200 is a deskphone and not a mobile device :)

The "Ereignisanzeige"-log seems to be the logfile of the PBX, right? I am not sure if these entries have something to do with your device.

What error-code (e.g. H02) will be displayed after "Telephony is down"? You can find a list here
https://wiki.unify.com/wiki/OpenStage_HFA_FAQ#List_of_error_codes and https://wiki.unify.com/wiki/OpenStage_SIP_FAQ#List_of_error_codes and maybe you can find out what firmware you have.
 
@jodost
haha, Entschuldigung - ja, ich übersetze von Google.
Es ist ein CP200 - nicht mobil
Es gibt keinen Code, dies ist ein Bild des Telefons - Sie können die "Menü" -Taste rot blinken sehen.
Keine Tasten funktionieren, also kann ich nicht einmal sehen, was die IP ist usw.?
IMG_7215[1].JPG
[Edit Novize: Riesenbild gemäß der Forumsregeln auf Vorschau verkleinert]
 
Zuletzt bearbeitet von einem Moderator:
try pressing 1 0 3 (or was it 1 8 3? not sure at the moment) at the same time, this should give you access to the admin menue (and 123456 might be the default password)
 
@jodost
ok, also ich habe den hörer abgesteckt und die anmeldung an der pbx fortgesetzt, also eigentlich hat das nichts mit diesem hörer zu tun! Es tut uns leid!

Die Telefone laufen also auf 172.30.1.*
Dieses Telefon ist auf DHCP von 192.168.0.207 mit der falschen Route usw. eingestellt.
Ich habe es gerade von DHCP geändert und es auf den richtigen Bereich 172.30.1.* eingestellt

Das Telefon wird angezeigt
V1 R6.3.0 HFA 220107 als Softwareversion

Ich versuche, es als ext 214 zu verbinden

Ich habe es jetzt auf die richtigen IP-Adressen eingestellt, mit 214 als Kennung. Ich habe mir mein CP400-Mobilteil angesehen und versucht, die Einstellungen zu duplizieren, um zu sehen, ob ich es so zum Laufen bringen kann, aber ich habe immer noch nichts.
 
sorry, I really have no knowledge about unify PBXes. I just do SwyxWare PBXes, which also uses the unify HFA devices, but is a totally different PBX system.

What you could try is:


there, you enter:

Passwort -> I'll send you via personal msg.

Konfiguration:
reg-addr = 172.30.1.WHATEVER-YOUR-PBX-HAS
dls-addr = 172.30.1.WHATEVER-YOUR-PBX-HAS
reg-id = 214
reg-number = 214
dls-port = 18443


Modus: [x] Ich kenne die interne IP-Adresse
IP-Adresse - your CP200 device. But please ensure that it is really your device (and not any other phone, as it could be offline after that!)

If you have good luck, the unify PBX (as I said, I have no experience) will react the same way like the Swyx-Server does. If so,
- phone will contact PBX-server and ask for configuration
- PBX-server will identify the phone (by MAC-address) and send configuration items
- phone will restart
- and will be running.

There is a chance that the same thing will happen to you. (But there is always a risk that you make more trouble than before!).
 
Hi,
das Tool finde ich toll. Es funktioniert und macht was es soll. In meinem Fall habe ich ein OpenStage 60 SIP mit der FW V3R5.21.0.
Es wäre vielleicht gut, wenn man die Software auf die aktuelle Version anheben will, wenn man im Vorfeld innerhalb Deines Tools zunächst die FW des Telefons abfrägt und die über den Server aktualisierbare Version. vergleicht So könnte man entscheiden, ob ein Update erfolgen soll (wenn die Version höher ist) oder man es abbrechen möchte.

Viele Grüße
Michael
 
danke für den Hinweis.

Im Prinzip eine coole Idee, aber nicht so ganz einfach umzusetzen. Einerseits müsste ich mir dafür eine Übersicht machen, welche Firmware-Stände ich überhaupt habe (konkret bei der HFA-Firmware verweise ich auf einen externen FTP-Server, d.h. da bekomme ich Änderungen ggf. gar nicht mit). Andererseits, wenn das mit dem Vergleichen und Entscheiden durch den Anwender passieren soll, brauche ich noch eine "Rück-Schnittstelle" zwischen meinem Tool (privat) und dem dahinterliegenden DLS-Server (Arbeitgeber).

Ich überlege mal...
 
Holen Sie sich 3CX - völlig kostenlos!
Verbinden Sie Ihr Team und Ihre Kunden Telefonie Livechat Videokonferenzen

Gehostet oder selbst-verwaltet. Für bis zu 10 Nutzer dauerhaft kostenlos. Keine Kreditkartendetails erforderlich. Ohne Risiko testen.

3CX
Für diese E-Mail-Adresse besteht bereits ein 3CX-Konto. Sie werden zum Kundenportal weitergeleitet, wo Sie sich anmelden oder Ihr Passwort zurücksetzen können, falls Sie dieses vergessen haben.