mrau91
Goto Top

Software um Telefonnummer auf einem Yealink Telefon mit dem PC wählen inkl. Wählhilfe

Edit:
Andere IP-Telefon Hersteller wie Snom und Grandstream haben auch Fernsteuerfunktionen implementiert (Modellabhängig).
Mit diesen Telefonen würde das Tool auch funktionieren, natürlich müsste vorher der Herstellerspezifische Befehlsaufruf im Quellcode angepasst werden.


Hallo zusammen,

seit ein paar Jahren bin ich fleißiger Leser dieses Forums und konnte auch schon ein paar Mal einen Nutzen daraus ziehen bzw. Hilfe/Unterstützung erfahren.
Kommentare habe ich bisher kaum verfasst, da es fast immer schon hilfreiche Kommentare gab und ich aus Zeitgründen leider nicht ständig aktiv sein kann.

Allerdings möchte ich auch etwas zum Forum beitragen und stelle euch hier meine im Titel genannte Lösung vor. Diese Lösung haben wir bei uns jetzt seit ca. 2 Jahren im Einsatz und läuft seither problemlos.

Wir setzen überwiegend auf Hardwaretelefone und diese stammen alle von der Firma Yealink.

Anforderung der Belegschaft war das wählen einer Telefonnummer mit dem PC, unter anderem:

  • Wählen aus Outlook
  • Wählen aus dem Webbrowser (Suchmaschine, online Telefonbuch...)
  • Wählen aus verschiedenen Anwendungen (ERP...)

Die Recherche nach einer vorhandenen Lösung hat mich nicht zufriedengestellt bzw. die Anforderungen nicht voll abgedeckt oder oversized.
Aus diesem Grund habe ich mir selbst eine kleine Software geschrieben, die alle Anforderungen abdeckt.
Erstellt mit AutoIt.

Mit drücken eines Hotkey’s (aufrufen des Programms mit Parameter) kann eine markierte Telefonnummer gewählt werden.
Ein Dialogfenster wird geöffnet mit Rückfrage und Anzeige der Nummer (bereinigt von Buchstaben und Sonderzeichen, „+“ wird in „00“ gewandelt)
„Ja“ ruft die Nummer an, „Nein“ setzt die Nummer in ein Textfeld zur Bearbeitung, „Abbrechen“ schließt das Dialogfenster.

Für das Verbinden mit Rücksprache sowie das Verbinden ohne Rücksprache gibt es ebenfalls entsprechende Hotkey’s.

Wir verwenden folgende Hotkeys, da diese mit einer Hand zu drücken sind, und eine logische Herleitung besitzen:
strg + alt + c		=> Nummer anrufen (c für call)
strg + alt + t		=> aktuelles Gespräch an Nummer weiterleiten mit Rücksprache (t für transfer)
strg + alt + b		=> aktuelles Gespräch an Nummer weiterleiten ohne Rücksprache (b für blind transfer)
Durch aufrufen des Tools über eine Verknüpfung oder einen entsprechenden Hotkey (aufrufen des Programms ohne Parameter) wird ein Dialogfenster mit leerem Textfeld zur Eingabe einer Nummer geöffnet. Unsere Mitarbeiter legen sich die Programmverknüpfung zusätzlich auf die Taskleiste.

Durch hinterlegen des Programms im Firefox (andere Browser nicht getestet) als Ziel für tel-Link Aufrufe, können diese anklickbaren Telefonnummern ebenfalls ans Telefon weitergeleitet werden, so wie beim Smartphone.

Für die Hotkeys verwende ich "PC-Welt HotKeys v1.7" welche portabel funktioniert und per Autostart gestartet wird

Die Ansteuerung des Telefons erfolgt über die in Yealink Telefonen eingebaute Fernsteuerfunktion per http get request über curl.exe vom Windows PC aus.

Um die Software zu verteilen habe ich ein kleines Setup script erstellt, dass die nötigen Komponenten kopiert, die IP-Adresse des Telefons abfragt und nach einem Neustart fragt. Das Programm funktioniert auch ohne Neustart, allerdings ist der "PC-Welt HotKeys v1.7" noch nicht gestartet. Dieser kann allerdings auch manuell gestartet werden.
Die oben genannten Hotkeys starten jeweils das Programm mit dem entsprechenden Parameter(c, t oder b):
z.B. C:\Call-Master\call-master.exe -c

Folgende Bestandteile werden von der Setup Datei kopiert:

call-master.exe = Programm zum Verarbeiten und senden der Telefonnummer an das Yealink Telefon
call-master.ico = Icon
call-master.lnk = Verknüpfung zum Programm (Wird dem Programmordner hinzugefügt)
pcwHotKeys.exe = Hotkeys Programm
pcwHotKeys.INI = ini-File des Hotkeys Programms
pcwHotkeys.hkd = Datei in der die Hotkeys gespeichert werden, enthält bereits die vordefinierten Hotkeys
Hotkeys_call-master.lnk = Verknüpfung zum Hotkeys Programm (Wird dem Autostart Ordner hinzugefügt)
telip.txt = In dieser Textdatei wird die IP-Adresse des Telefons abgelegt und beim Aufruf ausgelesen
curl.exe = Kommandozeilen-Programm zum Übertragen des http get requests


Folgend die Schrit für Schritt Anleitung:

Downloadlink
Der Quellcode folgt unten.
Wer bedenken mit dem Download hat, kann den Quellcode selbst compilieren (mit AutoIt).
Eine uninstall.exe ist ebenfalls im Download enthalten.

setup_call-master.exe ausführen.


Nötige Einstellungen im Yealink Telefon:
IP-Adresse des Telefons mit dem Browser öffnen.
Features - Remote Control
Action URI Allow IP List = "Zugelassene IP-Adressen"
Hier muss an jedem Telefon jeweils die IP-Adresse eingetragen werden, die einen Befehl absetzen darf.
Es kann auch das ganze Netzwerk zugelassen werden, dann ist die Einstellung bei jedem Telefon gleich: z.B. 192.168.1.*

Bei uns sind die Telefone in einem anderen VLAN wie die PC's. Hier regelt die Firewall (mit NAT) den Datenverkehr.
Somit ist bei uns nur die Firewall Schnittstellen IP-Adresse des Telefonnetzes bei allen Telefonen eingetragen.


Nötige Einstellungen am Yealink Telefon:
Beim ersten Anwenden der Fernsteuerung erscheint am Telefon die Rückfrage ob die Fernsteuerung zugelassen werden soll.
Diese Abfrage erscheint nur beim ersten Mal und muss bestätigt werden.


Zur Fernsteuerung der Telefone sind die Zugangsdaten notwendig. In dem Programm wird der Standard Benutzer (nicht der Admin) mit dem voreingestellten Standard Passwort verwendet. Wer diese geändert hat muss das entsprechend anpassen.


call-master.exe
#include <Constants.au3>

Send("^c") ;sende strg und c um zu kopieren  
$nummer = ClipGet() ;lese Zwischenablage aus
bearbeiten($nummer)

$f = FileOpen("C:\Call-Master\telip.txt") ;Telefon IP auslesen  
$ip = FileRead($f)
FileClose($f)

$i=0

If $CmdLine[0] = 0 Then
   $i=1
   $nummer = InputBox( "Nummer eingeben", "Nummer eingeben die angerufen werden soll")  
   If $nummer = Not "" Then  
	  $befehl = "number"  
	  callsend($ip, $nummer, $befehl)
   EndIf
   Exit(0)
EndIf



If $CmdLine[1] = "-c" Then  
   $i=1
   hotkey($ip, $nummer, "number", "Folgende Nummer anrufen?")  
EndIf

If $CmdLine[1] = "-t" Then  
   $i=1
   hotkey($ip, $nummer, "ATrans", "Verbinden mit Rücksprache?")  
EndIf

If $CmdLine[1] = "-b" Then  
   $i=1
   hotkey($ip, $nummer, "BTrans", "Verbinden ohne Rücksprache?")  
EndIf

If $i = 0 Then
   $nummer = $CmdLine[1]
   bearbeiten($nummer)
   hotkey($ip, $nummer, "number", "Folgende Nummer anrufen?")  
EndIf



Func hotkey($ip, $nummer, $befehl, $frage)
   $chk = MsgBox(3, $frage, $nummer) ;frage ob Nummer gesendet werden soll
   If $chk = 6 Then ;wenn Abfrage positiv
	  callsend($ip, $nummer, $befehl)
   EndIf
   If $chk = 7 Then ;pruefe ob Abfrage positiv
	  $nummer = InputBox( "Nummer eingeben", "Nummer eingeben die angerufen werden soll", $nummer)  
	  If $nummer = Not "" Then  
		 callsend($ip, $nummer, $befehl)
	  EndIf
   EndIf
EndFunc



Func callsend($ip, $nummer, $befehl)
   bearbeiten($nummer)
   $aufruf = "http://user:user@" & $ip & "/servlet?key=" & $befehl & "=" & $nummer ;setze Link  
   ShellExecute( "curl.exe", $aufruf ) ;sende Aufruf an Telefon  
EndFunc

Func bearbeiten(ByRef $nummer)
   $nummer = StringRegExpReplace($nummer, '[+]', '00') ;ersetze ein + durch 00  
   $nummer = StringRegExpReplace($nummer, '[^0-9]', '') ;entferne alles ausser zahlen  
EndFunc


setup_call-master.exe
#include <Constants.au3>
#RequireAdmin

;Ip abfragen
$ip = InputBox( "IP Adresse", "IP Adresse des Yealink Telefons eingeben")  
If $ip = Not "" Then  
   $hFileOpen = FileOpen("telip.txt", 2 )  
   FileWrite($hFileOpen, $ip)
   FileClose($hFileOpen)
Else
   MsgBox(0, "Abbruch", "Abbruch durch Benutzer oder fehlerhafte Eingabe")  
   Exit(0)
EndIf

$fehler = "Ein Fehler ist währernd der Installation aufgetreten. Wenden Sie sich bitte an den Support. Fehlercode:"  
;Daten Kopieren
If Not FileCopy ( "pcwHotKeys.exe", "C:\Call-Master\pcwHotKeys.exe" , 1 + 8 )Then  
   $fehler = $fehler&"hk "  
EndIf
If Not FileCopy ( "pcwHotkeys.hkd", "C:\Call-Master\pcwHotkeys.hkd" , 1 + 8 )Then  
   $fehler = $fehler&"hkd "  
EndIf
If Not FileCopy ( "pcwHotKeys.INI", "C:\Call-Master\pcwHotKeys.INI" , 1 + 8 )Then  
   $fehler = $fehler&"hkini "  
EndIf
If Not FileCopy ( "telip.txt", "C:\Call-Master\telip.txt" , 1 + 8 )Then  
   $fehler = $fehler&"iptxt "  
EndIf
If Not FileCopy ( "call-master.exe", "C:\Call-Master\call-master.exe" , 1 + 8 )Then  
   $fehler = $fehler&"cm "  
EndIf
If Not FileCopy ( "Hotkeys_call-master.lnk", "C:\ProgramData\Microsoft\Windows\Start Menu\Programs\StartUp\Hotkeys_call-master.lnk" , 1 )Then  
   $fehler = $fehler&"hklnk "  
EndIf
If Not FileCopy ( "curl.exe", "C:\Windows\System32\curl.exe" , 1 )Then  
   $fehler = $fehler&"curl "  
EndIf
If Not FileCopy ( "call-master.ico", "C:\Call-Master\call-master.ico" , 1 )Then  
   $fehler = $fehler&"ico "  
EndIf
If Not FileCopy ( "call-master.lnk", "C:\ProgramData\Microsoft\Windows\Start Menu\Programs\call-master.lnk" , 1 )Then  
   $fehler = $fehler&"cmlnk "  
EndIf

;ip Datei leeren
$hFileOpen = FileOpen("telip.txt", 2 )  
FileWrite($hFileOpen, "")  
FileClose($hFileOpen)

If $fehler = Not "Ein Fehler ist währernd der Installation aufgetreten. Wenden Sie sich bitte an den Support. Fehlercode:" Then  
   MsgBox(0, "Error", $fehler)  
   Exit(0)
EndIf



$chk = MsgBox(1, "Neustart", "Es wird ein Neustart benötigt um die volle Funktionalität von Call-Master zu gewährleisten")  
If $chk = 1 Then ;pruefe ob Abfrage positiv
Shutdown ( 2 )
EndIf


uninstall_call-master.exe
#include <Constants.au3>
#RequireAdmin

$chk = MsgBox(4, "Uninstall", "Soll Call-Master wirklich deinstalliert werden?")  
If $chk = 6 Then ;pruefe ob Abfrage positiv

ProcessClose ( "pcwHotKeys.exe" )  

$fehler = 0
If Not DirRemove ( "C:\Call-Master" , 1 ) Then  
   MsgBox(0, "Error", "Fehler beim Verzeichnis löschen. Wenden Sie sich bitte an den Support.")  
   $fehler = 1
EndIf
If Not FileDelete ( "C:\ProgramData\Microsoft\Windows\Start Menu\Programs\StartUp\Hotkeys_call-master.lnk" ) Then  
   MsgBox(0, "Error", "Fehler beim Verknüpfung löschen. Wenden Sie sich bitte an den Support.")  
   $fehler = 1
EndIf
If Not FileDelete ( "C:\ProgramData\Microsoft\Windows\Start Menu\Programs\call-master.lnk" ) Then  
   MsgBox(0, "Error", "Fehler beim Verknüpfung löschen. Wenden Sie sich bitte an den Support.")  
   $fehler = 1
EndIf

If $fehler = Not 0 Then
   Exit(0)
EndIf

MsgBox(0, "Deinstallation erfolgreich", "Die Deinstallation von Call-Master wurde erfolgreich beendet.")  


EndIf

Gruß Michael

Content-ID: 634205

Url: https://administrator.de/tutorial/software-um-telefonnummer-auf-einem-yealink-telefon-mit-dem-pc-waehlen-inkl-waehlhilfe-634205.html

Ausgedruckt am: 30.01.2025 um 08:01 Uhr

StefanKittel
StefanKittel 21.12.2020 um 23:53:13 Uhr
Goto Top
Find ich gut.

Wer weiß wann man sowas mal brauchen kann.
Denn Aufwendig ist das, wenn man erst mal weiß wie es geht, nicht.

Danke

Stefan
Bingo61
Bingo61 23.12.2020 um 12:37:42 Uhr
Goto Top
Wir haben Unify Anlage, da gibts das Programm myPortal .
themuck
themuck 11.01.2021 um 14:57:35 Uhr
Goto Top
gerade mal die call-master.zip runtergeladen Chrome & Edge sagt mir "Virus Gefunden"...
mrau91
mrau91 11.01.2021 aktualisiert um 16:23:49 Uhr
Goto Top
Zitat von @themuck:

gerade mal die call-master.zip runtergeladen Chrome & Edge sagt mir "Virus Gefunden"...

Meiner Erfahrung nach gibt es einige Antivieren Programme die generell Scripte die mit AutoIt compiliert sind als Schadsoftware erkennen.
Testweise habe ich ein Script erstelle, dass nur eine Message-Box anzeigt. Mit AutoIt compiliert und bei virustotal hochgeladen.
Ergebnis: 11 von 60 engines haben einen Virus erkannt.
Außerdem hat das Programm keine digitale Signatur, was ebenfalls ein Grund sein könnte.

Wenn du das Tool nutzen möchtest aber dem Download nicht vertraust, dann kannst du doch einfach den Quellcode selbst compilieren. Deshalb habe ich diesen ja veröffentlicht.

Gruß Michael
themuck
themuck 11.01.2021 um 16:01:28 Uhr
Goto Top
danke für die Info!

Grüße Malte
bert-20
bert-20 04.10.2021 um 19:45:03 Uhr
Goto Top
Hallo Michael,

vielen Dank für Deinen Beitrag, denn das ist genau das, was ich suche. Perfekt !

Leider bekomme ich das Programm aber nicht zum Laufen:

Die Installation via "setup_call-master" funktionierte. Wenn ich dann aber das Programm start
und im Abfragefenster eine Telefonnumer eingebe erscheint die Meldung "curl.exe -Systemfehler, Das Programm kann nicht gestartet werden, da api-ms-win-core-processenvironment-l1-2-0.dll auf dem Computer fehlt".

Ich habe Win7-Pro-64bit.

Meine Recherchen nach der fehlenden dll, führten leider zu keinem Ergebnis.

Michael, hast Du für mich bitte einen Tipp ?

Vielen Dank !

/ bert
mrau91
mrau91 05.10.2021 um 12:08:57 Uhr
Goto Top
Hallo bert,

generell solltest du dir Gedanken über einen Wechsel zu Win10 machen, da Win7 nicht mehr supported wird.

Ich habe dein Problem in einer VM nachgestellt und erhalte auf Win7 64bit den selben Fehler.
Im Download Archiv ist die "curl.exe" Version: 7.55.1 enthalten.
Ich habe mir eben eine aktuellere Version (7.77.0) heruntergeladen und getestet.
Mit dieser funktioniert es problemlos.
Lade sie dir hier oder irgendwo anders herunter und kopiere sie in den Ordner "C:\Call-Master".


Unabhängig von deinem Problem:
Mittlerweile hat mir der Defender bei Win10 die "call-master.exe" auch schon in Quarantäne gesteckt.
Damit diese nicht ständig weggesperrt werden sollte eine Ausnahme definiert werden.
Damit das Programm sauber funktioniert müssen folgende Dateien im Pfad "C:\Call-Master" liegen.

call-master.exe
call-master.ico
curl.exe
pcwHotKeys.exe
pcwHotkeys.hkd
pcwHotKeys.INI
telip.txt


Grüße Michael
DanielG1974
DanielG1974 09.11.2023 um 15:41:15 Uhr
Goto Top
Vielen vielen Dank für dieses Programm!
Genau nach so etwas habe ich gesucht.

MfG

Daniel
mrau91
mrau91 11.11.2023 um 13:52:31 Uhr
Goto Top
Freut mich. Habe zwischenzeitlich die ähnliche Funktionalität auch noch in eine Android App integriert. Nummer Wählen über Textfeld, Telefonbuch durchsuchen und auflegen.
photo_2023-11-11_11-23-21
ManuManu2021
ManuManu2021 08.09.2024 um 13:09:42 Uhr
Goto Top
Hallo,

wenn man in Outlook auf den Kontakte Ordner geht und dann doppelklick auf Eintrag Pizza Lieferdienst macht, was wäre dann der nächste Schritt?
mrau91
mrau91 10.09.2024 um 13:54:55 Uhr
Goto Top
wenn man in Outlook auf den Kontakte Ordner geht und dann doppelklick auf Eintrag Pizza Lieferdienst macht, was wäre dann der nächste Schritt?

Wenn du in den Kontakten bist, klick auf den entsprechenden Eintrag (einfacher Klick, kein Doppelklick!) und drück den Hotkey für wählen. Dann öffnet sich die Nummer im Dialogfeld und du kannst den Anruf initiierten.
Im Standard wäre das "strg + alt + c ".
Falls du das geändert hast, dann deinen gewählten Hotkey.

Gruß Michael
Fabian94
Fabian94 31.12.2024 um 17:34:14 Uhr
Goto Top
Hallo,
ich habe gerade ein neues T46U gekauft. Dieses antwortet jetzt nur mit https://192.168.1.129, kann es sein dass durch diesen umstand das Programm nicht funktioniert?

Gruß Fabian
mrau91
mrau91 01.01.2025 um 03:16:40 Uhr
Goto Top
Hallo Fabian,

Hast du die IP von deinem PC/Netzwerk von dem du den Befehl sendest im Telefon eingetragen?
Hast du nach dem Absenden des Befehls dann am Telefondisplay die Fernsteuerung erlaubt?
Ich nehme mal an dass die genannte IP von dem Telefon ist.
Welcher Statuscode wird dir bei folgendem Befehl in der Konsole/cmd zurückgegeben?
curl -i http://user:user@192.168.1.129/servlet?key=x

Gruß
Michael
Fabian94
Fabian94 01.01.2025 um 12:09:43 Uhr
Goto Top
Hallo Michael,

es kommt curl: (7) Failed to connect to 192.168.1.129 port 80 after 2260 ms: Could not connect to server

Ich hatte es schon bei einem Vorgängermodell da hat es wunderbar funktioniert.

Gruß Fabian
Balu123
Balu123 08.01.2025 um 11:05:40 Uhr
Goto Top
Hallo, habe genau das gleiche Problem mit einem T54W. Kann es auch an den Userdaten liegen? Habe das admin Passwort geändert, aber wo finde ich die Benutzer (User) Daten?

Viele Grüße Jörg
mrau91
mrau91 09.01.2025 um 16:40:27 Uhr
Goto Top
Sorry für die verspätete Antwort, ich war Krankheitsbedingt außer Gefecht.

Habe das admin Passwort geändert, aber wo finde ich die Benutzer (User) Daten?

Auf den Yealink Telefonen gibt es fest vorgegebene Benutzer ("admin" und "user") mit entsprechenden Rechten.
Passwort ist im Standard immer gleich dem Benutzernamen.
Das admin Passwort sollte immer geändert werden!
Die Einstellung findet sich unter: Security - Password


es kommt curl: (7) Failed to connect to 192.168.1.129 port 80 after 2260 ms: Could not connect to server

Deine Fehlermeldung besagt, dass kein Webserver antwortet.

Folgendes setze ich mal voraus, um weitere Fehlerquellen auszuschließen:
- Telefon ist am Port "Internet" mit dem Netzwerk verbunden.
- Der PC von dem der Befehl kommt ist nicht am Telefon am Port "PC" angesteckt.


Bitte teste folgendes:
1. Klappt ein Ping auf die IP des Telefons?

2. Klappt der Fernsteuerbefehl über https?
curl -i -k https://user:user@192.168.1.129/servlet?key=x

3. Webserver Einstellung kontrollieren:
IP-Adresse des Telefons mit dem Browser öffnen und einloggen
"Network - Advanced" (Netzwerk - Erweitert)
Ist beim Abschnitt "Web Server" der Punkt "http" auf "enabled"?

4. Ist der PC im selben Netzwerk wie das Telefon oder hängt eine Firewall dazwischen?


Gruß
Michael
Balu123
Balu123 09.01.2025 um 21:14:05 Uhr
Goto Top
Hallo,
besten Dank für die Rückmeldung. Da ich nun Zuhause bin und nicht am PC, welcher das Telefon steuern soll , kann ich mir nur die Einstellungen am Telefon per VPN ansehen.

Zitat von @mrau91:

Auf den Yealink Telefonen gibt es fest vorgegebene Benutzer ("admin" und "user") mit entsprechenden Rechten.
Passwort ist im Standard immer gleich dem Benutzernamen.
Das admin Passwort sollte immer geändert werden!
Die Einstellung findet sich unter: Security - Password

Wieder was gelernt

es kommt curl: (7) Failed to connect to 192.168.1.129 port 80 after 2260 ms: Could not connect to server

Deine Fehlermeldung besagt, dass kein Webserver antwortet.

Folgendes setze ich mal voraus, um weitere Fehlerquellen auszuschließen:
- Telefon ist am Port "Internet" mit dem Netzwerk verbunden.
Ja
- Der PC von dem der Befehl kommt ist nicht am Telefon am Port "PC" angesteckt.
Nein, ist er nicht

Bitte teste folgendes:
1. Klappt ein Ping auf die IP des Telefons?
Ja

2. Klappt der Fernsteuerbefehl über https?
curl -i -k https://user:user@192.168.1.129/servlet?key=x
Teste ich morgen

3. Webserver Einstellung kontrollieren:
IP-Adresse des Telefons mit dem Browser öffnen und einloggen
"Network - Advanced" (Netzwerk - Erweitert)
Ist beim Abschnitt "Web Server" der Punkt "http" auf "enabled"?
Da scheint der Fehler zu liegen, war nicht aktiv

4. Ist der PC im selben Netzwerk wie das Telefon oder hängt eine Firewall dazwischen?
Ja, ist im selben Netzwerk

Werde es morgen im Büro direkt testen

Viele Grüße Jörg
Balu123
Balu123 10.01.2025 um 08:01:17 Uhr
Goto Top
Leider geht es noch nicht, hier die Meldung mit http und https im CMD:

curl -i http://user:user@192.168.25.65/servlet?key=x

HTTP/1.1 401 Unauthorized
X-Frame-Options: SAMEORIGIN
X-Content-Type-Options: nosniff
X-XSS-Protection: 1; mode=block
Strict-Transport-Security: max-age=31536000; includeSubDomains
Cache-Control: private, max-age=0, no-cache, no-store, must-revalidate
Content-Security-Policy: default-src 'self'; script-src 'self' 'unsafe-eval'; style-src 'self'; font-src 'self' data:; img-src 'self' data:; frame-ancestors 'self'  
Permissions-Policy: camera=(), microphone=()
WWW-Authenticate: Basic realm="VOIP PHONE"  
Content-Type: application/json; charset=utf-8
Content-Length: 0
Date: Fri, 10 Jan 2025 06:57:57 GMT

curl -i https://user:user@192.168.25.65/servlet?key=x

curl: (60) schannel: SEC_E_UNTRUSTED_ROOT (0x80090325) - Die Zertifikatkette wurde von einer nicht vertrauenswürdigen Zertifizierungsstelle ausgestellt.
More details here: https://curl.se/docs/sslcerts.html

curl failed to verify the legitimacy of the server and therefore could not
establish a secure connection to it. To learn more about this situation and
how to fix it, please visit the webpage mentioned above.
mrau91
mrau91 10.01.2025 um 08:41:41 Uhr
Goto Top
Bei deinem https Aufruf fehlt der Parameter -k, darum hatte ich dir den Befehl erneut aufgeführt.
Hätte ich aber erwähnen sollen, dass du das beachten musst.
Das Zertifikat des Telefons stammt von einer untrusted CA.
Darum erhältst du den genannten Fehler.

Beachte bitte: wenn du dich 3 mal mit falschen Zugangsdaten authentifizierst, dann bist du für 3 Minuten gebannt und der Webserver gibt dir nur HTTP/1.1 403 Forbidden zurück.
Dann musst du warten oder das Telefon neu starten.

Die Webserver Antworten:
HTTP/1.1 401 Unauthorized = Falsche/keine Authentifizierung
HTTP/1.1 403 Forbidden = temporär gebannt oder IP-Adresse ist nicht aus freigegeben in der Webconfig eingetragen.
HTTP/1.1 200 OK = alles ok

Teste https mit dem Parameter -k
Wenn ebenfalls der Fehler "401 Unauthorized" kommt, dann bitte mal die Authentifizierung mit deinen Admin Zugangsdaten testen.
curl -i -k https://admin:passwort@192.168.1.129/servlet?key=x
Wenn dann "HTTP/1.1 200 OK " kommt, bitte das Passwort des Benutzers "user" auf "user" ändern und mit diesem erneut testen.
Balu123
Balu123 10.01.2025 um 10:30:30 Uhr
Goto Top
Ups, das mit -k hatte ich übersehen

Hier nun das Ergebnis:

Microsoft Windows [Version 10.0.19045.5247]
(c) Microsoft Corporation. Alle Rechte vorbehalten.

C:\>curl -i -k https://admin:xxx@192.168.25.65/servlet?key=x
HTTP/1.1 200 OK
X-Frame-Options: SAMEORIGIN
X-Content-Type-Options: nosniff
X-XSS-Protection: 1; mode=block
Strict-Transport-Security: max-age=31536000; includeSubDomains
Cache-Control: private, max-age=0, no-cache, no-store, must-revalidate
Content-Security-Policy: default-src 'self'; script-src 'self' 'unsafe-eval'; style-src 'self'; font-src 'self' data:; img-src 'self' data:; frame-ancestors 'self'  
Permissions-Policy: camera=(), microphone=()
Content-Type: application/json; charset=utf-8
Content-Length: 0
Date: Fri, 10 Jan 2025 09:10:44 GMT


C:\>curl -i -k https://user:user@192.168.25.65/servlet?key=x
HTTP/1.1 403 Forbidden
X-Frame-Options: SAMEORIGIN
X-Content-Type-Options: nosniff
X-XSS-Protection: 1; mode=block
Strict-Transport-Security: max-age=31536000; includeSubDomains
Cache-Control: private, max-age=0, no-cache, no-store, must-revalidate
Content-Security-Policy: default-src 'self'; script-src 'self' 'unsafe-eval'; style-src 'self'; font-src 'self' data:; img-src 'self' data:; frame-ancestors 'self'  
Permissions-Policy: camera=(), microphone=()
Content-Type: application/json; charset=utf-8
Content-Length: 74
Date: Fri, 10 Jan 2025 09:20:44 GMT

{"ret":"failed","data":false,"error":{"webStatus":"lock","lockTime":"12"}}  
C:\>
Balu123
Balu123 10.01.2025 aktualisiert um 14:34:57 Uhr
Goto Top
Nachtrag, habe jetzt das Script mit den Admin Zugangsdaten compiliert und es funktioniert!
So bin ich jetzt zufrieden, besten Dank für das Script und die Unterstützung!

Edit: Es funktioniert mit den Hotkeys, wenn ich aber die call-master.exe direkt starte erscheint eine Fehlermeldung
screenshot 2025-01-10 143251

VG Jörg
mrau91
mrau91 10.01.2025 um 16:38:35 Uhr
Goto Top
wenn ich aber die call-master.exe direkt starte erscheint eine Fehlermeldung
Ich schau mir den Fehler am Montag an.
Ich habe eine Vermutung, komme aber heute nicht mehr dazu.

Könntest du noch folgendes testen um das ursprüngliche Problem abschließend zu klären und ggf. anderen mit dem selben Problem zu helfen.
Kannst du dich in der webconfig mit Benutzer "user" und Passwort "user" einloggen?
Wenn nicht liegt es an den Zugangsdaten.

Logge dich in der webconfig als Admin ein und vergebe das Passwort für den Benutzer "user" erneut. Dieses sollte dann sein: "user"
Anschließend versuchst du nochmal den Befehl mit curl zu senden.

Falls die Fehlermeldung "HTTP/1.1 403 Forbidden" erscheint, wie in deinem post heute Vormittag. Dann bitte das Telefon neu starten und erneut versuchen.
Balu123
Balu123 10.01.2025 um 17:04:41 Uhr
Goto Top
Als Benutzer "user" mit Passwort "user" kann ich mich nicht in einloggen.
Als "admin" kann ich auch keinen Benutzer "user" auswählen
screenshot 2025-01-10 170345
mrau91
mrau91 14.01.2025 aktualisiert um 09:42:12 Uhr
Goto Top
Es funktioniert mit den Hotkeys, wenn ich aber die call-master.exe direkt starte erscheint eine Fehlermeldung

Es war ein Fehler im Quellcode hier im Beitrag, den ich bei mir nicht hatte.
Dieser muss sich irgendwie bei der Beitragserstellung eingeschlichen haben.
Ich habe diesen oben geändert.

In Zeile 13 hat der Index bei $CmdLine gefehlt.
falsch:  If $CmdLine = 0 Then
richtig: If $CmdLine[0] = 0 Then
mrau91
mrau91 14.01.2025 um 09:41:34 Uhr
Goto Top
Als Benutzer "user" mit Passwort "user" kann ich mich nicht in einloggen.
Als "admin" kann ich auch keinen Benutzer "user" auswählen

Dann gibt es auf der T5 Reihe wohl keinen Benutzer "user" sondern nur den admin.
In diesem Fall war dein Weg richtig, das script mit deinem Benutzer neu zu kompilieren.

Bei der T4 Reihe gibt es den Benutzer "user".
Da wir nur Telefone der T4 Reihe haben, war mir dieser Umstand nicht bekannt.
Balu123
Balu123 15.01.2025 um 12:20:58 Uhr
Goto Top
Zitat von @mrau91:

Es funktioniert mit den Hotkeys, wenn ich aber die call-master.exe direkt starte erscheint eine Fehlermeldung

Es war ein Fehler im Quellcode hier im Beitrag, den ich bei mir nicht hatte.
Dieser muss sich irgendwie bei der Beitragserstellung eingeschlichen haben.
Ich habe diesen oben geändert.

In Zeile 13 hat der Index bei $CmdLine gefehlt.
falsch:  If $CmdLine = 0 Then
richtig: If $CmdLine[0] = 0 Then

Super, jetzt geht es so wie es soll, BESTEN DANK NOCHMAL

VG Jörg