Hauptmenü

Modul 96_SIP

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

Vorheriges Thema - Nächstes Thema

Andre0909

Zitat von: plin am 29 April 2018, 14:13:15
Der 401er bedeutet "unauthorized" (siehe https://de.wikipedia.org/wiki/SIP-Status-Codes).

Dein "Passwort" hat zwar 8 Stellen, aber wurde es von der FritzBox auch als "gut" bewertet (siehe https://wiki.fhem.de/wiki/SIP-Client, Abschnitt "SIP-Server")?

Hatte nur "mittel". Habe ein Sonderzeichen zugefügt jetzt ist es 9 stellig mit "gut".
Neu gesetzt im Device.
Neuer Call, selbes Problem :(

plin

Set mal den sip_user auf Andre0909
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

Andre0909

Zitat von: plin am 29 April 2018, 14:36:55
Set mal den sip_user auf Andre0909

JAP, das war es . Funzt! Vielen Dank

Andre0909

#603
hab aber noch eine Frage. :)

Möchte folgenenden Ruf abgeben:

**1 *3*1#

warum? Mein Gira TK Gateway schaltet damit eine Rufumleitung der Klingel auf das Handy um. Zeitgesteuert durch FHEM.
Problem. Nach *11 muss erst 2 sekunden der Bestätigungscode abgewartet werden, danach erst *3*1# gewählt werden. Kann man eine Art Pause einfügen?

Würde z.B. funktionieren:

**1 -3*1# ?

plin

Ich würde es mal mit Kommas statt blank probieren. Lt. Doku https://github.com/noxxi/p5-net-sip/blob/master/tools/generate-dtmf.pl müsste alles was nicht DTMF ist als Pause interpretiert werden.
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

topfi

#605
Könnt ihr bitte mal ausprobieren, ob der simple Befehl

set SIP call [Telefonnummer] 30 !Achtung

bei Euch funktioniert?! Ich meine, wirklich nur mit dem Wort "Achtung"

Kein Witz: Hier funktioniert alles, ich kann ganze Romane eingeben, das wird alles korrekt vorgelesen. Nur das Wort "Achtung" darf nicht drin sein, dann gibt es im Verzeichnis "fhem/Cache/" keine *.alaw Datei (wohl aber die *.mp3!) und ich bekomme nur die DTMF-Töne zu hören. Die Fehlermeldung (reading last_error unter SIP) lautet: "audio file Achtung not found"

Mystisch ...

Wzut

Lustig ... geht bei mir auch nicht. Allerdings schafft verbose 5 da etwas mehr Klarheit :
sox : /usr/bin/sox WARN rate: rate clipped 1 samples; decrease volume?
Was auch immer sox da an dem mp3 File auszusetzen hat :(
Bzw. das würde eigentlich bedeuten das Google da schon Mist zurückliefert ? Werde mich die Tage wohl mal näher damit beschäftigen müssen.
Maintainer der Module: MAX, MPD, UbiquitiMP, UbiquitiOut, SIP, BEOK, readingsWatcher

Elgardo

Hallo zusammen,


vorab erst mal ein großes Lob für das Modul und habe großen Respekt vor eurer Arbeit, Energie und Know How die dafür investiert wurde.
Das Modul funktioniert bestens solange ich meine Firewall (fail2ban) auf meinen Raspi 2 abgeschaltet habe.

Sobald ich jedoch die Firewall aktiviere werden keine DTMF-Töne mehr übertragen. Anrufen mit dem Modul funktioniert ohne Probleme, es werden eben keine Töne übertragen.

Die Ports TCP 5060 und UDP 5060 sowie TCP/UDP 53, 80 und weitere sind freigeschaltet.

Da bisher  ohne Firewall alles problemlos klappte vermute ich (nach einigen Stunden rätseln und probieren), dass ich noch weitere ports öffnen sollte.

Kurz: Welche Ports TCP/UDP muss ich in der Firewall freischalten, damit ich auch mit aktivierter Firewall das Modul DTMF Töne senden kann?

Für Tipps bin ich sehr dankbar.


Mit Verbose 5 erhalte ich folgende log..

2018.05.16 23:23:31 4: Raspi_SIP, calling **611, ringtime: 30 , no message
2018.05.16 23:23:31 4: Raspi_SIP, Raspi_SIP|**611|30||0
2018.05.16 23:23:31 4: Raspi_SIP, call -> Raspi_SIP|**611|30||0|0
2018.05.16 23:23:31 5: Raspi_SIP, call has pid 2577
2018.05.16 23:23:31 4: Raspi_SIP[2577], my parent is 30280
2018.05.16 23:23:31 4: Raspi_SIP[2577], using Leg.pm to find a free port
2018.05.16 23:23:31 4: Raspi_SIP[2577], register new expire : 2018-05-16 23:28:31
2018.05.16 23:23:31 5: Raspi_SIP, readingS:state Val:calling
2018.05.16 23:23:31 4: Raspi_SIP[2577], CallStart DTMF : ABCD*#123--4567890
2018.05.16 23:23:31 4: Raspi_SIP[2577], calling : **611
2018.05.16 23:23:31 5: Raspi_SIP, readingS:call_state Val:calling **611
2018.05.16 23:23:32 4: Raspi_SIP[2577], cb_final - status : FAIL - final : 481
2018.05.16 23:23:32 5: Raspi_SIP, readingS:call_state Val:ringing
2018.05.16 23:23:37 4: Raspi_SIP[2577], cb_final - Status : OK
2018.05.16 23:23:37 4: Raspi_SIP[2577], call established
2018.05.16 23:23:37 5: Raspi_SIP, readingS:call_state Val:established
2018.05.16 23:24:01 5: Raspi_SIP[2577], 0. Ende des ersten Loops
2018.05.16 23:24:01 5: Raspi_SIP[2577], 1. rtp_done : 0
2018.05.16 23:24:01 5: Raspi_SIP[2577], 2. fi : 0
2018.05.16 23:24:01 5: Raspi_SIP[2577], 4. timeout : 1
2018.05.16 23:24:01 5: Raspi_SIP[2577], 6. call_established : 1
2018.05.16 23:24:01 5: Raspi_SIP[2577], call->bye
2018.05.16 23:24:01 1: PERL WARNING: Use of uninitialized value in subroutine entry at /usr/share/perl5/Net/SIP/Endpoint/Context.pm line 80.                ----> DIESE Fehlermeldung kommt nicht immer
2018.05.16 23:24:01 1: PERL WARNING: Use of uninitialized value $uri in pattern match (m//) at /usr/share/perl5/Net/SIP/Endpoint/Context.pm line 180.  ----> DIESE Fehlermeldung kommt nicht immer
2018.05.16 23:24:01 5: Raspi_SIP[2577], RTP done : 0                                                                                                                                               ---> ohne Firewall erscheint hier "OK"
2018.05.16 23:24:01 5: Raspi_SIP[2577], Timeout  : 1
2018.05.16 23:24:01 5: Raspi_SIP[2577], while    : 0
2018.05.16 23:24:01 4: Raspi_SIP, CALLDone -> Raspi_SIP|1|timeout
2018.05.16 23:24:01 5: Raspi_SIP, fifo is empty
2018.05.16 23:24:01 5: Raspi_SIP, no elbc

Für Tipps bin ich sehr dankbar.

Grüße
Martin

   

Wzut

#608
Der default Port 5060 wird verwendet für den Verbindungsaufbau - das scheint bei dir OK zu sein.
Via UDP/RTP werden die Töne bzw. das Gespäch übertragen. Google mal nach RTP Ports , da findet man so einiges zu. Intressant ist das hier oft eine große Range verwendet wird ( 20 - 40 Ports) und das auf dynamischen Ports > 1024 - 65535. Ich habe jetzt mal auf die Schnelle im Net::SIP Paket gesucht und werde an einer Stelle fündig :
/usr/share/perl5/Net/SIP/Util.pm
Util.pm:our $RTP_MIN_PORT = 2000;
Util.pm:our $RTP_MAX_PORT = 12000;

Versuch doch mal our $RTP_MAX_PORT = 2019; und gib diese 20 Ports auf UDP in der Firewall frei.
Maintainer der Module: MAX, MPD, UbiquitiMP, UbiquitiOut, SIP, BEOK, readingsWatcher

Elgardo

PERFEKT!
Das war's. Bin von dem Modul und dem raschen Service begeistert.
Vielen Dank

YellowBall

Bei mir fehlt das reading DTMF trotz mehrfacher Resets und FHEM-Neustarts.
Die Anrufe werden in allen sip-listen Modi angenommen (WFP, DTMF,...)
Was kann ich noch tun?
Raspi 0,1,2,3,4 | HMUART | Broadlink | Harmony | Xiaomi | Milight | Homematic | Somfy | Sonos | Meross  | Sonoff  | Shelly | Comet DECT  | ioBroker

Wzut

#611
a. ein list von deinem SIP Device und b. ein Logauszug mit verbose 5 posten 
Edit : Ich setze natürlich vorraus das https://wiki.fhem.de/wiki/SIP-Client gelesen wurde !
Maintainer der Module: MAX, MPD, UbiquitiMP, UbiquitiOut, SIP, BEOK, readingsWatcher

SELVE-Elektronik-Entwicklung

Ich habe in letzter Zeit massive Probleme mit fhem Abstürzen. So ca. 10-15 mal täglich.

Dabei gibt es dann immer folgenden Eintrag im fhem.log

- SIP_Client[7150], can´t find my parent 7126 in process list !
- Died at ./FHEM/96_SIP.pm line 371.

Habe auch FHEM schon komplett neu aufgesetz auf einem neuen Raspi 3. Ohne Verbesserung.

Wo kann ich jetzt ansetzten. ? Liegt es überhaupt am SIP_Client Modul oder am meiner Fritz-Box ? (7560).

Hat jemand noch einen Tipp für mich ?

Gruß Markus aus Dortmund
Selve GmbH & Co.KG
Hardware-Entwicklung
58513 Lüdenscheid

plin

wir brauchen den üblichen Input


  • output von list <deinsipdevice> hier posten
  • Das SIP-Device auf verbose 5 setzen
  • Nach dem nächsten Absturz einen log-Auszug mit den letzten Zeilen vor dem Absturz posten
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

Zitat von: SELVE-Elektronik-Entwicklung am 29 Mai 2018, 18:13:14
Dabei gibt es dann immer folgenden Eintrag im fhem.log

- SIP_Client[7150], can´t find my parent 7126 in process list !
- Died at ./FHEM/96_SIP.pm line 371.
Die Meldungen sind nicht die Ursache deiner Abstürze sondern lediglich die Reaktion darauf.
Unter Linux  werden Kinder (Listen Prozess) ohne lebende Eltern (FHEM Hauptprozess) zu Zombies.
Um dies zu verhindern müssen die Kinder unbedingt auch sterben, genau das sagen die beiden Log Zeilen -> Eltern nicht gefunden und Kindchen Ruhe sanft.
D.h. du must deine Aufmerksamkeit unbedingt auf die Ereignisse unmittelbar davor lenken. 
Maintainer der Module: MAX, MPD, UbiquitiMP, UbiquitiOut, SIP, BEOK, readingsWatcher