[Problem] Remote Ringtone Playing via HTTP

rostreich

Neuer User
Mitglied seit
12 Jan 2013
Beiträge
49
Punkte für Reaktionen
0
Punkte
6
Für die Snoms gibts ja den Befehl:

Code:
http://phoneIP/line_login.htm?PLAY_RINGER:X=+Ringer(X=1..9)

Man kann ihn als POST oder GET ausführen, beides funktioniert. ALLERDINGS nur, wenn ich den Login und das PW für die Oberfläche eingebe.

Versteckte Merkmale und Verbiete URI-Queries ist aus. Firmware: 8.7.3.25

Was ich machen will:

Bei mir im Laden soll eine Kamera auf die Eingangstür gerichtet werden. Wenn sich in diesem Bereich etwas bewegt ( Tür geht auf, Kunde kommt rein ), kann die Kamera einen HTTP-Befehl absetzen (oben genannten) und mein Telefon soll dann einen Ringer abspielen, damit ich es mitbekomme.

Das Problem ist nun, dass der Ringer-Befehl nicht ohne Passwort funktioniert. Testweise habe ich folgendes in die Kamera eingegeben, was aber auch nicht funktionierte:

Code:
http://login:passwort@phoneIP/line_login.htm?PLAY_RINGER:9

Die Bewegung wird auf jeden Fall erfasst und die Kamera schickt den Befehl los, aber im Log vom Snom steht, dass die Anfrage nicht autorisiert ist. Im Netz habe ich Fälle gefunden, wo das inkl. Passwortmitgabe funktioniert, aber da stand nicht dabei, welche Firmware verwendet wurde.

Downgraden ist keine Option und den Login im Klartext übergeben eigentlich auch nicht.

Probiert habe ich das mit einem 320er und einem 360er.

Wo kann man da noch an setzen?

tldr:

Wie Zugriff auf phoneIP/line_login.htm?PLAY_RINGER:9 ohne Passwort?
 
Der Aufruf mit http://login:passwort@phoneIP.... ist korrekt und den solltest Du auch in einem Browser der die Übergabe von Benutzer/Kennwort in der URL unterstütz (IE gehört nicht dazu) testen können. Somit fürchte ich eher, dass Deine Kamera mit dieser Art der URL Notierung nicht umgehen kann, was durchaus öfter vorkommt.

Eine einfache Lösung (mit Ausnahme des Verzichts auf Authentifizierung) fällt mir hier nicht ein. Wenn Du bei Dir im Netz einen Rechner rumstehen hast, auf dem Du eine Webserver Umgebung installieren kannst, könntest Du das mit einem "Zwischenskript", zb. in PHP, lösen. Ein kleines Skript, dass die SNOM Url mittels CURL oder wget inklusive Authentifizierung aufruft, welches dann seinerseits von Deiner Kamera aufgerufen wird.
 
Wie müsste denn das PHP-Script aussehen? Das ist so rein gar nicht mein Fachgebiet...machbar wäre es freilich. Hab hier nochn paar BSD-Kisten rumstehen.
 
ungetestet zur inspiration, benötigt webserver mit PHP (inkl. CURL unterstützung)

Code:
$username='username';
$password='kennwort';
$URL='http://login:passwort@phoneIP/line_login.htm?PLAY_RINGER:9';

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL,$URL);
curl_setopt($ch, CURLOPT_TIMEOUT, 30); 
curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);
curl_setopt($ch, CURLOPT_HTTPAUTH, CURLAUTH_ANY);
curl_setopt($ch, CURLOPT_USERPWD, "$username:$password");
$status_code = curl_getinfo($ch, CURLINFO_HTTP_CODE);   
$result=curl_exec ($ch);
curl_close ($ch);
 
Vielen Dank! Werde damit rumpopeln, wenn die Kameras montiert sind und ansonsten auch alles mit denen fertig konfiguriert ist! :)
 
Abend

SNOM 320

Bei mir geht ohne Passwort, aber mit gesetzten Benutzer/Admin Passwort folgendes...
Code:
curl -k 'https://snom1/line_login.htm?PLAY_RINGER=2' > /dev/null

Schau mal im SNOM Webinterface: "https://snom320/advanced_qos_security.htm".

Sicherheit:
Sicherheitshinweise ignorieren: (o) An
Versteckte Merkmale: (o) Aus
Verbiete URI-Queries: (o) Aus
Kontrolle via CSTA erlauben: (o) Aus
Leeres Client Zertifikat: (o) Aus
Pakete vom Registrar filtern: (o) Aus
Authentifizierung für SIP Reboot: (o) Aus
Authentifizierung für SIP Check-Sync: (o) Aus
Administratormodus: (o) An

HTTP Server:
Authentifizierungsschema: (o) Basic
 
Zuletzt bearbeitet:
@koya:

Bei mir geht ohne Passwort, aber mit gesetzten Benutzer/Admin Passwort folgendes...

Das verstehe ich jetzt nicht. :) Hast du nun kein PW gesetzt, damit das geht?

Die Einstellungen zur Sicherheit waren alle so gemacht, das hab ich vom snom-wiki übernommen.
 
Moins

koy schrieb:
mit gesetzten Benutzer/Admin Passwort
Bedeutet genau das, was es heissen soll: Sie sind im SNOM Webinterface von mir gesetzt worden

Hier nochmal eine geschwätzigere Ausgabe von curl...
Code:
raspberrypi:~# curl -v -k 'http://snom1/line_login.htm?play_ringer=7' > /dev/null
* About to connect() to snom1 port 80 (#0)
*   Trying 192.168.178.21...
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0* connected
* Connected to snom1 (192.168.178.21) port 80 (#0)
> GET /line_login.htm?play_ringer=7 HTTP/1.1
> User-Agent: curl/7.26.0
> Host: snom1
> Accept: */*
>
* additional stuff not fine transfer.c:1037: 0 0
* HTTP 1.1 or later with persistent connection, pipelining supported
< HTTP/1.1 200 Ok
< Server: snom embedded
< Cache-Control: no-cache
< Cache-Control: no-store
< Content-Type: text/html
< Content-Length: 15248
<
{ [data not shown]
100 15248  100 15248    0     0  58244      0 --:--:-- --:--:-- --:--:-- 63008
* Connection #0 to host snom1 left intact
* Closing connection #0
 
Der Vollständigkeit halber: Multicast könnte auch eine Option sein um beliebiges Audio abzuspielen.
 

Statistik des Forums

Themen
244,965
Beiträge
2,221,829
Mitglieder
371,738
Neuestes Mitglied
vulubalulu
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.