FreePBX - Phonesuite verliert verbindung

l1243

Neuer User
Mitglied seit
24 Jan 2022
Beiträge
18
Punkte für Reaktionen
0
Punkte
1
Guten Tag zusammen,

ich verwende aktuell eine FreePBX mit dem PhoneSuite Softphone als Client. Seit kurzem verliert jedoch das Softphone immer wieder die Verbindung zur PBX.

Die beiden Geräte hängen im gleichen Subnetz, können sich also direkt erreichen. Zudem verliert sich die Verbindung immer zu den konfigurierten Register Intervallen.

Jemand ne Idee in welche Richtung ich da schauen kann?

Danke euch.
 
Wenn die Verbindung immer zu den "konfigurierten Register Intervallen" abbricht, dann hast du da einen falschen Wert eingetragen.
Was steht denn da z.Z. drin?
 
Aktuell sind im Client 3 Minuten hinterlegt. Dann baut sich diese nach 3 Minuten nicht mehr auf.
Hinterlege ich 6 Minuten baut sich diese nach 6 nicht mehr auf
 
Was passiert, wenn du 1 oder 2 Minuten einträgst?
 
@Joe_57 das minimum ist leider 3 Minuten. Darunter geht im Client nichts
 
Kann auch sein, dass das Telefon es erst dann merkt, aber schon vorher was schief war.
  1. Gleiches Subnetz bedeutet, in den Soft-Clients ist kein Hostname oder öffentliche IP-Adresse sondern eine private IP-Adresse als Registrar/Proxy/Domain hinterlegt. Richtig?
  2. Sind die Soft-Clients per TLS, TCP oder UDP angebunden?
  3. Auf welchem Host-System (Betriebssystem) läuft der FreePBX?
in welche Richtung […] schauen
Du solltest den SIP-Verkehr mitschneiden, erstmal die REGISTER. Ist schon merkwürdig, dass der Soft-Client es dann nicht schafft. Entweder schickt der Soft-Client kein re-REGISTER, weil die Zeitspanne ihm zu kurz ist. Oder FreePBX hat irgendeine Firewall, die dann das re-REGISTER gar nicht durchlässt.
 
Du solltest den SIP-Verkehr mitschneiden, erstmal die REGISTER. Ist schon merkwürdig, dass der Soft-Client es dann nicht schafft. Entweder schickt der Soft-Client kein re-REGISTER, weil die Zeitspanne ihm zu kurz ist. Oder FreePBX hat irgendeine Firewall, die dann das re-REGISTER gar nicht durchlässt.

Ich schneide aktuell den verkehr auf dem Client per Wireshark mit. Dabei wird genau bis zum Rerigster Intervall verschiedene SIP Pakete gesendet.
Sobald das Regestrierungsintervall abgelaufen ist, kommen erstmal keine REGISTER Pakete mehr, UDP Keepalive Pakete kommen aber weiterhin.
Nach einiger Zeit ist der CLient auf wieder regestriert.
Genutzt wird aktuell UDP und die PBX ist als lokale IP-Adresse angegeben, kein TLS.

Scheint also als würde sich dort das verlieren der Regestrierung mit dem neu regestrieren überschneiden und somit dauert es dann etwas, bis der Client wieder da ist.
Versuche nun mal ein paar Intervall Werte durch.
 
Zuletzt bearbeitet:
Bitte nicht. Die Intervalle (SIP-Header „Expires“ bzw. Parameter „expires“ im SIP-Header Contact, mehr dazu in RFC 3665) werden dynamisch ausgehandelt. Das macht FreePBX eigentlich ganz gut. Weil Du keine Firewall dazwischen hast, könntest Du auf der FreePBX sogar mehrere Wochen einstellen. Ganz nebenbei: chan_sip oder chan_pjsip?
Nach einiger Zeit ist der Client auf wieder registriert.
Durch was genau?
erstmal keine REGISTER
Dein Client kann vor dem Ablauf bereits ein REGISTER gesendet, um die Verbindung erneut zu registrieren. Viele Clients machen das bei der Hälfte des Expires. Manche eine bestimmte Zeitspanne davor.
 
Nochmal von vorne. Irgendwie ist das alles gerade nicht Zielführend was ich hier so teste :)
Daher nochmal Client neu installiert und neues Profil eingerichtet.

Mein SIP Client ist so konfiguriert wie auf dem Bild zu sehen. Dadurch bleibt er auch 3 Minuten in der Anlage registriert, ein und ausgehende Anrufe laufen.
Im Wireshark bekomme ich da folgende Infos:

- Alle 15 Sekunden wird ein UDP Paket and die PBX gesendet
- Nach 3 von diesen Paketen kommt von der PBX an den Client ein "Request: Options", der Client schickt darauf hin ein "Status 200 OK".
- nach ca 3 Minuten kommt kein Request mehr, es werden nur noch die UDP Pakete an die PBX gesendet. Somit sendet der Client ja kein Reregister oder?
In dem Moment taucht der Client auch nicht mehr als Endpunkt in der PBX auf.
- Eine Minute später wird vom Client ein "Request REGISTER" gesendet. Der Client taucht in der PBX als registriert auf, reagiert aber nicht auf eingehende Anrufe. Nach ein paar Sekunden ist der Client aber wieder weg.
- Nun nur noch UDP Pakete im 15 Sekunden Abstand, bis sich der Client nach 3 Minuten erneut registriert und auch wieder erreichbar ist. Das ganze beginnt von vorne
 

Anhänge

  • SIP Settings.png
    SIP Settings.png
    7.3 KB · Aufrufe: 7
Zuletzt bearbeitet:
Es wird immer kurioser...

Jetzt steht der Client auf 6 Minuten und es läuft auf einmal.
Ich vermute es hängt damit zusammen, dass aktuell die SIP App auf meinem Smartphone geschlossen ist, sobald ich diese wieder öffne (dann 3 Geräte angemeldet Tischtelefon, SIP Client, Smarthpone App) ist der SIP Client auf dem PC wieder verloren.
Lasse ich die App geschlossen läuft mein SIP Client problemlos und es werden regelmäßig neue regestrierungen ausgehandelt.

Jemand ne Idee warum das so ist? In der PBX sind bei "max contacts" bereits 10 hinterlegt.

Update: Scheint aber mit der App zusammenzuhängen. Kann auf mehreren Windows PCs ein Softphone starten und alle 5 bleiben aktiv, bis ich die Smartphone App starte...

-- Zusammenführung Doppelpost gemäß Boardregeln by stoney

Bei der Softphone App handelt es sich um Groundwire (Android12).
Habe mir dessen SIP Pakete nun mal angeschaut und festgestellt, dass diese anders sind.

1. Es wird ein Wert "rinstance" gesendet
2. Im SIP Header gibt es "p-hint: Background"

Die beiden Dinge sind bei den Tischtelefonen oder Softphone nicht zu finden
 
Zuletzt bearbeitet von einem Moderator:
Alle 15 Sekunden wird ein UDP Paket and die PBX gesendet
Diese Pakete heißen Keep-Alive und dienen dazu eine Firewall „wach“ zu halten. Ideal wäre, Du könntest das irgendwie abschalten. Was passiert, wenn Du das „Keep-Alive Intervall“ leer lässt? Was passiert, wenn Du „0“ einträgst?

Kannst Du mal verlinken, wo ich diesen „PhoneSuite Softphone“ erhalten kann? Und wenn mehrere Varianten der Software existieren, welche Variante hast Du genau?
Nach 3 von diesen Paketen kommt von der PBX an den Client ein "Request: Options", der Client schickt darauf hin ein "Status 200 OK".
Das kannst Du abschalten, weil Du keine Firewall hast. Das ist ebenfalls ein Keep-Alive. Nur auf eine andere Art. Aber wieder mit dem selben Ziel: Eine Firewall „wach“ zu halten. In Digium Asterisk wäre das qualify_frequency = 0 in einem AOR. Wo das wieder in Sangoma FreePBX versteckt ist, keine Ahnung.
nach ca 3 Minuten kommt kein Request mehr, es werden nur noch die UDP Pakete an die PBX gesendet. Somit sendet der Client ja kein Reregister oder?
Hier läuft irgendwas schief. Was zu untersuchen gilt, denn das könnte viele andere Nutzer von „Sangoma FreePBX“ oder „PhoneSuite Softphone“ betreffen.

Während dem ersten REGISTER wird beim Contact eine Expiry ausgehandelt (letzte OK-Nachricht, angehängt als Parameter). Innerhalb dieses Zeit-Spanne muss sich Dein „PhoneSuite Softphone“ erneut registrieren. Diese Zeit-Spanne kannst Du in FreePBX einstellen – aber was zeigt den Protokoll-Mitschnitt?
Register Intervall: 3 Minuten
Normalerweise ist das viel länger, manchmal zwei Stunden, eine Stunde, halbe Stunde. Ganz selten auf 10 Minuten. Egal, wir sollten es jetzt erstmal so lassen, um dem eigentlichen Fehler auf die Schliche zu kommen. Waren diese 3 Minuten die Voreinstellung „PhoneSuite Softphone“?
Jemand ne Idee warum das so ist?
Klingt nach einem üblen Software-Bug in Digium Asterisk. Wenn alle Soft-Clients registriert sind, was zeigt Sangoma FreePBX im Status genau an? Wilde Spekulation: Die einzelnen Registrierungen werden nicht sauber unterschieden. Oder andere wilde Spekulation: Durch die unterschiedlichen re-REGISTER Zeitspannen führen dazu, dass wer durcheinander kommt.
 
https://www.phonesuite.de/de/download.htm
Dort findet sich der Download. Ich nutze die aktuelle "Professional" Version 3.1.008.


Die Keepalives konnte ich auf 0 setzen. Es werden aber weiterhin die UDP Pakete alle paar Sekunden gesendet. Die Request Options tauchen weiterhin auf
Mit den Standard vom CLient vorgegebenen 6 Minuten klappt es nun, solange ich die Smartphone App deaktiviert lasse (Groundwire).

Im Screenshot einmal ein Protokoll mitschnitt auf dem Client PC, geht los mit dem starten des Clients.
Und einmal die Ansicht wie der Client in der PBX auftaucht .138 ist dabei das SIP Softphone, .149 mein Tischtelefon.

PBX Übersicht.png ## Trace.png

-- Zusammenführung Doppelpost gemäß Boardregeln by stoney

Habe das Softphone in vielen anderen Umgebungen am laufen. Läuft super, nachdem ein paar Fehler mit dem Entwickler ausgebessert wurden.

Hier scheint das Problem ehr an der Groundwire App zu liegen...
 
Zuletzt bearbeitet von einem Moderator:
Die Keepalives konnte ich auf 0 setzen. Es werden aber weiterhin die UDP Pakete alle paar Sekunden gesendet.
Das sollest Du deren Entwickler mal melden. Wenn man das Feld leer oder auf Null setzt, sollte das aus sein. Gibt nämlich auch Telefon-Anlagen, die giftig auf solche Pakete reagieren … bzw. Du brauchst in Deinem Aufbau diesen Overhead ja gar nicht.
Die Request Options tauchen weiterhin auf
Die kommen ja von Sangoma FreePBX. Entsprechend musst Du es dort ausschalten. Klappt das?
Hier scheint das Problem ehr an der Groundwire App zu liegen.
Ich vermute eher Digium Asterisk … aber was wir noch schauen könnten: Kannst Du alle kompletten SIP-REGISTER mal mitschneiden. Kann nämlich sein, dass Acrobits Groundwire alle anderen Registrierungen versucht zu löschen. Aber selbst wenn dem so wäre, dann passiert das nur einmal, also am Start von Acrobits Groundwire. Das müsste sich dann nach einmal 6 Minuten wieder einrenken.
Und einmal die Ansicht wie der Client in der PBX auftaucht .138 ist dabei das SIP Softphone, .149 mein Tischtelefon.
Ich bräuchte die Ansicht, wenn beide Client verbunden sind und auch noch Acrobits Groundwire. Ganz nebenbei: Welches Tisch-Telefon ist das?
 
Zuletzt bearbeitet:
@l1243
Wenn ich das richtig verstanden habe, buchst Du auf ein Konto (= eine interne asterisk Rufnummer) mehrere Clients.

Das würde ich so nicht lösen im Zusammenhang mit FreePBX.
Warum? FreePBX bietet Dir frei Haus und gratis die beiden Features "Ring group" (Klingelgruppe) und "Follow me" (Folge mir). Beide Features sind ziemlich ähnlich - sie bieten die Möglichkeit, einen eingehenden Call auf n getrennte Devices zu routen (mit einstellbarer Klingelstrategie). Du kannst an dieser Stelle sogar beliebige externe Devices einbinden. Im Falle von Follow me kann das Ganze sogar dynamisch von UCP aus gesteuert werden durch den User (wenn Du ihn berechtigst).

Was würde das für Dich bedeuten? Einfach für jedes Device einen eigenen Account anlegen und Du solltest Dein Problem gelöst haben und es ist sichergestellt, dass nicht ein Client die anderen durch ungeeignetes Verhalten "raushauen" kann. Falls Dein Problem dann immer noch auftauchen sollte, ist es klar auf ein einziges Device eingegrenzt und die anderen funktionieren unabhängig davon und ist damit auch viel leichter zu debuggen.
 
@gehtdoch das ist für mich keine Lösung. Aber danke dir für den Vorschlag

Ich brauche auf mehreren Geräten halt die gleiche Durchwahl.
Möchte mich jemand auf meiner internen Durchwahl erreichen (211), und ich bin nicht am Platz, klingelt mein Smartphone.
Bin ich am Platz und PC ist aus, gehe ich am Tischtelefon dran, sonst am Softphone.

Die Funktion in der PBX ist ja da nur die Groundwire App scheint da was zu zerschießen.
 
Ich bräuchte die Ansicht, wenn beide Clients verbunden sind und auch noch Acrobits Groundwire.
Ganz nebenbei: Welches Tisch-Telefon ist das genau (Hersteller, Modell, Firmware)?
 
Zuletzt bearbeitet:
Ich brauche auf mehreren Geräten halt die gleiche Durchwahl.
Möchte mich jemand auf meiner internen Durchwahl erreichen (211), und ich bin nicht am Platz, klingelt mein Smartphone.
Tja, das ist ja gerade der Vorteil der SIP-Telefonie: Die Devices (die irgendwie via SIP zu erreichen sind) haben absolut nichts mit der Nummer zu tun, die einer wählt. Das ist die Klingelgruppe (kannst Dir auch als virtuelle Nummer vorstellen). Gib der die Nummer 211. Dann klingeln alle Telefone, die in der Gruppe sind - selbst Dein Handy, wenn Du es mit aufnimmst. Über die Inbound-Route kommst Du über eine beliebige externe Nummer an die Gruppe ebenso wie von intern, wenn einer einfach die 211 wählt.
 
Vollzitat gemäß Boardregeln entfernt by stoney
Die Daten gebe ich am Montag rüber wo ich wieder im Büro bin.
Aktuell würde ich mich per VPN einwählen, wo die Situation wieder eine andere wäre

-- Zusammenführung Doppelpost gemäß Boardregeln by stoney

Vollzitat gemäß Boardregeln entfernt by stoney
Dann werden doch internet Gespräche mit der Telefon eigenen Durchwahl und nicht die der Rufgruppe signalisiert?
Oder kann ich in der PBX da getrennte Signalisierungen hinterlegen?

Aber wie auch immer. So funktioniert es ja jetzt, was ich auch in anderen Umgebungen problemlos laufen habe.

Danke dir trotzdem für den Input
 
Zuletzt bearbeitet von einem Moderator:
Ich bräuchte die Ansicht, wenn beide Clients verbunden sind und auch noch Acrobits Groundwire.
Ganz nebenbei: Welches Tisch-Telefon ist das genau (Hersteller, Modell, Firmware)?
Hallo,

sorry für die späte Antowrt. Bisher kam aber immer was dazwischen oder es ist in Vergessenheit geraten.
Anbei ist einmal die Übersicht wenn Groundwire, PhoneSuite und das Grandstream GXV3370 verbunden sind (pjsip show aors).

Hoffe das ist der gewünschte Auszug:
192.168.120.138 (Phonesuite)
172.16.2.6 (Groundwire App)
192.168.120.149 (Grandstream)

Wenn nur Grandstream und Phonesuite verbunden sind, sieht die Übersicht genau so aus, nur eben ohne den obersten Punkt.
 

Anhänge

  • Screenshot 2022-03-14 084400.png
    Screenshot 2022-03-14 084400.png
    6.6 KB · Aufrufe: 5
Holen Sie sich 3CX - völlig kostenlos!
Verbinden Sie Ihr Team und Ihre Kunden Telefonie Livechat Videokonferenzen

Gehostet oder selbst-verwaltet. Für bis zu 10 Nutzer dauerhaft kostenlos. Keine Kreditkartendetails erforderlich. Ohne Risiko testen.

3CX
Für diese E-Mail-Adresse besteht bereits ein 3CX-Konto. Sie werden zum Kundenportal weitergeleitet, wo Sie sich anmelden oder Ihr Passwort zurücksetzen können, falls Sie dieses vergessen haben.