Autor Thema: Modul 96_SIP  (Gelesen 86511 mal)

Offline DerTom

  • Full Member
  • ***
  • Beiträge: 112
Antw:Modul 96_SIP
« Antwort #780 am: 16 Januar 2019, 19:54:27 »
Nabend,

also alles bisher getestete hat super funktioniert, vielen Dank für die Weiterentwicklung des Moduls. Rausrufen mit Texten und / oder Files klappt wunderbar.

Nach den anfänglichen Schwierigkeiten mit dem Erkennen der DTMF-Töne läuft das ja nun auch stabil.

Wäre jemand mal so nett und könnte mal einen Beispielcode für die Auswertung eines DTMF Codes bereit stellen? Irgendwie finde ich nix und meine Versuche scheitern wohl an meinen Kenntnissen.

So ganz was einfaches:

Anruf kommt an, DTMF Code 56 wird übergeben --> Befehl 1 wird ausgeführt. Kommt ein anderer DTMF Code soll ein anderer Befehl ausgeführt werden.

Irgendwie bin ich zu blöd... :-[

Offline Wzut

  • Developer
  • Hero Member
  • ****
  • Beiträge: 2371
Antw:Modul 96_SIP
« Antwort #781 am: 16 Januar 2019, 20:16:19 »
TIPP : Eventmonitor öffenen , anrufen , Tasten drücken , den passenden Event im Monitor markieren und den Create/Modify Device Button drücken :)
Maintainer der Module: MPD, UbiquitiMP, UbiquitiOut, SIP, BEOK

Offline DerTom

  • Full Member
  • ***
  • Beiträge: 112
Antw:Modul 96_SIP
« Antwort #782 am: 18 Januar 2019, 18:31:52 »
Oder so. Vielen Dank, der Tipp hat geholfen. Damit kann ich was anfangen.

Offline MarkusLoch

  • New Member
  • *
  • Beiträge: 5
Antw:Modul 96_SIP
« Antwort #783 am: 21 Januar 2019, 21:15:25 »
Hallo zusammen,

erstmal vielen Dank für das tolle Modul! Mit Hilfe der Wiki habe ich es sehr schnell eingerichtet bekommen. Ich möchte SIP mit sipgate.de als Anbieter laufen lassen. Ich habe leider ein Problem dabei: Der Anruf funktioniert zwar zuverlässig, aber es dauert sehr lange, bis der Rufaufbau erfolgt. Es vergehen teilweise fast zwei Minuten, bis das Telefon auf der Gegenseite klingelt. Wenn ich sipgate mit einer VoIP-App benutze, dauert es nur wenige Sekunden. Im log zeigt sich gar nichts. Ist das normal? Oder gibt es irgendwie eine Möglichkeit wie ich rausfinden kann, woran es hängt?

Edit: Das zeigt der Eventmonitor wenn ich einen Anruf starte.
2019-01-21 21:16:54 SIP SIPGate call_state: invite
2019-01-21 21:16:54 SIP SIPGate call: 02xxxxxxxx
2019-01-21 21:17:12 SIP SIPGate calling
2019-01-21 21:17:40 SIP SIPGate call_state: calling 02xxxxxx
2019-01-21 21:18:10 SIP SIPGate call_state: established
Gruß,
Markus
« Letzte Änderung: 21 Januar 2019, 21:22:34 von MarkusLoch »

Offline Wzut

  • Developer
  • Hero Member
  • ****
  • Beiträge: 2371
Antw:Modul 96_SIP
« Antwort #784 am: 22 Januar 2019, 07:37:44 »
gleiche Antwort wie immer : list vom Device posten und ein Log Abschnitt vom Vorgang mit verbose 5
Maintainer der Module: MPD, UbiquitiMP, UbiquitiOut, SIP, BEOK

Offline MarkusLoch

  • New Member
  • *
  • Beiträge: 5
Antw:Modul 96_SIP
« Antwort #785 am: 22 Januar 2019, 16:27:46 »
Anbei die Informationen. Ich habe einen Call gemacht, diesen aber am Handy nicht angenommen, sondern weggedrückt. Diesmal hat es auch nur ca. eine Minute gedauert. Finde ich aber trotzdem ziemlich lang.

List von meinem SIP Device:

Internals:
   AC         /usr/bin/sox
   CFGFN     
   NAME       SIPGate
   NOTIFYDEV  TTS_device
   NR         268
   NTFY_ORDER 50-SIPGate
   STATE      initialized
   TYPE       SIP
   VERSION    V1.91 / 31.07.18
   READINGS:
     2019-01-22 16:10:23   call            done
     2019-01-22 16:10:23   call_attempt    0
     2019-01-22 16:10:23   call_state      canceled
     2019-01-22 16:10:23   call_success    0
     2019-01-22 16:10:23   call_time       0
     2019-01-21 21:41:52   caller          fetch
     2019-01-21 21:14:04   listen_alive    no
     2019-01-22 16:10:23   state           initialized
   helper:
     CALL_BYE   canceled
     CALL_ERROR 1
     CALL_NAME  unknown
     CALL_NR    01514xxxxxxx
     CALL_START 1548169761
     CALL_TIME  0
     CALL_TYPE  out
Attributes:
   T2S_Device TTS_device
   audio_converter sox
   history_file ./log/SIPGate.sip
   history_size 0
   room       Sicherheit
   sip_dtmf_loop once
   sip_dtmf_send audio
   sip_dtmf_size 2
   sip_elbc   yes
   sip_from   sip:2594xxxxx@sipgate.de
   sip_ip     192.168.0.101
   sip_listen none
   sip_port   5060
   sip_registrar sipgate.de
   sip_ringtime 3
   sip_user   2594xxxxx

Logfile Verbose 5:
2019.01.22 16:19:17 4: WEB_192.168.0.28_54315 POST /fhem&fw_id=1610&cmd=set+SIPGate+call+01514xxxxxxx; BUFLEN:0
2019.01.22 16:19:17 5: Cmd: >set SIPGate call 01514xxxxxxx<
2019.01.22 16:19:17 4: SIPGate, calling 01514xxxxxxx, ringtime: 30 , no message
2019.01.22 16:19:17 4: SIPGate, SIPGate|01514xxxxxxx|30||0
2019.01.22 16:19:17 4: BlockingCall (SIP_CALLStart): created child (23304), uses telnetForBlockingFn_1547801260 to connect back
2019.01.22 16:19:17 4: SIPGate, call -> SIPGate|01514xxxxxxx|30||0|0
2019.01.22 16:19:17 5: SIPGate, call has pid 23304
2019.01.22 16:19:17 5: Starting notify loop for SIPGate, 2 event(s), first is call_state: invite
2019.01.22 16:19:17 5: createNotifyHash
2019.01.22 16:19:17 4: SIPGate[23304], my parent is 10412
2019.01.22 16:19:17 4: SIPGate[23304], trying to use port 5070
2019.01.22 16:19:17 5: End notify loop for SIPGate
2019.01.22 16:19:35 4: SIPGate[23304], register new expire : 2019-01-22 16:29:35
2019.01.22 16:19:35 4: Connection accepted from telnetForBlockingFn_1547801260_127.0.0.1_56993
2019.01.22 16:19:35 5: Cmd: >{SIP_rSU('SIPGate','state;calling')}<
2019.01.22 16:19:35 5: SIPGate, readingS:state Val:calling
2019.01.22 16:19:35 5: Starting notify loop for SIPGate, 1 event(s), first is calling
2019.01.22 16:19:36 5: End notify loop for SIPGate
2019.01.22 16:19:54 4: SIPGate[23304], CallStart DTMF : ABCD*#123--4567890
2019.01.22 16:20:03 4: SIPGate[23304], calling : 01514xxxxxxx
2019.01.22 16:20:03 5: Cmd: >{SIP_rSU('SIPGate','call_state;calling 01514xxxxxxx')}<
2019.01.22 16:20:03 5: SIPGate, readingS:call_state Val:calling 01514xxxxxxx
2019.01.22 16:20:03 5: Starting notify loop for SIPGate, 1 event(s), first is call_state: calling 01514xxxxxxx
2019.01.22 16:20:03 5: createNotifyHash
2019.01.22 16:20:03 5: End notify loop for SIPGate
2019.01.22 16:20:18 4: SIPGate[23304], cb_final - status : FAIL - final : 486
2019.01.22 16:20:18 5: SIPGate[23304], 0. Ende des ersten Loops
2019.01.22 16:20:18 5: SIPGate[23304], 1. rtp_done : 0
2019.01.22 16:20:18 5: SIPGate[23304], 2. fi : 1
2019.01.22 16:20:18 5: SIPGate[23304], 3. Final   : 486
2019.01.22 16:20:18 5: SIPGate[23304], 4. timeout : 0
2019.01.22 16:20:18 5: SIPGate[23304], 6. call_established : 0
2019.01.22 16:20:18 5: SIPGate[23304], RTP done : 0
2019.01.22 16:20:18 5: SIPGate[23304], Timeout  : 0
2019.01.22 16:20:18 5: SIPGate[23304], Final    : 486
2019.01.22 16:20:18 5: SIPGate[23304], while    : 0
2019.01.22 16:20:18 4: SIPGate[23304], Calltime : 0
2019.01.22 16:20:18 5: Cmd: >{BlockingStart('60')}<
2019.01.22 16:20:18 5: Cmd: >{SIP_CALLDone('SIPGate|1|canceled|0')}<
2019.01.22 16:20:18 4: SIPGate, CALLDone -> SIPGate|1|canceled|0
2019.01.22 16:20:18 5: Starting notify loop for SIPGate, 6 event(s), first is call: done
2019.01.22 16:20:18 5: End notify loop for SIPGate
2019.01.22 16:20:18 5: SIPGate, fifo is empty
2019.01.22 16:20:18 5: SIPGate, no elbc
« Letzte Änderung: 22 Januar 2019, 16:29:17 von MarkusLoch »

Offline Wzut

  • Developer
  • Hero Member
  • ****
  • Beiträge: 2371
Antw:Modul 96_SIP
« Antwort #786 am: 22 Januar 2019, 16:51:37 »
mal als Schnellschuss, ersetze den sip_registrar sipgate.de mal gegen die echte IP  -> 217.10.79.9
sip_user und sip_from so lassen.
Maintainer der Module: MPD, UbiquitiMP, UbiquitiOut, SIP, BEOK
Gefällt mir Gefällt mir x 1 Liste anzeigen

Offline MarkusLoch

  • New Member
  • *
  • Beiträge: 5
Antw:Modul 96_SIP
« Antwort #787 am: 22 Januar 2019, 18:13:08 »
mal als Schnellschuss, ersetze den sip_registrar sipgate.de mal gegen die echte IP  -> 217.10.79.9
sip_user und sip_from so lassen.

Vielen Dank für den Tipp! Habe es geändert, jetzt dauert es nur noch ein paar Sekunden!  :)

Offline no_Legend

  • Hero Member
  • *****
  • Beiträge: 1098
Antw:Modul 96_SIP
« Antwort #788 am: 28 Januar 2019, 17:18:09 »
So ich hab dann noch mal getestet.
Ich bekomme es einfach nicht hin.
FHEM will per SIP nicht bei der Fritzbox anrufen.

Damit ich weiß ob es überhaupt mit meiner Netzwerk Config funktioniert, habe ich extra einen DoorPi noch mal aufgesetzt.
Hier geht es ohne Probleme.
Mit den gleichen Einstellungen. User Passwort usw.
Soweit ich weiß nimmt Doorpi Linphone, hier auch mal die config von DoorPi.
Weiter unten dann auch noch die aktuelle Config und das LOG von fhem.

Jemand noch eine Idee?
Braucht das Modul / FHEM als User rechte auf ein bestimmtes Programm?

[SIP-Phone]
firewallpolicy = PolicyNoFirewall
audio_codecs = PCMA,PCMU
call_timeout = 30
capture_device = ALSA: USB PnP Sound Device
dialtone = !BASEPATH!/media/ShortDialTone.wav
dialtone_renew_every_start = False
dialtone_volume = 35
echo_cancellation_enabled = False
identity = DoorPi
local_port = 5060
max_call_time = 120
playback_device = ALSA: USB PnP Sound Device
record_while_dialing = False
records = !BASEPATH!/records/%Y-%m-%d_%H-%M-%S.wav
sipphonetyp = linphone
sipserver_password = xyzs1212
sipserver_realm = 192.168.178.1
sipserver_server = 192.168.178.1
sipserver_username = devdoorpi
stun_server =
ua.max_calls = 2
video_codecs = VP8
video_device = StaticImage: Static picture
video_display_enabled = False
video_size = vga

Internals:
   FUUID      5c483e55-f33f-abd1-feae-433b0a209ec077c0
   NAME       sip.fb1.doorpi
   NOTIFYDEV  global
   NR         1082
   NTFY_ORDER 50-sip.fb1.doorpi
   STATE      initialized
   TYPE       SIP
   VERSION    V1.91 / 31.07.18
   Helper:
     DBLOG:
       call:
         DBLog:
           TIME       1548692083.12628
           VALUE      done
       call_attempt:
         DBLog:
           TIME       1548692083.12628
           VALUE      0
       call_state:
         DBLog:
           TIME       1548692083.12628
           VALUE      fail
       call_success:
         DBLog:
           TIME       1548692083.12628
           VALUE      0
       call_time:
         DBLog:
           TIME       1548692083.12628
           VALUE      0
       last_error:
         DBLog:
           TIME       1548692083.12628
           VALUE      CallRegister
       state:
         DBLog:
           TIME       1548692083.12628
           VALUE      initialized
   READINGS:
     2019-01-28 17:14:43   call            done
     2019-01-28 17:14:43   call_attempt    0
     2019-01-28 17:14:43   call_state      fail
     2019-01-28 17:14:43   call_success    0
     2019-01-28 17:14:43   call_time       0
     2019-01-28 17:14:43   last_error      CallRegister: Failed with error 110
     2019-01-28 15:46:48   listen_alive    no
     2019-01-28 17:14:43   state           initialized
   helper:
     CALL_BYE   CallRegister: Failed with error 110
     CALL_ERROR 0
     CALL_NAME  unknown
     CALL_NR    **611
     CALL_START 1548692019.11327
     CALL_TIME  0
     CALL_TYPE  out
Attributes:
   history_file ./log/sip.fb1.doorpi.sip
   history_size 0
   room       9.98_Test
   sip_dtmf_loop once
   sip_dtmf_send audio
   sip_dtmf_size 2
   sip_elbc   yes
   sip_from   sip:devdoorpi@192.168.178.1
   sip_ip     192.168.1.11
   sip_listen none
   sip_registrar 192.168.178.1
   sip_ringtime 3
   sip_user   devdoorpi
   verbose    5


Log Auszug
2019.01.28 17:14:43 5: sip.fb1.doorpi, no elbc
2019.01.28 17:14:43 5: sip.fb1.doorpi, fifo is empty
2019.01.28 17:14:43 4: sip.fb1.doorpi, CALLDone -> sip.fb1.doorpi|0|CallRegister: Failed with error 110|0
2019.01.28 17:14:16 1: PERL WARNING: Use of uninitialized value in subtraction (-) at ./FHEM/73_AutoShuttersControl.pm line 2220.
2019.01.28 17:13:39 4: sip.fb1.doorpi[7484], using Leg.pm to find a free port
2019.01.28 17:13:39 4: sip.fb1.doorpi[7484], my parent is 1629
2019.01.28 17:13:39 5: sip.fb1.doorpi, call has pid 7484
2019.01.28 17:13:39 4: sip.fb1.doorpi, call -> sip.fb1.doorpi|**611|20||0|0
2019.01.28 17:13:39 4: sip.fb1.doorpi, sip.fb1.doorpi|**611|20||0
2019.01.28 17:13:39 4: sip.fb1.doorpi, calling **611, ringtime: 20 , no message
IntelNUC mit Ubuntu mit FHEM immer aktuell,2x HMLAN, CUL443, CUL868 -homekit/siri -tablet ui -homebridge
Device, diverse:
HM-SEC-KEY,HM-LC-BL1-FM,HM-SEC-SD,HM-Sen-DB-PCB,HM-Sec-RHS,HM-Sec-SC-2,HM-WDS10-TH-O,Harmony,Netamo, 433MHz Steckdosen uvm.

Offline Wzut

  • Developer
  • Hero Member
  • ****
  • Beiträge: 2371
Antw:Modul 96_SIP
« Antwort #789 am: 28 Januar 2019, 17:39:47 »
dein FHEM ist einem anderen Subnetz als die FB ?
Wie sind die Netze verbunden bzw. ist die FHEM IP eine NAT IP ? 
Edit : ich sehe gerade wir hatten dein Thema auf Seite 50 schon eimal , damals bist du die Antwort schuldig geblieben wie der Aufbau deines doppelten NATs auschaut und ob die FB unter 192.168.178.1 direkt mit der 192.168.1.11 reden kann.
« Letzte Änderung: 28 Januar 2019, 17:51:56 von Wzut »
Maintainer der Module: MPD, UbiquitiMP, UbiquitiOut, SIP, BEOK

Offline plin

  • Developer
  • Full Member
  • ****
  • Beiträge: 369
Antw:Modul 96_SIP
« Antwort #790 am: 28 Januar 2019, 18:04:28 »
Edit : ich sehe gerade wir hatten dein Thema auf Seite 50 schon eimal , damals bist du die Antwort schuldig geblieben wie der Aufbau deines doppelten NATs auschaut und ob die FB unter 192.168.178.1 direkt mit der 192.168.1.11 reden kann.
tja, und für mich war es der Anlass ein wenig zu basteln. Lade Dir bitte mal das angehängte Script runter und führe
chmod a+x SIP_checksettings.pl
./SIP_checksettings.pl sip.fb1.doorpi
aus. Der Output sollte uns mehr Aufschluss geben. Ist ein Jungfernlauf im unbekannten Umfeld, kann also auch  in die Hose gehen  ;D

Offline Mikka

  • Jr. Member
  • **
  • Beiträge: 65
Antw:Modul 96_SIP
« Antwort #791 am: 28 Januar 2019, 20:39:48 »
Hallo no_Legend,


Die FB und das interen Netz haben andere IP Bereiche.
Das ist leider dem Doppelten NAT geschultet, da mir KabelBW hier nichts liefern will als reines Modem und ich eine OPNsense wegen VPN usw. am laufen habe.
Die OPNSense lässt alle Ports durch.

...

kannst du mal bitte in deiner OPNsense mal folgendes tun:
OPNsense -> Firewall -> Log Files -> Live View

und unter filter die IP-Adresse deiner FritzBox und einmal die IP-Adresse des FHEM-Servers eingeben und die entsprechenden Logs während des SIP-call (am besten rufst du aus FHEM dein Handy an...) aufzeichnen bzw. ein Screenshot erstellen?

Viele Grüße
Mikka

Offline no_Legend

  • Hero Member
  • *****
  • Beiträge: 1098
Antw:Modul 96_SIP
« Antwort #792 am: 28 Januar 2019, 21:06:34 »
tja, und für mich war es der Anlass ein wenig zu basteln. Lade Dir bitte mal das angehängte Script runter und führe
chmod a+x SIP_checksettings.pl
./SIP_checksettings.pl sip.fb1.doorpi
aus. Der Output sollte uns mehr Aufschluss geben. Ist ein Jungfernlauf im unbekannten Umfeld, kann also auch  in die Hose gehen  ;D

Danke ich weiß eure Arbeit echt zu Schätzen.
Bin leider nicht vor heute dazu gekommen.

sudo ./SIP_checksettings.pl sip.fb1.doorpi
Hole Device-Attribute für 'sip.fb1.doorpi' von FHEM

Prüfe alle erforderlichen Attribute
--------------------------------------------------------------------------------

Prüfe einige gesetzte Attribute
sip_audiofile_dtmf: File - existiert nicht!
sip_audiofile_dtmf: File - existiert nicht!
--------------------------------------------------------------------------------

Prüfe lokale IP-Adresse 192.168.1.11
Use of uninitialized value in subroutine entry at ./SIP_checksettings.pl line 276.
Bad arg length for Socket::inet_ntoa, length is 0, should be 4 at ./SIP_checksettings.pl line 276.

Hallo no_Legend,

kannst du mal bitte in deiner OPNsense mal folgendes tun:
OPNsense -> Firewall -> Log Files -> Live View

und unter filter die IP-Adresse deiner FritzBox und einmal die IP-Adresse des FHEM-Servers eingeben und die entsprechenden Logs während des SIP-call (am besten rufst du aus FHEM dein Handy an...) aufzeichnen bzw. ein Screenshot erstellen?

Viele Grüße
Mikka

Hallo Mikka,

wenn ich nach der IP von FHEM Filter kommt garnichts raus.
Wenn ich aber nach der IP Filter von der Fritzbox sehe ich dass der Traffic auf Port 5060 abgelehnt wird.
Er klären kann ich das nicht.
Ich habe den Bogon nd Privat filter auf dem WAN deaktiviert.
Anbei Zwei Screenshots.

Aber warum geht es dann mit DoorPi?

Gruß Robert
IntelNUC mit Ubuntu mit FHEM immer aktuell,2x HMLAN, CUL443, CUL868 -homekit/siri -tablet ui -homebridge
Device, diverse:
HM-SEC-KEY,HM-LC-BL1-FM,HM-SEC-SD,HM-Sen-DB-PCB,HM-Sec-RHS,HM-Sec-SC-2,HM-WDS10-TH-O,Harmony,Netamo, 433MHz Steckdosen uvm.

Offline Mikka

  • Jr. Member
  • **
  • Beiträge: 65
Antw:Modul 96_SIP
« Antwort #793 am: 28 Januar 2019, 21:24:31 »

Hallo Mikka,

wenn ich nach der IP von FHEM Filter kommt garnichts raus.
Wenn ich aber nach der IP Filter von der Fritzbox sehe ich dass der Traffic auf Port 5060 abgelehnt wird.
Er klären kann ich das nicht.
Ich habe den Bogon nd Privat filter auf dem WAN deaktiviert.
Anbei Zwei Screenshots.

Aber warum geht es dann mit DoorPi?

Gruß Robert

192.168.178.20 ist die WAN-IP deiner OPNsense oder?

Die FritzBox baut eine Verbindung Richtung FHEM auf. Wieso das so ist evtl. Wzut beantworten.

Wenn ich einen mit dem Programm Telefon auf einem Mac aus dem gleichen Netz über die FritzBox mein Handy anrufen, baut die FritzBox keine Verbindung Richtung Mac/Telefon auf.

Geh mal unter OPNsense auf:
Firewall -> NAT -> Port Forward und erstelle die neue Regel wie im Screenshot. FHEM kannst du durch "Single host or Network" und die IP erstzen. Oder unter Firewall -> Aliases einen entsprechenden FHEM-host anlegen ;-)

Mikka
« Letzte Änderung: 28 Januar 2019, 21:32:47 von Mikka »

Offline no_Legend

  • Hero Member
  • *****
  • Beiträge: 1098
Antw:Modul 96_SIP
« Antwort #794 am: 28 Januar 2019, 21:28:57 »
192.168.178.20 ist die WAN-IP deiner OPNsense oder?

Die FritzBox baut eine Verbindung Richtung FHEM auf. Wieso das so ist evtl. Wzut beantworten.

Wenn ich einen mit dem Programm Telefon auf einem Mac aus dem gleichen Netz über die FritzBox mein Handy anrufen, baut die FritzBox keine Verbindung Richtung Mac/Telefon auf.

Geh mal unter OPNsense auf:
Firewall -> NAT -> Port Forward und erstelle die neue Regel wie im Screenshot. FHEM kannst du durch "Single host or Network" und die IP erstzen. Oder unter Firewall -> Aliases einen entsprechenden FHEM-host anlegen ;-)

Mikka

Komm ich heute nicht mehr dazu.
Welche App zum telefonieren vom mac aus nutz du?

Gruß Robert


Gesendet von iPhone mit Tapatalk Pro
IntelNUC mit Ubuntu mit FHEM immer aktuell,2x HMLAN, CUL443, CUL868 -homekit/siri -tablet ui -homebridge
Device, diverse:
HM-SEC-KEY,HM-LC-BL1-FM,HM-SEC-SD,HM-Sen-DB-PCB,HM-Sec-RHS,HM-Sec-SC-2,HM-WDS10-TH-O,Harmony,Netamo, 433MHz Steckdosen uvm.