Merkwürdiges Verhalten bei outgoing call

BillThür

Neuer User
Mitglied seit
29 Nov 2010
Beiträge
4
Punkte für Reaktionen
0
Punkte
0
Hallo liebe Foren-Gemeinde,

ich brüte gerade über einem merkwürdigen Problem bei meiner ersten Asterisk-Installation.
Es lief alles wunderbar, ich kann interne Anrufe und eingehende Anrufe wunderbar verarbeiten aber beim Raustelefonieren passiert etwas merkwürdiges.

Die Verbindung wird - laut Asterisk-Output - über meinen SIP-Provider (Netstream) aufgebaut. Allerdings steht die Verbindung sofort (ohne Klingeln) und ergibt einen hübschen Dauerton (Freizeichen, vermute ich).

Meine erste Vermutung war, dass Netstream so evtl. auf falsche Login-Daten reagiert. Allerdings hat das Auskommentieren der Logindaten in der sip.conf gezeigt, dass die Verbindung dann direkt abgelehnt wird. Ich kann mir aber keinen Reim machen, was da abgeht.

Hier meine sip.conf:
Code:
[general]

context=incoming
register => 05....:[email protected]

[netvoip]
type=peer
host=sip.netvoip.ch
fromuser=05......
secret=.....
username=05......
context=outgoing
dtmfmode=rfc2833
insecure=very
canreinvite=no
amaflags=default

[10]
type=friend
context=phones
host=dynamic
nat=yes
secret=....

Hier der outgoing-Context der extensions.conf:
Code:
[outgoing]
exten => _X.,1,Verbose(1|Outgoing call)
exten => _X.,n,Set(CALLERID(number)=05....)
exten => _X.,n,Set(CALLERID(name)=....)
exten => _X.,n,Dial(SIP/netvoip/${EXTEN})


Hier der Asterisk-Output beim Call:
Code:
  == Using SIP RTP CoS mark 5
    -- Executing [0049.....@phones:1] Verbose("SIP/10-00000027", "1|Outgoing call") in new stack
1|Outgoing call
    -- Executing [0049....@phones:2] Set("SIP/10-00000027", "CALLERID(number)=05.....") in new stack
    -- Executing [0049....@phones:3] Set("SIP/10-00000027", "CALLERID(name)=....") in new stack
    -- Executing [0049....@phones:4] Dial("SIP/10-00000027", "SIP/netvoip/0049....") in new stack
  == Using SIP RTP CoS mark 5
    -- Called netvoip/0049....
    -- SIP/netvoip-0000002a answered SIP/10-00000029
    -- Locally bridging SIP/10-00000029 and SIP/netvoip-0000002a

Hat jemand eine Idee, wie dieses seltsame Verhalten zustande kommt?

Besten Dank und liebe Grüße
BillThür
 
Zuletzt bearbeitet:
Probier mal so:
exten => _X.,n,Dial(SIP/${EXTEN}@netvoip)

Warum hast Du bei [netvoip] context=outgoing stehen? Sinnvoller wäre hier context=incoming (oder gar nichts, da in [general] definiert), da es hier um den Context für ankommende Gespräche über dieses Peer geht.
 
Hm, selbes Ergebnis :(

Und was mich jetzt gerade verwirrt:
Hab ich was missverstanden?
Ich ging davon aus, dass der "register" Ausdruck für Calls ist, die VON netvoip an Asterisk gehen (also incoming), während [netvoip] für Calls von lokalen Extensions an das externe Netz ist (outgoing)?
 
Das register sorgt dafür, dass Asterisk sich registriert. Für ankommende Gespräche ist aber trotzdem das Peer verantwortlich. Dort wird die Authentifizierung vorgenommen, meistens durch host und insecure, und dort wird auch der Context dem Host zugeordnet.

In Deiner Config dient das Peer zugleich als Definition des SIP-Proxy und Authentifizierung an selbigem für abgehende Gespräche.

Man könnte das aber auch trennen, und ein Peer für abgehende und eines für ankommende Gespräche anlegen. Das für abgehende braucht dann überhaupt keinen Context, das Gespräch kommt ja bereits aus dem Dialplan.

Der context im [general] gilt für alle Peers, die selbst keinen Eintrag haben. Mit dem register hat das erstmal nichts zu tun.

Hast Du nach der Änderung ein dialplan reload gemacht? Weil zumindest die CLI Ausgabe müsste sich dadurch geringfügig verändert haben.
 
Zum Context: Ah, ok.

Ja, sie hat sich auch geringfügig verändert:
Code:
  == Using SIP RTP CoS mark 5
    -- Executing [0049....@phones:1] Verbose("SIP/10-00000000", "1|Outgoing call") in new stack
1|Outgoing call
    -- Executing [0049....@phones:2] Set("SIP/10-00000000", "CALLERID(number)=05...") in new stack
    -- Executing [0049....@phones:3] Set("SIP/10-00000000", "CALLERID(name)=....") in new stack
    -- Executing [0049....@phones:4] Dial("SIP/10-00000000", "*SIP/0049....@netvoip*") in new stack
  == Using SIP RTP CoS mark 5
    *-- Called 0049....@netvoip*
    -- SIP/netvoip-00000001 answered SIP/10-00000000
    -- Locally bridging SIP/10-00000000 and SIP/netvoip-00000001
 
Hm, dann vielleicht mal beim Provider nachfragen. :noidea:
 
OK, besten Dank dennoch :D
Aber gut zu wissen, dass das kein so triviales Problem ist ;)
 

Zurzeit aktive Besucher

Statistik des Forums

Themen
246,284
Beiträge
2,249,438
Mitglieder
373,876
Neuestes Mitglied
ungworld
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.