[Problem] Ring Group auf FreePBX - Raspberry Pi zeigt seltsames Verhalten bei externen Nummern

snap68

Neuer User
Mitglied seit
29 Mai 2013
Beiträge
5
Punkte für Reaktionen
0
Punkte
0
Guten Tag liebe IP-Phone Gemeinde

Auf der Basis eines Raspberry Pi - Boards möchte ich gerne eine PBX mit ISDN-Anbindung realisieren.
Ein fertiges Image findet man hier:

http://www.raspberry-asterisk.org

Für die ISDN-Anbindung setze ich einen Patton SmartNode 4120 ein. (Für 1 ISDN-Anschluss)


Die Konfiguration des SN4120 ist momentan wie folgt:

Code:
#----------------------------------------------------------------#
#                                                                #
# SN4120/1BIS2V                                                  #
# R6.3 2013-03-07 H323 SIP                                       #
# 2013-05-29T23:06:40                                            #
# SN/xxxxxxxxxxxxxx                                              #
# Generated configuration file                                   #
#                                                                #
#----------------------------------------------------------------#

cli version 3.20
clock local default-offset +02:00
webserver port 80 language en
sntp-client
sntp-client server primary 129.132.2.21 port 123 version 4
system hostname patton-SN4120

system

  ic voice 0

system
  clock-source 1 bri 0 0

profile ppp default

profile call-progress-tone CH_Dialtone
  play 1 1000 425 0

profile call-progress-tone CH_Releasetone
  play 1 500 425 -7
  pause 2 250

profile tone-set default
  map call-progress-tone dial-tone CH_Dialtone
  map call-progress-tone ringback-tone CH_Alertingtone
  map call-progress-tone busy-tone CH_Busytone
  map call-progress-tone release-tone CH_Releasetone
  map call-progress-tone congestion-tone CH_Congestiontone

profile voip default
  codec 1 g711alaw64k rx-length 20 tx-length 20
  codec 2 g711ulaw64k rx-length 20 tx-length 20
  response-preferred-codec g711alaw64k

profile pstn default

profile sip default
  no autonomous-transitioning

profile aaa default
  method 1 local
  method 2 none

context ip router

  interface eth0
    ipaddress dhcp
    tcp adjust-mss rx mtu
    tcp adjust-mss tx mtu

context cs switch
  national-prefix 0
  international-prefix 00

  routing-table called-e164 RT_OUT
    route .% dest-service SER_HG_ISDN speech

  routing-table called-e164 RT_IN
    route .%T3 dest-interface IF_PBX

  mapping-table itc to itc speech
    map default to speech

  interface isdn IF_ISDN0
    route call dest-table RT_IN
    aoc-s automatic
    aoc-d automatic
    aoc-e automatic
    isdn-date-time
    inband-info accept force call-setup call-proceeding

  interface sip IF_PBX
    bind context sip-gateway GW_PBX
    route call dest-table RT_OUT
    remote 192.168.1.130
    early-connect
    aoc-d accept
    aoc-e accept
    aoc-format xml

  service hunt-group SER_HG_ISDN
    drop-cause normal-unspecified
    drop-cause no-circuit-channel-available
    drop-cause network-out-of-order
    drop-cause temporary-failure
    drop-cause switching-equipment-congestion
    drop-cause access-info-discarded
    drop-cause circuit-channel-not-available
    drop-cause resources-unavailable
    route call 1 dest-interface IF_ISDN0

context cs switch
  no shutdown

authentication-service AS_PBX
  username 10001 password geheim encrypted

location-service LS_PBX
  domain 1 192.168.1.130 5060

  identity 10001

    authentication outbound
      authenticate 1 authentication-service AS_PBX username 10001

    registration outbound
      registrar 192.168.1.130 5060
      register auto

context sip-gateway GW_PBX

  interface IF_PBX
    bind interface eth0 context router port 5060

context sip-gateway GW_PBX
  bind location-service LS_PBX
  no shutdown

port ethernet 0 0
  medium auto
  encapsulation ip
  bind interface eth0 router
  no shutdown

port bri 0 0
  clock auto
  encapsulation q921

  q921
    permanent-layer2
    uni-side auto
    encapsulation q931

    q931
      protocol dss1
      uni-side user
      bchan-number-order ascending
      encapsulation cc-isdn
      bind interface IF_ISDN0 switch

port bri 0 0
  no shutdown


Auf dem Raspberr Pi - Board habe ich dann den Trunk wie folgt eingebunden:

Code:
Outgoing Settings

Trunk Name: 10001
 
PEER Details:
 
host=dynamic
username=10001
secret=geheim
type=friend
dtmfmode=rfc2833
defaultip=192.168.1.131
insecure=port,invite


Incomig Settings 
und
Registrations

keine Einträge


Danach wurde eine Incoming Route definiert, bei welcher keine "DID Number" definiert ist.
Bei der Section "Set Destination" ganz unten wurde dann
"Terminate Call" auf "Busy" gesetzt.

Dies habe ich so gemacht, damit freePBX nicht auf alle MSN's des Anschlusses reagiert und eine
Ansage bringt. (Weiss nicht genau, ob das so richtig ist, oder nicht)

Natürlich habe ich dann noch eine weitere Route für die gewünschte eingehende Nummer (DID) gemacht und in eine "Ring Group"
geleitet. In dieser "Ring Group" habe ich zwei interne Nummern (201,202) eingetragen. Das funktioniert auch bereits schon gut so.
Nun wollte ich eben auch noch eine 'externe' Handy-Nummer eintragen und dann fangen meine Probleme an.
Die Handynummer wurde wie folgt eingetragen:

0779863717#

Wenn man nun von extern anruft, klingeln die internen SIP - Extensions nur ganz kurz und dann klingelt gleich das externe Handy.
Es scheint so, dass der Anruf gleich schon auf das Handy übergeben wurde. (Denn es klingelt auch leicht anders)
Wenn Jetzt der externe Anrufer auflegt, stoppt das klingeln des Handy's leider nicht.
Es klingelt weiter, bis schliesslich der Anruf von der netzseitigen Mailbox des Mobilfunkanbieters angenommen wird.

Eigentlich möchte ich bloss, dass das Handy neben den beiden internen Nebenstellen (201,202) gleichwertig mitklingelt
und wer dann am schnellsten abhebt, hat den Anruf.


Muss gestehen, dass ich nicht sehr erfahren mit Asterisk oder freePBX bin.
Schon die Konfiguration des Patton SN4120 war nicht ganz ohne und könnte noch immer mit Fehlern behaftet sein.

Leider finde ich bei freePBX auch keine .conf Dateien, die sonst üblicherweise unter /etc/asterisk zu finden sind.
Kann mir dazu ev. noch jemand Hinweise geben, wo diese Dateien sind?


Vielleicht entdeckt einer der Profis hier meinen Fehler.
Wäre sehr dankbar, wenn sich auf diesem Wege eine Lösung abzeichnen würde.

Danke für Eure Expertise.


Beste Grüsse

Snap68
 
Zuletzt bearbeitet:
Es ist wichtig, dass die Ring Time in Free PBX lang genug ausgewählt wird.

Also wenn alle drei Telefone klingeln sollen, dann wähle bitte 60 für Ring Time aus. Trage bitte zuerst die internen Nummern und dann die externe Nummer ein.

Den Rest kannst du ignorieren und bei "Destination if no answer" eine interne Nummer angeben. Jetzt prüfe bitte ob alles funktioniert. Sollte noch ein Problem bestehen, so schreibe mir bitte kurz. Danke.
 
Du könntest mal wagen, den Anruf im CLI mit verbose 2 oder 3 zu verfolgen. Da kommt bei GUI-made Dialplänen zwar ziemlich viel, aber vielleicht kann man was erkennen. Meine Vermutung: die Umleitung zum Handy wird über einen Local Channel aufgebaut, und diesen sieht Asterisk aus irgendeinem Grund als beantwortet an.

Es könnte theoretisch was mit dem Smartnode zu tun haben. Wenn ein Rufaufbau auf das ISDN Interface zurück geroutet wird, macht das Smartnode evtl. ein Call-Deflect. Halte ich im Zusammenhang mit FreePBX aber eher für unwahrscheinlich.

FreePBX erzeugt statische Dialpläne, es gibt also neben den üblichen Confs auch eine extensions.conf, frag mich aber bitte nicht wo. Die sind aber sowieso so übersichtlich wie der Stadtverkehr in Peking.
 
Danke für die Hinweise

Der Fehler lag letzendlich in der Patton - Config.

Code:
  interface sip IF_PBX
    bind context sip-gateway GW_PBX
    route call dest-table RT_OUT
    remote 192.168.1.130
    aoc-d accept
    aoc-e accept
    aoc-format xml

Habe dort "early-connect" rausgenommen und nun funktioniert es.
Dieses "early-connect" hatte ich drin, damit ich die Netzansagen "z.B. Diese Rufnummer ist ungültig" erhalte
und nicht die ASTERISK Dame.
Wie ich nun feststellen musste reicht aber dafür eigentlich schon
"inband-info accept force call-setup call-proceeding".

Damit klappt es nun in einer Ring-Group auch das Handy mitklingeln zu lassen.

Nun wollte ich noch das Weiterverbinden am (externen) Handy testen.
Dazu kann man ja mit *2 wieder den Summton holen und eine interne Nummer anwählen.
Das klappt auch und ich kann mit der Nebenstelle sprechen.
Doch habe ich es bis jetzt noch nicht geschafft, den externen Anruf dann auch an die Nebenstelle zu übergeben.
Wenn ich am Handy mit ## den Summton hole, kann ich den Anruf direkt übergeben, ohne vorher mit der Nebenstelle zu sprechen.

Weiss jemand, mit welcher Eingabe die Übergabe gemacht werden sollte?


Danke für jegliche Hinweise.

Beste Grüsse

snap68
 
Zuletzt bearbeitet:

Zurzeit aktive Besucher

Statistik des Forums

Themen
246,201
Beiträge
2,247,951
Mitglieder
373,765
Neuestes Mitglied
walterronald99
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.