Hallo,
Ich möchte dass der Raspi, der im Netzwerk an der Fritzbox hängt, ein Telefonklingeln auslösen kann. Im Einsatz ist auch ein FritzPhone.
Ist sowas ohne großen Aufwand realisierbar ?
Hallo,
Ich möchte dass der Raspi, der im Netzwerk an der Fritzbox hängt, ein Telefonklingeln auslösen kann. Im Einsatz ist auch ein FritzPhone.
Ist sowas ohne großen Aufwand realisierbar ?
Raspi soll über Fritzbox Telefonklingeln auslösen? Schau mal ob du hier fündig wirst!
Hab am Raspi ein paar Temperaturfühler die meinen Hackgutbunker überwachen. Sobald eine Übertemperatur erreicht wird, bekomm ich eine E-Mail und eine Pushmeldung aufs Smartphone.
Zusätzlich soll das Fritzphone klingeln damit auch in der Nacht Meldungen wahrgenommen werden können.
Hab jetzt am Raspi Sip installiert und auf der Fritzbox einen Sip-User bzw. den Raspi als Telefon eingerichtet.
Folgender Aufruf bringt mir aber kein Telefonklingeln:
./sipcmd -P sip -u 621 -c Passwort -w fritz.box -x 'c**610;w10000;h'
Bekomme folgende Ausgabe:
Hat wer eine Idee warum die Sip Thematik auf Fehler läuft ?
Schon seit einigen FW-Versionen müssen die Benutzernamen und die Passwörter bei den SIP-Accounts der Fritzboxen bestimmte Mindeststandards einhalten.
So darf der Benutzernamen nicht mehr der Rufnummer entsprechen, ebenso wie es das Passwort nicht mehr dem Benutzernamen entsprechen darf.
Auch müssen beide jeweils mindestens 8 Zeichen lang sein.
Hallo, die von "Rasp-Berlin" erwähnten Settings (Telefoniegerät auf der Fritzbox) hab ich geprüft. Da sollte alles passen.
Ich hab das Ganze mit Sipcmd ausprobiert.
Gibt's da bessere, neuere etc. Varianten ?
Hallo, die von "Rasp-Berlin" erwähnten Settings (Telefoniegerät auf der Fritzbox) hab ich geprüft. Da sollte alles passen.
./sipcmd -P sip -u 621 -c Passwort -w fritz.box -x 'c**610;w10000;h'
Offensichtlich nicht, denn der Username (621) ist mit 3 Zeichen deutlich zu kurz, das müssen Minimum acht sein.
Hallo,
habs jetzt hinbekommen. Das Telefon klingelt mit Displayanzeige "Alarm". Ausgeführt über ein Pythonscript bei einer Temperaturüberschreitung eines Temperaturfühlers.
Wie gesagt, es funktioniert.
Allerdings bekomme ich noch folgende Meldung:
TestChannel::Write
Segmentation fault
Wie kann ich das beheben, oder kann ich das ignorieren ?
Vielen Dank
Die Fehlermeldung hab ich hier auch. Ich ignorier die.
habs jetzt hinbekommen. Das Telefon klingelt mit Displayanzeige "Alarm". Ausgeführt über ein Pythonscript bei einer Temperaturüberschreitung eines Temperaturfühlers.
Kannst Du mir sagen, wie Du das hinbekommen hast? Ich habe das gleiche Problem. Mein Kommando sieht so aus:
Kannst Du mir sagen, wie Du das hinbekommen hast? Ich habe das gleiche Problem.
Was genau hinbekommen? Welches Problem? Was geht denn nicht?
Was genau hinbekommen? Welches Problem? Was geht denn nicht?
Der Anruf geht nicht durch. Mit einem anderen SIP Client funktioniert es hingegen, den kann ich aber nicht nutzen, weil ich automatisch ein Audio File abspielen möchte.
Befehlzeile:
Ausgabe:
TestPhone::Main: calling "sip:**621@fritz.box" for 9
TestPhone::Main: calling "sip:**621@fritz.box" for 10
TestPhone::Main: calling "sip:**621@fritz.box" for 10
TestPhone::Main: calling "sip:**621@fritz.box" for 10
TestPhone::Main: calling "sip:**621@fritz.box" for 10
TestPhone::Main: calling "sip:**621@fritz.box" for 10
TestPhone::Main: calling "sip:**621@fritz.box" for 10
TestPhone::Main: calling "sip:**621@fritz.box" for 10
TestPhone::Main: calling "sip:**621@fritz.box" for 10
TestPhone::Main: calling "sip:**621@fritz.box" for 10
TestPhone::Main: calling "sip:**621@fritz.box" for 10
Problem running command sequence ("c**621;w1000;h"):
Call: Dial timed out
TestPhone::Main: shutting down
OnReleased: reason: EndedByLocalUser
OnReleased: reason: EndedByLocalUser
OnClearedCall
~LocalConnection
TestPhone::Main: exiting...
Exiting...
~Manager
Alles anzeigen
edit: Ich habe mal in eine Datei loggen lassen (mit dem -o Schalter). Das log ist voll von "400 Bad request" codes... auffällig ist das "invalid version" in Zeile 216.
log:
│ Content-Type: application/sdp
193 │ Max-Forwards: 70
194 │
195 │ v=0
196 │ o=- 1552452848 1 IN IP4 0.0.0.0
197 │ s=sipcmd/1.0.1
198 │ c=IN IP4 0.0.0.0
199 │ t=0 0
200 │ m=audio 5000 RTP/AVP 8 0
201 │ a=sendrecv
202 │ a=rtpmap:8 PCMA/8000/1
203 │ a=rtpmap:0 PCMU/8000/1
204 │ a=maxptime:240
205 │
206 │ 0:00.022 sipcmd OpalUDP Setting interface to 192.168.179.33%enp0s25
207 │ 0:00.022 sipcmd SIP Transaction timers set: retry=10.000, completion=32.000
208 │ 0:00.022 sipcmd OpalCon SetPhase from UninitialisedPhase to SetUpPhase for Call[C2813ebda1]-EP<sip>[503d53b4-b943-e911-97d9-d050991b03bb]
209 │ 0:00.022 sipcmd OpalCon OnSetUpConnectionCall[C2813ebda1]-EP<sip>[503d53b4-b943-e911-97d9-d050991b03bb]
210 │ 0:00.022 sipcmd OpalEP OnSetUpConnection Call[C2813ebda1]-EP<sip>[503d53b4-b943-e911-97d9-d050991b03bb]
211 │ 0:00.022 sipcmd OpalMan SetUpCall succeeded, call=Call[C2813ebda1]
212 │ 0:00.023 Opal Liste...9ff8ef0700 PTLib Created read/write mutex 0x7f9fdc004650
213 │ 0:00.023 Opal Liste...9ff8ef0700 OpalUDP Binding to interface: 0.0.0.0:5060
214 │ 0:00.023 Opal Liste...9ff8ef0700 PTLib Created read/write mutex 0x7f9fdc007880
215 │ 0:00.023 Opal Liste...9ff8ef0700 SIP Waiting for PDU on udp$192.168.179.1:5060<if=udp$*:5060>
216 │ 0:00.023 Opal Liste...9ff8ef0700 SIP Invalid version (0) received on udp$192.168.179.1:5060<if=udp$*:5060>
217 │ 0:00.023 Opal Liste...9ff8ef0700 PTLib Created read/write mutex 0x7f9ff8eef460
218 │ 0:00.024 Opal Liste...9ff8ef0700 SIP Set new remote address udp$192.168.179.33:5060 for transport udp$192.168.179.33:5060<if=udp$*:5060>
219 │ 0:00.024 Opal Liste...9ff8ef0700 SIP Sending PDU (352 bytes) to: rem=udp$192.168.179.33:5060,local=udp$*:5060,if=192.168.179.33%enp0s25
220 │ SIP/0.0 400 BadRequest
221 │ CSeq: 1 REGISTER
222 │ Via: SIP/2.0/UDP 0.0.0.0:5060;branch=z9hG4bKca2c53b4-b943-e911-97d9-d050991b03bb;rport=5060;received=192.168.179.33
223 │ From: <sip:itsmario@fritz.box>
224 │ Call-ID: 5a8952b4-b943-e911-97d9-d050991b03bb@powerbox
225 │ To: <sip:itsmario@fritz.box>;tag=596C825EFB2E215E
226 │ Contact: <sip:itsmario@0.0.0.0>
227 │ Content-Length: 0
Alles anzeigen
Der gleiche Fehler trat auf, als der Benutzername kürzer als 8 Zeichen war.
Was sagt die FritzBox zu den Anmeldeversuchen?
als Benutzername nicht die interne Rufnummer verwenden. Benutz den Namen der in der Fritzbox für das Telefoniegerät eingetragen wurde.
Ich hab im Script nicht fritz.box verwendet sondern die IP Adresse der Box
Ich würde das hier sehr gerne nochmal aufgreifen. Mit etwas Mühe habe, so scheint es zumindest, sipcmd auf meinem Pi 3 ans Laufen bekommen.
Dazu sip-dev installiert, wie hier beschrieben sources verändert, sodass ich auch libopal-dev und libpt-dev installieren konnte.
Dann das Repo geklont und gemaked. Lief alles, bis auf ein paar (ungefährliche) Warnings durch.
Danach in meiner FritzBox ein neues Telefoniegerät (IP-Telefon) eingerichtet; ja, mit langem Benutzernamen und ungleichem, ebenso langem Passwort.
Mein FritzFon hat die interne Nummer **612. Also sollte, wenn ich alles richtig verstanden habe, jetzt
./sipcmd -P sip -u nutzername -c passwort -w fritzip 'c**612;w10000;h'
zu einem Klingeln auf besagtem FritzFon führen. Dies passiert jedoch leider nicht. Ich bekomme folgende Meldungen von sipcmd:
Damit kann ich leider nicht so viel anfangen. Es scheint als funktioniere der Login zumindest. Aber dann ist ganz schnell Ende...
Vielen Dank für eure Hilfe!
EDIT: Ha Ha! Welch dummer Fehler! Ich vergas das -x for dem auszuführenden Befehl. Oh je, naja, jetzt funktioniert alles! Der richtige Befehl ist also
./sipcmd -P sip -u nutzername -c passwort -w fritzip -x 'c**612;w10000;h'
Ich lass das hier trotzdem mal stehen, vielleicht hilft's ja wem.
Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!