Hauptmenü

Modul 96_SIP

Begonnen von Wzut, 19 Februar 2017, 19:10:09

Vorheriges Thema - Nächstes Thema

Wzut

#210
hmm, da bin ich im Moment (fast) ratlos.
Ich arbeite bei meinen ganzen Test immer mit 2 SIP Clients/Devices. Der erste wickelt alle ankommenden Rufe ab  und der zweite die ausgehenden.
Lege dir doch zum Test in deiner FB auch einen weiteren SIP User an und dann damit auch ein zweites Device in FHEM.
Gib dem zweiten Device aber eine Portnummer die bei dir frei ist (Bsp 5000). Das Device für ausgehende Anrufe bekommt sip_listen none.
Maintainer der Module: MAX, MPD, UbiquitiMP, UbiquitiOut, SIP, BEOK, readingsWatcher

knodono

Hallo,
mit 2 verschiedenen SIP Devices funktioniert es einwandfrei! Problem also zumindest umgangen.
An dieser Stelle nochmal Dir (und plin) vielen Dank für das nützliche Modul.

Gruß Otto

plin

#212
tja,

  • ein FHEM Restart löst das Problem nicht
  • ein Raspi-Restart löst das Problem auch nicht (also ist Net::SIP raus)
  • also scheint sich die Fritzbox den Status des Clients zu merken
  • übliche timeout-Ansätze (5 Min., 15 Min.) lösen das Problem auch nicht

Müssen wir den Call als Client evtl. explizit beenden, damit die Fritzbox das mitkriegt? Ein $call->Bye an der richtigen Stelle (ich weiß, immer diese einfachen Fragen :-)? Korrektur: Wir sind noch in der invite-Phase. Wenn man den Anruf nicht annimmt kann man ihn auch nicht beenden.

Also schauen wir mal was uns Asterisk im Verbose-Modus  verrät ...

FHEM1 (Main) Raspi4 mit CUL, Homematic, SDUINO 433/OOK, zentrale Steuerung
FHEM2 (Keller) x86 mit CUL/hmland, IP-basierte Module
FHEM3 (Erdgeschoss) Raspi2 mit SDUINO 868/GFSK
FHEM4 (Hausanschlussraum), USV und OBIS-Modul
FHEM5 (Docker) mit FHEM2FHEM, InfluxDB

plin

Das Problem scheint durch einen Call ausgelöst zu werden. Die reine listen_wfp-Schleife mit einem set ... reject läuft problemlos.

Setzt man irgendwann über dasselbe Device einen Call ab, ist es aus.

Nach einem "register new expire : Sun Mar 26 15:30:35 2017" geht's dann wieder weiter.
FHEM1 (Main) Raspi4 mit CUL, Homematic, SDUINO 433/OOK, zentrale Steuerung
FHEM2 (Keller) x86 mit CUL/hmland, IP-basierte Module
FHEM3 (Erdgeschoss) Raspi2 mit SDUINO 868/GFSK
FHEM4 (Hausanschlussraum), USV und OBIS-Modul
FHEM5 (Docker) mit FHEM2FHEM, InfluxDB

Wzut

Nun gut (oder auch nicht) kein Mensch würde sich zwei Telefone auf den Tisch stellen um eines nur zum anrufen zu nutzen und das andere um angerufen zu werden ...
Anyway, ich geh mal davon aus das nur wenige User das Bedürfnis haben das Modul innerhalb von FHEM für beide Richtungen zu nutzen.
Man könnte natürlich auch den listen Prozess mit Gewalt beenden bevor ein Call raus geht und danach automatisch wieder neu starten.
Mal schauen ob ich die nächste Woche dazu komme sowas als Testversion zu erstellen.
@knodono liest du noch mit und würdest du dann so eine geänderte Version nochmal durchtesten ?
Maintainer der Module: MAX, MPD, UbiquitiMP, UbiquitiOut, SIP, BEOK, readingsWatcher

knodono

Zitat@knodono liest du noch mit und würdest du dann so eine geänderte Version nochmal durchtesten ?

Ich lese mit und würde natürlich wieder testen.

Prostetnik

#216
Hallo Leute,
ich bekomme das Modul bei mir leider nicht zum ticken. "CallRegister: Failed with code 404" ist das Einzige, was bei einem "set call" passiert.
Fritzbox 7490 OS6.83 / Modulversion 1.48

Im Wiki steht ja, dass für den sip_user die Durchwahl (bei mir 624) angegeben werden soll. Das lässt die Fritz aber nicht zu, da hier min. 8 Stellen für User und Passwort gefordert sind. Kann das die Ursache sein? Es sieht für mich jedenfalls danach aus, das der Account nicht gefunden wird. Auch Versuche mit bewusst falschem Passwort führen nicht zu einer anderen Fehlermeldung.

Log (verbose 5):
2017.03.29 09:30:49 4: sip, calling **614, ringtime: 30 , no message
2017.03.29 09:30:49 5: sip, call has pid 6155
2017.03.29 09:30:49 4: sip, CALLDone -> sip|0|CallRegister: Failed with code 404


Hat vielleicht jemand irgendwelche Ideen?

Wzut

Bitte poste mal ein vollständiges list von deinem SIP Device !
Ich kenn als User nur die dreistellige Nr, beginnt bei 620 mit dem ersten IP Device. Poste doch hier bitte mal welchen SIP User du da hinterlegt hast.
Da du keine Sig hast kann ich auch nur raten auf welcher Plattform du es probierst und welche OS Version, ebenso fehlt die Info welche Version von Net:Sip du einsetzt. 
Als nächstes wenn du als sip_registrar fritz.box stehen hast versuche es statt dessen mal mit der IP der FB.
Maintainer der Module: MAX, MPD, UbiquitiMP, UbiquitiOut, SIP, BEOK, readingsWatcher

Prostetnik

Hallo,
erst mal danke für die Antwort! Das scheint ja genau das Problem zu sein, dass ich in der Fritz keinen IP-Tel-Account mit einem 3-stelligen User anlegen kann. Interessanterweise ist bei den anderen IP-Accounts (Fritz!Fon) der User tatsächlich 3-stellig. Wie auch immer:

Mein Device-Listing:
Internals:
   AC         /usr/bin/sox
   CALL       sip|**614|30||
   NAME       sip
   NOTIFYDEV  txtToSpeech
   NR         269
   NTFY_ORDER 50-sip
   STATE      initialized
   TYPE       SIP
   VERSION    V1.48 / 25.03.17
   Readings:
     2017-03-29 09:30:49   call            done
     2017-03-29 09:30:49   call_state      fail
     2017-03-29 09:30:49   last_error      CallRegister: Failed with code 404
     2017-03-29 09:30:49   state           initialized
   Helper:
Attributes:
   T2S_Device txtToSpeech
   T2S_Timeout 15
   audio_converter sox
   room       Internals
   sip_dtmf_loop once
   sip_dtmf_send audio
   sip_dtmf_size 2
   sip_from   sip:Fhem-700@192.168.123.253
   sip_ip     192.168.123.56
   sip_listen none
   sip_port   5060
   sip_registrar 192.168.123.253
   sip_ringtime 3
   sip_user   Fhem-700
   verbose    5


sip_user, sip_from, password und registrar habe ich in allen möglichen Kombinationen ausprobiert.

Mein Fhem (frischeste Version) läuft auf einem Pi3 unter Jessie; Net:Sip 0.809

BTW: Ich will das Modul z.Z. ausschließlich für ausgehende Calls einsetzen.
Hoffe, die Infos helfen irgendwie weiter...

frank

#219
Zitat von: Prostetnik am 29 März 2017, 13:15:23
Hallo,
erst mal danke für die Antwort! Das scheint ja genau das Problem zu sein, dass ich in der Fritz keinen IP-Tel-Account mit einem 3-stelligen User anlegen kann.
das kann ich aber nicht bestätigen.
bei meiner 7490 mit fw 06.80/83 ist die länge des users beliebig. nur das passwort muss mindestens 8 zeichen haben.

sorry, ist doch so. aber doch eigentlich auch egal.
FHEM: 6.0(SVN) => Pi3(buster)
IO: CUL433|CUL868|HMLAN|HMUSB2|HMUART
CUL_HM: CC-TC|CC-VD|SEC-SD|SEC-SC|SEC-RHS|Sw1PBU-FM|Sw1-FM|Dim1TPBU-FM|Dim1T-FM|ES-PMSw1-Pl
IT: ITZ500|ITT1500|ITR1500|GRR3500
WebUI [HMdeviceTools.js (hm.js)]: https://forum.fhem.de/index.php/topic,106959.0.html

Wzut

@Prostetnik,
was du da gepostet hast sieht erst  einmal gut aus.
die IP 192.168.123.56 ist die IP deines FHEM ?
Ich denke du bist beim einrichten des SIP Telefons nach dieser Anleitung vorgegangen :
https://avm.de/service/fritzbox/fritzbox-7390/wissensdatenbank/publication/show/42_IP-Telefon-an-FRITZ-Box-anmelden-und-einrichten/
zumindest wird dort auch geschrieben das der User jetzt 8 Zeichen haben muss (Punkt 3.6)
Auf jeden Fall must du diesen dann auch unter sip_user verwenden. (Punkt 4 Benutzername)
sip_from wird ist normal sip:nr@registrar , daher der default sip:620@fritz.box , würde ich wieder so setzen allerdings statt der 620 deine echte interne Rufnummer ohne die beiden **

Fehler 404 hatten wir schonmal auf Seite 7 -> https://forum.fhem.de/index.php/topic,67443.msg598436.html#msg598436
nur werde ich da nicht schlau draus wie er das wirklich gelöst hat.

Als Alternative kannst du natürlich noch versuchen das SIP Telefon statt als Telefon als Türsprechstelle einzurichten :
https://forum.fhem.de/index.php/topic,67443.msg594257.html#msg594257
Maintainer der Module: MAX, MPD, UbiquitiMP, UbiquitiOut, SIP, BEOK, readingsWatcher

Laffer72

Hallo Wzut und plin,

erstmal danke Euch für das tolle Modul, klappt wirklich super.

Zum Benutzernamen hätte ich auch noch was beizutragen:
Auch ich mußte in der Fritzbox einen längeren Benutzernamen eingeben. Ich denke, das hängt mit dem aktuellsten update 6.8 oder 6.81 zusammen. Bei meiner Fritzbox zuhause (die habe ich noch vor dem Update mit dem SIP-Modul eingerichtet) steht noch ein die 620 als Benutzer drin.

Obwohl die interne Nummer jetzt hier auf meiner zweiten Installation auch 620 für das SIP-Telefon ist, mußte ich bei
sip_from   sip:Benutzername@fritz.box    angeben.
Mit der internen Nummer hat es nicht funktioniert.

Liebe Grüße

Reinhard
Raspberry Pi Rev.B, FB7390 (FHEM2FHEM), Sonos, Smarter Coffee
Osram Lightify:2m LED-Streifen, 5m-LED-Streifen, Gartenspot, Surface 28W, Classic E14,E27, Classic RGBW E27, PAR16 GU10, Plug
CUL868:FS20-ST, FS20-DI, FS20-FMS, FS20-ES1
HMUSB:HM-Sec-RHS,HM-Sec-MDIR2
Jeelink868:TX-29-IT, TFA30.315

Wzut

THX Reinhard für die Info. @ plin, sollten wir unbedingt im Wiki festhalten
Maintainer der Module: MAX, MPD, UbiquitiMP, UbiquitiOut, SIP, BEOK, readingsWatcher

Prostetnik

Hallo nochmal,
ich habe noch mal etwas herumprobiert. Wenn ich einen meiner vorhandenen Accounts verwende, bekomme ich tatsächlich erwartungsgemäß den Fehler 401 (Unauthorized) zurück. ist auch klar, kenne ja das Passwort nicht. Damit ist aber auch relativ klar, dass es nicht an meiner Umgebung liegt.
Könnte sein, dass AVM was geändert hat. Wäre nett, wenn jemand mit dem aktuellen FritzOS 6.83 das mal testen könnte. Also: neuen Account anlegen und dann probieren...
Als Türsprechanlage funktioniert es übrigens auch nicht. Gleicher Fehler.

Prostetnik

Hallo Leute: Problem gelöst!!!

Ich kann es kaum glauben: Nur wenn man ein Passwort vergibt, das von der Box als mindestens "gut" eingestuft wird, funktioniert es! 8)

Manchmal ist es schon seltsam... ;-)