Hauptmenü

Modul 96_SIP

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

Vorheriges Thema - Nächstes Thema

Wzut

#345
Zitat von: Mikka am 19 Oktober 2017, 21:43:49
Nun stellt sich mir die Frage, darf ich nur einen SIP-Client anlegen oder brauche ich für jeden SIP-Client einen eigenen Port?
Kurze Antwort : nein & ja :)

Lange Antwort : Generell sind mehr als ein Client kein Problem allerdings benötigt jeder seinen Port bzw sogar zwei wenn auch listen aktiv ist. D.h. dein Fehler liegt im attr sip_port dort hast du bei jedem 5060 eingetragen. Entweder du änderst das in zb
5060 für den ersten , 5080 für den zweiten , 6000 für den dritten oder du löschst das Attribut komplett und überläßt dem Modul eine dynamische Port Zuteilung oberhalb von 44000 - siehe commandref
Zitatsip_port
Optinale Portnummer die vom Modul benutzt wird.
Wenn dem Attribut kein Wert zugewiesen wurde verwendet das Modul eine zufällige Portnummer zwichen 44000 und 45000
Im Allgemeinen solltest du dir aber überlegen ob es wirklich sinnvoll und nötig ist drei Clients und damit drei extra Prozesse gleichzeitig laufen zu lassen. OK ich hatte  das bei der Modul Entwicklung auch damit ich nicht ständig Parameter anpassen musste, aber im täglichen Betrieb ? Zumal jetzt schon zwei nur im Modus listen_echo laufen.
Vllt. beschreibst ja mal deinen Anwendungsfall und warum es drei Clients sein müssen, ggf findet sich da auch eine elegantere Lösung.
Maintainer der Module: MAX, MPD, UbiquitiMP, UbiquitiOut, SIP, BEOK, readingsWatcher

moeweflieg

Hallo Wzut,

es ist ganz sicher kein AB oder Rufumleitung im Spiel!
Mit folgenden Aufrufen auf Festnetz oder andere Handynummer gleiches (1xKlingeln):
set mySIP1 call 068X 90 /opt/fhem/SonosSpeak/Test.alaw
bzw. ähnliches Verhalten (kurzes Klingeln, auch mal kein Klingeln und kein Protokolleintrag im Handy):
set mySIP1 call 017624XXXXX 90 /opt/fhem/SonosSpeak/Test.alaw


2017.10.21 08:39:27 4: mySIP1, audio file /opt/fhem/SonosSpeak/Test.alaw found
2017.10.21 08:39:27 4: mySIP1, mySIP1|017624XXXXX|30|/opt/fhem/SonosSpeak/Test.alaw|0
2017.10.21 08:39:27 4: mySIP1, call -> mySIP1|017624XXXXX|30|/opt/fhem/SonosSpeak/Test.alaw|0|0
2017.10.21 08:39:27 5: mySIP1, call has pid 8090
2017.10.21 08:39:27 4: mySIP1[8090], my parent is 1319
2017.10.21 08:39:27 4: mySIP1[8090], using random port 44480
2017.10.21 08:39:27 4: mySIP1[8090], register new expire : Sat Oct 21 08:44:27 2017
2017.10.21 08:39:27 5: mySIP1[8090], telnet : set mySIP1 state calling exit
2017.10.21 08:39:28 4: mySIP1[8090], CallStart with 2 files - first file : CODE(0x44d0590) - PCMA/8000 , repeat 0
2017.10.21 08:39:28 4: mySIP1[8090], calling : 017624XXXXX
2017.10.21 08:39:28 5: mySIP1[8090], telnet : set mySIP1 call_state calling 017624XXXXX exit
2017.10.21 08:39:28 4: mySIP1[8090], cb_final - status : FAIL - final : 481
2017.10.21 08:39:28 5: mySIP1[8090], telnet : set mySIP1 call_state ringing exit
2017.10.21 08:39:37 4: mySIP1[8090], cb_final - status : OK
2017.10.21 08:39:37 4: mySIP1[8090], call established
2017.10.21 08:39:37 5: mySIP1[8090], telnet : set mySIP1 call_state established exit
2017.10.21 08:39:40 5: mySIP1[8090], 0. Ende des ersten Loops
2017.10.21 08:39:40 5: mySIP1[8090], 1. rtp_done : Net::SIP::Simple::Call=HASH(0x40d2b68)
2017.10.21 08:39:40 5: mySIP1[8090], 2. fi : 0
2017.10.21 08:39:40 5: mySIP1[8090], 3. timeout : 0
2017.10.21 08:39:40 4: mySIP1[8090], next file : /opt/fhem/SonosSpeak/Test.alaw
2017.10.21 08:39:40 4: mySIP1[8090], cb_final - status : OK
2017.10.21 08:39:42 4: mySIP1[8090], loop rtp_done : Net::SIP::Simple::Call=HASH(0x40d2b68)
2017.10.21 08:39:42 5: mySIP1[8090], RTP done : Net::SIP::Simple::Call=HASH(0x40d2b68)
2017.10.21 08:39:42 5: mySIP1[8090], Timeout  : 0
2017.10.21 08:39:42 5: mySIP1[8090], while    : 0
2017.10.21 08:39:42 5: mySIP1[8090], Status   : OK
2017.10.21 08:39:42 4: mySIP1, CALLDone -> mySIP1|1|ok
2017.10.21 08:39:42 5: mySIP1, fifo is empty
2017.10.21 08:39:42 5: mySIP1, no elbc


2017.10.21 08:26:21 4: mySIP1, mySIP1|068X|30|/opt/fhem/SonosSpeak/Test.alaw|0
2017.10.21 08:26:21 4: mySIP1, call -> mySIP1|068X|30|/opt/fhem/SonosSpeak/Test.alaw|0|0
2017.10.21 08:26:21 5: mySIP1, call has pid 7046
2017.10.21 08:26:21 4: mySIP1[7046], my parent is 1319
2017.10.21 08:26:21 4: mySIP1[7046], using random port 44421
2017.10.21 08:26:21 4: mySIP1[7046], register new expire : Sat Oct 21 08:31:21 2017
2017.10.21 08:26:21 5: mySIP1[7046], telnet : set mySIP1 state calling exit
2017.10.21 08:26:21 4: mySIP1[7046], CallStart with 2 files - first file : CODE(0x448a988) - PCMA/8000 , repeat 0
2017.10.21 08:26:21 4: mySIP1[7046], calling : 068X
2017.10.21 08:26:21 5: mySIP1[7046], telnet : set mySIP1 call_state calling 068X exit
2017.10.21 08:26:21 4: mySIP1[7046], cb_final - status : FAIL - final : 481
2017.10.21 08:26:21 5: mySIP1[7046], telnet : set mySIP1 call_state ringing exit
2017.10.21 08:26:31 4: mySIP1[7046], cb_final - status : OK
2017.10.21 08:26:31 4: mySIP1[7046], call established
2017.10.21 08:26:31 5: mySIP1[7046], telnet : set mySIP1 call_state established exit
2017.10.21 08:26:34 5: mySIP1[7046], 0. Ende des ersten Loops
2017.10.21 08:26:34 5: mySIP1[7046], 1. rtp_done : Net::SIP::Simple::Call=HASH(0x40dc210)
2017.10.21 08:26:34 5: mySIP1[7046], 2. fi : 0
2017.10.21 08:26:34 5: mySIP1[7046], 3. timeout : 0
2017.10.21 08:26:34 4: mySIP1[7046], next file : /opt/fhem/SonosSpeak/Test.alaw
2017.10.21 08:26:34 4: mySIP1[7046], cb_final - status : OK
2017.10.21 08:26:35 4: mySIP1[7046], loop rtp_done : Net::SIP::Simple::Call=HASH(0x40dc210)
2017.10.21 08:26:35 5: mySIP1[7046], RTP done : Net::SIP::Simple::Call=HASH(0x40dc210)
2017.10.21 08:26:35 5: mySIP1[7046], Timeout  : 0
2017.10.21 08:26:35 5: mySIP1[7046], while    : 0
2017.10.21 08:26:35 5: mySIP1[7046], Status   : OK
2017.10.21 08:26:35 4: mySIP1, CALLDone -> mySIP1|1|ok
2017.10.21 08:26:35 5: mySIP1, fifo is empty
2017.10.21 08:26:35 5: mySIP1, no elbc


Gruß moewe

moeweflieg

Hallo Wzut,

kurzer Nachtrag und Sorry, dass ich Dich auf ein falsche Fährte geschickt habe.
Ich hatte im Modul 96_SIP.pm aus einem vorherigen Test noch $ringtime = 30; gesetzt, weil nach
set mySIP1 call 068X 90 !Hier ist dein FHEM Server
immer folgende Fehlermeldung kommt:
invalid max time : 90 !Hier


705    return "missing target call number" if (!$nr);
706   #return "invalid max time : $ringtime" unless $ringtime =~ m/^\d+$/;
707 $ringtime = 30;


Das Verhalten bleibt ohne diese Code-Änderung aber das gleiche:

2017.10.21 08:55:09 4: mySIP1, audio file /opt/fhem/SonosSpeak/Test.alaw found
2017.10.21 08:55:09 4: mySIP1, mySIP1|068X|90|/opt/fhem/SonosSpeak/Test.alaw|0
2017.10.21 08:55:09 4: mySIP1, call -> mySIP1|068X|90|/opt/fhem/SonosSpeak/Test.alaw|0|0
2017.10.21 08:55:09 5: mySIP1, call has pid 9453
2017.10.21 08:55:09 4: mySIP1[9453], my parent is 9243
2017.10.21 08:55:09 4: mySIP1[9453], using random port 44432
2017.10.21 08:55:09 4: mySIP1[9453], register new expire : Sat Oct 21 09:00:09 2017
2017.10.21 08:55:09 5: mySIP1[9453], telnet : set mySIP1 state calling exit
2017.10.21 08:55:09 4: mySIP1[9453], CallStart with 2 files - first file : CODE(0x4a9f2d0) - PCMA/8000 , repeat 0
2017.10.21 08:55:09 4: mySIP1[9453], calling : 068X
2017.10.21 08:55:09 5: mySIP1[9453], telnet : set mySIP1 call_state calling 06806989421 exit
2017.10.21 08:55:09 4: mySIP1[9453], cb_final - status : FAIL - final : 481
2017.10.21 08:55:09 5: mySIP1[9453], telnet : set mySIP1 call_state ringing exit
2017.10.21 08:55:19 4: mySIP1[9453], cb_final - status : OK
2017.10.21 08:55:19 4: mySIP1[9453], call established
2017.10.21 08:55:19 5: mySIP1[9453], telnet : set mySIP1 call_state established exit
2017.10.21 08:55:22 5: mySIP1[9453], 0. Ende des ersten Loops
2017.10.21 08:55:22 5: mySIP1[9453], 1. rtp_done : Net::SIP::Simple::Call=HASH(0x4d1ae58)
2017.10.21 08:55:22 5: mySIP1[9453], 2. fi : 0
2017.10.21 08:55:22 5: mySIP1[9453], 3. timeout : 0
2017.10.21 08:55:22 4: mySIP1[9453], next file : /opt/fhem/SonosSpeak/Test.alaw
2017.10.21 08:55:22 4: mySIP1[9453], cb_final - status : OK
2017.10.21 08:55:23 4: mySIP1[9453], loop rtp_done : Net::SIP::Simple::Call=HASH(0x4d1ae58)
2017.10.21 08:55:23 5: mySIP1[9453], RTP done : Net::SIP::Simple::Call=HASH(0x4d1ae58)
2017.10.21 08:55:23 5: mySIP1[9453], Timeout  : 0
2017.10.21 08:55:23 5: mySIP1[9453], while    : 0
2017.10.21 08:55:23 5: mySIP1[9453], Status   : OK
2017.10.21 08:55:23 4: mySIP1, CALLDone -> mySIP1|1|ok
2017.10.21 08:55:23 5: mySIP1, fifo is empty
2017.10.21 08:55:23 5: mySIP1, no elbc



Gruß moewe

Mikka

Zitat von: Wzut am 20 Oktober 2017, 09:13:43
Kurze Antwort : nein & ja :)

Lange Antwort : Generell sind mehr als ein Client kein Problem allerdings benötigt jeder seinen Port bzw sogar zwei wenn auch listen aktiv ist. D.h. dein Fehler liegt im attr sip_port dort hast du bei jedem 5060 eingetragen. Entweder du änderst das in zb
5060 für den ersten , 5080 für den zweiten , 6000 für den dritten oder du löschst das Attribut komplett und überläßt dem Modul eine dynamische Port Zuteilung oberhalb von 44000 - siehe commandref

Danke für die Aufklärung :-) Die dynamische Port Zuteilung klappt und alle drei Clients haben den state listen_echo.

Zitat von: Wzut am 20 Oktober 2017, 09:13:43
Im Allgemeinen solltest du dir aber überlegen ob es wirklich sinnvoll und nötig ist drei Clients und damit drei extra Prozesse gleichzeitig laufen zu lassen. OK ich hatte  das bei der Modul Entwicklung auch damit ich nicht ständig Parameter anpassen musste, aber im täglichen Betrieb ? Zumal jetzt schon zwei nur im Modus listen_echo laufen.
Vllt. beschreibst ja mal deinen Anwendungsfall und warum es drei Clients sein müssen, ggf findet sich da auch eine elegantere Lösung.

Eigentlich würde ich gerne nur einen Client nutzen. Mein Anwendungsfall ist der folgende:
Ich habe mehrere Geräte die einen Alarm melden z. B. Rauchmelder, Klingel, Wasser-Leck-Sensor, Raumluftqualität. Wenn ein Rauchmelder anschlägt möchte ich benachrichtigt werden. Telegram ist zwar eine super Lösung, doch wenn man z. B. in Deutschlands Wäldern oder Ausland unterwegs ist, hat man nicht unbedingt einen Datenempfang. Mobilfunk dagegen schon etwas mehr. Der Fritzbox kann ich jedem Fall eine eigene Nummer zuweisen. FHEM würde dann über den den entsprechenden SIP-Client einen Anruf ausgehend mit einer eigenen Telefonnummer ausführen.

Wenn ich mit einem SIP-Client mit unterschiedlichen Rufnummern ausgehend telefonieren kann, bin ich um jeden Tipp dankbar!

Mikka

Wzut

#349
Zitat von: moeweflieg am 21 Oktober 2017, 09:14:23
set mySIP1 call 068X 90 !Hier ist dein FHEM Server
immer folgende Fehlermeldung kommt:
invalid max time : 90 !Hier
Hmm auch komisch das in deinem Fall das Leerzeichen zwischen der 0 und dem ! nicht als solches erkannt wird, in dem Fall schlägt doch auch alles was nachfolgt fehl.
D.h. Die Textnachricht kann nicht mehr als solche erkannt werden  dir ihr das ! als Startzeichen fehlt.
Aber anyway zu deinem eigentlichen Problem gehen mir langsam die Ideen aus, zumal bis jetzt noch niemand von ähnlichen Problemen berichtet hat.

Zitat von: Mikka am 21 Oktober 2017, 11:00:02
Wenn ich mit einem SIP-Client mit unterschiedlichen Rufnummern ausgehend telefonieren kann, bin ich um jeden Tipp dankbar!
Sorry aber das habe ich Modulseitig nicht in der Hand das macht die Fritte (bzw die PBX)
Aber verstehe ich das richtig dir kommt es bei der Art von Alamierung nur auf die QuellrufNr an, was die Quelle dann eigentlich so von sich gibt darauf achtetst du gar nicht. Ich würde es halt mit nur einer Rufnummer machen und dafür die Texte dynamisch. Ok, must du selbst am besten wissen, aber warum dann noch bei jedem Client das Attribut sip_listen auf echo setzen und nicht auf none ? Hier liegt IMHO die Ressource Verschwendung wegen der ständig laufenden drei extra Prozesse.
Maintainer der Module: MAX, MPD, UbiquitiMP, UbiquitiOut, SIP, BEOK, readingsWatcher

Mikka

Zitat von: Wzut am 21 Oktober 2017, 13:47:14
Sorry aber das habe ich Modulseitig nicht in der Hand das macht die Fritte (bzw die PBX)

Das habe ich vermutet  :(

Zitat von: Wzut am 21 Oktober 2017, 13:47:14
Aber verstehe ich das richtig dir kommt es bei der Art von Alamierung nur auf die QuellrufNr an, was die Quelle dann eigentlich so von sich gibt darauf achtetst du gar nicht.

Ja, da ich beliebig viele Nummern anlegen kann.

Zitat von: Wzut am 21 Oktober 2017, 13:47:14
Ich würde es halt mit nur einer Rufnummer machen und dafür die Texte dynamisch. Ok, must du selbst am besten wissen, aber warum dann noch bei jedem Client das Attribut sip_listen auf echo setzen und nicht auf none ? Hier liegt IMHO die Ressource Verschwendung wegen der ständig laufenden drei extra Prozesse.

Das ist ein guter Tipp mit den Texten. Du meinst die Texte die dann auf die Mailbox gesprochen werden?
Und ja das ist Ressourcen Verschwendung, werde ich auf none stellen. War auf echo da ich damit angefangen habe zu probieren was so alles möglich ist, auch in die andere Richtung ;-)

Danke dir für die schnelle Hilfe Wzut und wünsche ein schönes WE!
Mikka

Wzut

Zitat von: Mikka am 21 Oktober 2017, 14:57:02
Du meinst die Texte die dann auf die Mailbox gesprochen werden?
ja genau - ich habe z.B. im täglichen Einsatz "Waschmaschine ist fertig" , "Trockner ist fertig" an interne  RufNr. und allle Rauchmelder jeweils mit ihrem Namen und dem force Zusatz aufs Handy. Diverse Wassermelder und anderer Kleinkram fehlen zwar noch, aber das ist halt bei mir wie bei dem Schuster der ja bekanntlich auch die schlechtesten Schuhe hat ....
Maintainer der Module: MAX, MPD, UbiquitiMP, UbiquitiOut, SIP, BEOK, readingsWatcher

Mikka

Zitat von: Wzut am 21 Oktober 2017, 15:54:12
ja genau - ich habe z.B. im täglichen Einsatz "Waschmaschine ist fertig" , "Trockner ist fertig" an interne  RufNr. und allle Rauchmelder jeweils mit ihrem Namen und dem force Zusatz aufs Handy. Diverse Wassermelder und anderer Kleinkram fehlen zwar noch, aber das ist halt bei mir wie bei dem Schuster der ja bekanntlich auch die schlechtesten Schuhe hat ....

Hallo Wzut,

werde ich mal testen. Das Problem mit dem Schuster kenne ich nur all zu gut ... ;)

Mikka

plin

Zitat von: Wzut am 21 Oktober 2017, 13:47:14
Hmm auch komisch das in deinem Fall das Leerzeichen zwischen der 0 und dem ! nicht als solches erkannt wird, in dem Fall schlägt doch auch alles was nachfolgt fehl.
D.h. Die Textnachricht kann nicht mehr als solche erkannt werden  dir ihr das ! als Startzeichen fehlt.
Dazu fällt mir ein "Schatz, es ist nicht das wonach es aussieht". Vielleicht ist das Blank das du siehst gar kein ordinäres Blank (0x20). Hast du mal versucht den Set-String im Editor zu erfassen (neu eintippen!) und dann in die FHEM-Command-Zeile zu kopieren?
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

moeweflieg

Hallo Wzut,

kann es sein, dass das Fehlverhalten auf meinen Telefonprovider (VSEnet) zurückzuführen ist?
Zu Hause habe ich 1und1 als Provider und dort funktioniert es bei sonst gleichen Einstellungen und Fritzbox mit gleicher Firmware.
Allerdings bleibt der Ruf nicht die angegenen 90sek, sondern höchstens 10sek anstehen - und die Logs unterscheiden sich nicht, egal ob ich abhebe und die Nachricht abhöre oder nicht!

Werde demnächst am zu überwachenden Standort auch auf 1und1 umstellen!

Gruß moewe

Wzut

keine Ahnung , aber wie jetzt zu Hause mit 1&1 geht alles wie es soll oder klingelt es da auch bei der Gegenstelle nur 10 Sekunden ??
Ich kapiere halt nicht warum bei dir das Net::SIP Modul der Meinung ist die Gegenstelle hätte das Gespräch angnommen.

@frank, da von dir keine negativ Meldung kam, habe ich die geänderte Version als V1.6 jetzt eingecheckt - verfügbar morgen via Update 
Maintainer der Module: MAX, MPD, UbiquitiMP, UbiquitiOut, SIP, BEOK, readingsWatcher

Tomk

Zitat von: Wzut link=topic=67443.msg702917#msg702917
Ich kapiere halt nicht warum bei dir das Net::SIP Modul der Meinung ist die Gegenstelle hätte das Gespräch angnommen.
/quote]

Hallo, ich hatte ja ein paar Seiten vorher das gleiche Verhalten schonmal geschildert. Bei mir ist es mein Handy...


Gesendet von iPhone mit Tapatalk

moeweflieg

Hallo Wzut,

hier die Logs:

Anruf ohne Abheben: (Es klingelt etwa 10 Sekunden)


2017.10.22 15:03:55 4: mySIP1, audio file /opt/fhem/SonosSpeak/Test.alaw found
2017.10.22 15:03:55 4: mySIP1, mySIP1|0176XXXXXXXX|90|/opt/fhem/SonosSpeak/Test.alaw|0
2017.10.22 15:03:55 4: mySIP1, call -> mySIP1|0176XXXXXXXX|90|/opt/fhem/SonosSpeak/Test.alaw|0|0
2017.10.22 15:03:55 5: mySIP1, call has pid 14996
2017.10.22 15:03:55 4: mySIP1[14996], my parent is 14122
2017.10.22 15:03:55 4: mySIP1[14996], using random port 44361
2017.10.22 15:03:55 4: mySIP1[14996], register new expire : Sun Oct 22 15:08:55 2017
2017.10.22 15:03:55 5: mySIP1[14996], telnet : set mySIP1 state calling exit
2017.10.22 15:03:55 4: mySIP1[14996], CallStart with 2 files - first file : CODE(0x2e286f0) - PCMA/8000 , repeat 0
2017.10.22 15:03:55 4: mySIP1[14996], calling : 0176XXXXXXXX
2017.10.22 15:03:55 5: mySIP1[14996], telnet : set mySIP1 call_state calling 0176XXXXXXXX exit
2017.10.22 15:03:55 4: mySIP1[14996], cb_final - status : FAIL - final : 481
2017.10.22 15:03:55 5: mySIP1[14996], telnet : set mySIP1 call_state ringing exit
2017.10.22 15:04:16 4: mySIP1[14996], cb_final - status : OK
2017.10.22 15:04:16 4: mySIP1[14996], call established
2017.10.22 15:04:16 5: mySIP1[14996], telnet : set mySIP1 call_state established exit
2017.10.22 15:04:19 5: mySIP1[14996], 0. Ende des ersten Loops
2017.10.22 15:04:19 5: mySIP1[14996], 1. rtp_done : Net::SIP::Simple::Call=HASH(0x61375f0)
2017.10.22 15:04:19 5: mySIP1[14996], 2. fi : 0
2017.10.22 15:04:19 5: mySIP1[14996], 3. timeout : 0
2017.10.22 15:04:19 4: mySIP1[14996], next file : /opt/fhem/SonosSpeak/Test.alaw
2017.10.22 15:04:19 4: mySIP1[14996], cb_final - status : OK
2017.10.22 15:04:20 4: mySIP1[14996], loop rtp_done : Net::SIP::Simple::Call=HASH(0x61375f0)
2017.10.22 15:04:20 5: mySIP1[14996], RTP done : Net::SIP::Simple::Call=HASH(0x61375f0)
2017.10.22 15:04:20 5: mySIP1[14996], Timeout  : 0
2017.10.22 15:04:20 5: mySIP1[14996], while    : 0
2017.10.22 15:04:20 5: mySIP1[14996], Status   : OK
2017.10.22 15:04:20 4: mySIP1, CALLDone -> mySIP1|1|ok
2017.10.22 15:04:20 5: mySIP1, fifo is empty
2017.10.22 15:04:20 5: mySIP1, no elbc


Anruf mit Abheben: (Audiofile wird abgespielt)


2017.10.22 15:04:27 4: mySIP1, audio file /opt/fhem/SonosSpeak/Test.alaw found
2017.10.22 15:04:27 4: mySIP1, mySIP1|0176XXXXXXXX|90|/opt/fhem/SonosSpeak/Test.alaw|0
2017.10.22 15:04:27 4: mySIP1, call -> mySIP1|0176XXXXXXXX|90|/opt/fhem/SonosSpeak/Test.alaw|0|0
2017.10.22 15:04:27 5: mySIP1, call has pid 15077
2017.10.22 15:04:27 4: mySIP1[15077], my parent is 14122
2017.10.22 15:04:27 4: mySIP1[15077], using random port 44128
2017.10.22 15:04:27 4: mySIP1[15077], register new expire : Sun Oct 22 15:09:27 2017
2017.10.22 15:04:27 5: mySIP1[15077], telnet : set mySIP1 state calling exit
2017.10.22 15:04:27 4: mySIP1[15077], CallStart with 2 files - first file : CODE(0x5eefe28) - PCMA/8000 , repeat 0
2017.10.22 15:04:27 4: mySIP1[15077], calling : 0176XXXXXXXX
2017.10.22 15:04:27 5: mySIP1[15077], telnet : set mySIP1 call_state calling 0176XXXXXXXX exit
2017.10.22 15:04:27 4: mySIP1[15077], cb_final - status : FAIL - final : 481
2017.10.22 15:04:27 5: mySIP1[15077], telnet : set mySIP1 call_state ringing exit
2017.10.22 15:04:37 4: mySIP1[15077], cb_final - status : OK
2017.10.22 15:04:37 4: mySIP1[15077], call established
2017.10.22 15:04:37 5: mySIP1[15077], telnet : set mySIP1 call_state established exit
2017.10.22 15:04:40 5: mySIP1[15077], 0. Ende des ersten Loops
2017.10.22 15:04:40 5: mySIP1[15077], 1. rtp_done : Net::SIP::Simple::Call=HASH(0x6181528)
2017.10.22 15:04:40 5: mySIP1[15077], 2. fi : 0
2017.10.22 15:04:40 5: mySIP1[15077], 3. timeout : 0
2017.10.22 15:04:40 4: mySIP1[15077], next file : /opt/fhem/SonosSpeak/Test.alaw
2017.10.22 15:04:40 4: mySIP1[15077], cb_final - status : OK
2017.10.22 15:04:41 4: mySIP1[15077], loop rtp_done : Net::SIP::Simple::Call=HASH(0x6181528)
2017.10.22 15:04:41 5: mySIP1[15077], RTP done : Net::SIP::Simple::Call=HASH(0x6181528)
2017.10.22 15:04:41 5: mySIP1[15077], Timeout  : 0
2017.10.22 15:04:41 5: mySIP1[15077], while    : 0
2017.10.22 15:04:41 5: mySIP1[15077], Status   : OK
2017.10.22 15:04:41 4: mySIP1, CALLDone -> mySIP1|1|ok
2017.10.22 15:04:41 5: mySIP1, fifo is empty
2017.10.22 15:04:41 5: mySIP1, no elbc


Gruß moewe


Wzut

Das meine ich doch , bei dir sehen die Logs an der entscheidenden  Stelle immer gleich aus :
2017.10.22 15:03:55 4: mySIP1[14996], cb_final - status : FAIL - final : 481
2017.10.22 15:03:55 5: mySIP1[14996], telnet : set mySIP1 call_state ringing exit
2017.10.22 15:04:16 4: mySIP1[14996], cb_final - status : OK
2017.10.22 15:04:16 4: mySIP1[14996], call established

um 15:03:55 status : FAIL - final : 481 , bedeutet der Ruf wurde aufgebaut aber ein Gespräch ist noch nicht zustande gekommen = FAIL , der Fehlercode 481 bedeutet ringing , d.h. es klingelt ab jetzt bei der Gegenstelle.
21 Sekunden später : cb_final - status : OK & call established
Die Gegenstelle hat den Hörer abgenommen und nun wird mit dem abspielen der Audiofiles begonnen, zuerst ein paar Sekunden lang Stille ( Sound of Silence , enstpricht dem Attribut sip_call_audio_delay)  danach dein Test.alaw und das alles ohne Fehler. Wenn ich bei mir einen ankommenden Ruf abweise oder ganz schnell abnehme und wieder auflege sehen die Log ganz anders aus.
Maintainer der Module: MAX, MPD, UbiquitiMP, UbiquitiOut, SIP, BEOK, readingsWatcher

frank

Zitat von: Wzut am 22 Oktober 2017, 19:31:44
@frank, da von dir keine negativ Meldung kam, habe ich die geänderte Version als V1.6 jetzt eingecheckt - verfügbar morgen via Update
prima, ist installiert und steht unter beobachtung.

allerdings bleibt weiterhin mit sip_watch_listen=90 die zeitdifferenz bei 60s.

2017.10.26 21:37:45.439 5 : triggerLiveCam, listen process 29040 found
2017.10.26 21:38:45.480 5 : triggerLiveCam, listen process 29040 found
2017.10.26 21:39:45.521 5 : triggerLiveCam, listen process 29040 found


ist aber kein problem, da ich die einstellmöglichkeit zur zeit nicht benötige. bei bedarf werde ich mir mal den code anschauen.

edit:

es sieht so aus, dass die zeit sip_watch_listen nur beim ersten mal wirkt. also zwischen "listen new pid xy" und dem folgenden "listen prozes xy found". bei allen weiteren wiederholungen wird immer 60s genutzt.

2017-10-26 21:54:24.188 Global global ATTR triggerLiveCam sip_watch_listen 95
2017.10.26 21:54:25.177 4 : triggerLiveCam, Listen Kill PID : 29040
2017.10.26 21:54:25.191 1 : Timeout for SIP_ListenStart reached, terminated process 29040
2017.10.26 21:54:25.194 4 : triggerLiveCam, Reset Listen done
2017.10.26 21:54:25.206 4 : triggerLiveCam, Listen new PID : 12073
2017-10-26 21:54:25.326 SIP triggerLiveCam listen_dtmf
2017-10-26 21:54:25.340 SIP triggerLiveCam expire: 2017-10-26 21:59:25
2017-10-26 21:54:25.357 SIP triggerLiveCam caller_state: waitting
2017.10.26 21:56:00.249 5 : triggerLiveCam, listen process 12073 found
017-10-26 21:56:55.341 SIP triggerLiveCam listen_dtmf
2017-10-26 21:56:55.354 SIP triggerLiveCam expire: 2017-10-26 22:01:55
2017.10.26 21:57:00.289 5 : triggerLiveCam, listen process 12073 found
2017.10.26 21:58:00.329 5 : triggerLiveCam, listen process 12073 found
2017.10.26 21:59:00.369 5 : triggerLiveCam, listen process 12073 found
2017-10-26 21:59:25.368 SIP triggerLiveCam listen_dtmf
2017-10-26 21:59:25.380 SIP triggerLiveCam expire: 2017-10-26 22:04:25
2017.10.26 22:00:00.409 5 : triggerLiveCam, listen process 12073 found


2017.10.26 22:00:14.684 5 : triggerLiveCam , SIP_Attr : reset
2017-10-26 22:00:14.696 Global global ATTR triggerLiveCam sip_watch_listen 40
2017.10.26 22:00:15.686 4 : triggerLiveCam, Listen Kill PID : 12073
2017.10.26 22:00:15.686 1 : Timeout for SIP_ListenStart reached, terminated process 12073
2017.10.26 22:00:15.690 4 : triggerLiveCam, Reset Listen done
2017.10.26 22:00:15.703 4 : triggerLiveCam, Listen new PID : 12270
2017-10-26 22:00:15.821 SIP triggerLiveCam listen_dtmf
2017-10-26 22:00:15.835 SIP triggerLiveCam expire: 2017-10-26 22:05:15
2017.10.26 22:00:55.747 5 : triggerLiveCam, listen process 12270 found
2017.10.26 22:01:55.787 5 : triggerLiveCam, listen process 12270 found
2017-10-26 22:02:45.838 SIP triggerLiveCam listen_dtmf
2017-10-26 22:02:45.851 SIP triggerLiveCam expire: 2017-10-26 22:07:45
2017.10.26 22:02:55.827 5 : triggerLiveCam, listen process 12270 found


gruss frank
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