Anrufe nur Intern

fowe

Neuer User
Mitglied seit
18 Aug 2005
Beiträge
102
Punkte für Reaktionen
0
Punkte
0
Hallo,

ich habe hier einen *1.2.9.1-BRIstuffed-0.3.0-PRE-1r in der DMZ stehen.

Daran sind ausschliesslich SIP-Telefone angeschlossen. In's "Feste" geht's über ne FRITZ PCI Karte.
Funktieniert alles tadellos.
Nun hab ich hier ein WLAN fähiges Handy bekommen das ich natürlich auch über unser internes Wlan an den * ranhängen möchte.
Anmeldung und auch interne Anrufe klappen schonmal's.
Jedoch anrufe nach draussen funktionieren (noch) nicht...

Code:
asterisk*CLI>
    -- Registered SIP '20' at 192.168.100.40 port 59319 expires 3600
    -- Saved useragent "Nokia RM-313 V 30.0.019" for peer 20
    -- Executing Set("SIP/20-dfd4", "LANGUAGE()=de") in new stack
Dec 19 16:15:29 WARNING[13873]: pbx.c:2416 __ast_pbx_run: Timeout, but no rule 't' in context 'outgoing'
    -- Executing Hangup("SIP/20-dfd4", "") in new stack
  == Spawn extension (outgoing, h, 1) exited non-zero on 'SIP/20-dfd4'
asterisk*CLI>

die extensions.conf
Code:
[outgoing]
[20]
;;; Phone 20 ;;;
; Outgoing calls over SIP
exten => _*1.,1,Set(LANGUAGE()=de)
exten => _*1./20,2,Ringing()
exten => _*1./20,3,Set(CALLERID(number)=111231212)
exten => _*1./111231212,4,Set(CALLERID(name)=fokia)
exten => _*1./111231212,5,Dial(SIP/${areaCode}${EXTEN:2}@netvoip,120,TW)
exten => _*1./111231212,6,Goto(dialStates,${DIALSTATUS},1)


; Outgoing calls over CAPI
exten => _x.,1,Set(LANGUAGE()=de)
exten => _x./20,2,Set(CALLERID(number)=1231212)
exten => _x./1231212,3,Set(CALLERID(name)=)
exten => _x./1231212,4,Dial(CAPI/contr1/${EXTEN}/b,120,TW)
exten => _x./1231212,5,Goto(dialStates,${DIALSTATUS},1)

sip.conf

Code:
[20]
type=friend
username=20
secret=2020
host=dynamic
reinvite=no
canreinvite=no
qualify=3000
dtmfmode=auto
disallow=all
allow=ulaw
nat=yes
subscribecontext=BLF_Group_1
context=outgoing

hat jemand nen tipp ?
 
Zuletzt bearbeitet:
Ja,

das hier

Code:
[outgoing]
[20]

dürfte schuld sein. Du definierst einen Kontext outgoing, der leer ist, weil gleich in der nächsten Zeile ein Kontext 20 beginnt. Das war von Dir sicher nicht so intendiert? (gemäß Deiner sip.conf... "context=outgoing"...)

Vorschlag: Wenn Du einen speziellen Outgoing-Kontext für das Phone 20 haben möchtest, dann erstelle ihn unter dem Namen "outgoing-20" o.ä.
 
ich hatte im obigen Post was vergessen einzutragen ...

Code:
[outgoing]

include => 18
include => 19
include => 20

schnipp -----
[20]
; Outgoing calls over CAPI
exten => _x.,1,Set(LANGUAGE()=de)
exten => _x./20,2,Set(CALLERID(number)=1231212)
exten => _x./1231212,3,Set(CALLERID(name)=)
exten => _x./1231212,4,Dial(CAPI/contr1/${EXTEN}/b,120,TW)
exten => _x./1231212,5,Goto(dialStates,${DIALSTATUS},1)

mittlerweille geht auch das "raustelefonieren" ;-)

Ich kann das Handy nun auch über 3G anmelden und von diesem interne Nummern anrufen
Code:
asterisk*CLI>
    -- Executing Set("SIP/20-f1dc", "_ALERT_INFO=;info=ring3") in new stack
    -- Executing Dial("SIP/20-f1dc", "SIP/11") in new stack
    -- Called 11
    -- SIP/11-d108 is ringing
... jedoch vom internen Netz(grün) auf's Handy (rot) 20 geht nicht.
Die port's hab ich durchgereicht.

intern nach "draussen" ...

Code:
asterisk*CLI>
    -- Executing Set("SIP/11-5c0f", "_ALERT_INFO=;info=ring3") in new stack
    -- Executing Dial("SIP/11-5c0f", "SIP/20") in new stack
Dec 20 14:26:17 NOTICE[24737]: app_dial.c:1059 dial_exec_full: Unable to create channel of type 'SIP' (cause 3 - No route to destination)
  == Everyone is busy/congested at this time (1:0/0/1)
    -- Executing Set("SIP/11-5c0f", "CALLERID(number)=11") in new stack
    -- Executing Dial("SIP/11-5c0f", "SIP/20|120") in new stack
Dec 20 14:26:17 NOTICE[24737]: app_dial.c:1059 dial_exec_full: Unable to create channel of type 'SIP' (cause 3 - No route to destination)
  == Everyone is busy/congested at this time (1:0/0/1)
    -- Executing Goto("SIP/11-5c0f", "incoming|20-CHANUNAVAIL|1") in new stack
    -- Goto (incoming,20-CHANUNAVAIL,1)
    -- Executing Set("SIP/11-5c0f", "LANGUAGE()=de") in new stack
    -- Executing Set("SIP/11-5c0f", "CALLERID(number)=1231212") in new stack
    -- Executing Set("SIP/11-5c0f", "CALLERID(name)=") in new stack
    -- Executing Dial("SIP/11-5c0f", "CAPI/contr1/20-CHANUNAVAIL/b|120|TW") in new stack
    -- Called contr1/20-CHANUNAVAIL/b
  == Everyone is busy/congested at this time (1:0/0/1)
    -- Executing Goto("SIP/11-5c0f", "dialStates|CHANUNAVAIL|1") in new stack
    -- Goto (dialStates,CHANUNAVAIL,1)
    -- Executing Set("SIP/11-5c0f", "LANGUAGE()=de") in new stack
    -- Executing Congestion("SIP/11-5c0f", "") in new stack
  == Spawn extension (dialStates, CHANUNAVAIL, 2) exited non-zero on 'SIP/11-5c0f'
asterisk*CLI>
 
ich hatte im obigen Post was vergessen einzutragen ...

Code:
Dec 20 14:26:17 NOTICE[24737]: app_dial.c:1059 dial_exec_full: Unable to create channel of type 'SIP' (cause 3 - No route to destination)
  == Everyone is busy/congested at this time (1:0/0/1)


Okay, das klingt jetzt so ähnlich wie in vielen anderen Threads. Klingt nämlich so, als sei SIP/20 gar nicht ordentlich registriert im Moment des Anrufversuchs. Hast Du schon mit "sip show peers" geschaut?
 
Code:
Name/username              Host            Dyn Nat ACL Port     Status
30/30                      192.168.100.4    D   N      1141     OK (6 ms)
19/19                      192.168.100.190  D   N      4716     OK (8 ms)
20/20                      xxx.xx.131.1     D   N      14156    OK (452 ms)
21/21                      192.168.12.21    D   N      5060     OK (27 ms)

manchmal aber auch

Code:
Name/username              Host            Dyn Nat ACL Port     Status
30/30                      192.168.100.4    D   N      1141     OK (12 ms)
19/19                      192.168.100.190  D   N      4716     OK (6 ms)
20/20                      xxx.xx.131.1     D   N      14534    UNREACHABLE
21/21                      192.168.12.21    D   N      5060     OK (29 ms)

vom Handy komm ich jedoch immer nach intern durch ...??

von intern
Code:
asterisk*CLI>
    -- Executing Set("SIP/11-dcf7", "_ALERT_INFO=;info=ring3") in new stack
    -- Executing Dial("SIP/11-dcf7", "SIP/20") in new stack
    -- Called 20
dann passiert gar nix ... bis ich wieder auflege :
Code:
 == Spawn extension (outgoing, 20, 2) exited non-zero on 'SIP/19-23cb'
    -- Executing Hangup("SIP/19-23cb", "") in new stack
  == Spawn extension (outgoing, h, 1) exited non-zero on 'SIP/19-23cb'
    -- Got SIP response 481 "Call/Transaction Does Not Exist" back from 192.168.100.20
 
Zuletzt bearbeitet:
Wenn der Dial-Befehl durchgeht, dann gab es zumindest schonmal eine gültige Registrierung, das stimmt. Offensichtlich kommen aber keine Antworten mehr vom SIP/20 zurück (z.B. Ringing-Meldungen). Das klingt nach schnell wechselnden dynamischen Portfiltern, NAT-Problemen o.ä.

zumal Du ja zitierst, dass öfters mal "UNREACHABLE" auftaucht. Schau mal zu, ob Du seitens des Telefons irgendwelche KeepAlive-Optionen einstellen kannst, die NAT und Co. bei Laune halten... :)

Aah, was mir noch auffällt: Der Ping von über 450msec. kommt mir aber auch ungewöhnlich hoch vor!!
 
Code:
Schau mal zu, ob Du seitens des Telefons irgendwelche KeepAlive-Optionen einstellen kannst
gibt es bei diesem Nokia (N82) leider nicht ... :-(
Code:
Aah, was mir noch auffällt: Der Ping von über 450msec. kommt mir aber auch ungewöhnlich hoch vor!!
ich werde es mal von einem "externen" WLAN versuchen dies sollte wahrscheinlich bessere Werte wie 3G ergeben ...
 
Es lag am Nokia-internen Voip-client. ( scheint mit * ein Problem zu haben ... )

Ich habe mir ne andere Software installiert ,nun funktionert es tadellos ! 3G wie auch Wlan :)
 

Statistik des Forums

Themen
246,382
Beiträge
2,251,164
Mitglieder
374,041
Neuestes Mitglied
Baffalo
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.