.titleBar { margin-bottom: 5px!important; }

sip_reg_timeout: Registration for 'xxxx@sip.1und1.d

Dieses Thema im Forum "Asterisk Allgemein" wurde erstellt von megamike, 10 Dez. 2004.

  1. megamike

    megamike Neuer User

    Registriert seit:
    9 Dez. 2004
    Beiträge:
    6
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    hi @all,

    tolles & hilfreiches forum resepkt !

    nun zur sache, habe eine hfc config card 0 NT und card 1 TE, Asterisk 1.0.2-BRIstuffed-0.2.0-RC2b, auf einen rh7.3 derivat (www.contribs.org). die config files sind fast zu 100% von: allesOK

    sip provider ist 1und1 / 1&1 / einsundeins (für die suchfunktion)


    ich habe nun zwei probleme:

    1. sip funtioniert nicht; xxx NOTICE[8200]: chan_sip.c:4070 sip_reg_timeout: Registration for '4976xxxx@sip.1und1.de' timed out, trying again

    sip debug liefert folgendes:
    Code:
    Dec 10 22:46:06 NOTICE[8200]: chan_sip.c:4070 sip_reg_timeout: Registration for '4976xxxx3@sip.1und1.de' timed out, trying again
    11 headers, 0 lines
    Reliably Transmitting:
    REGISTER sip:sip.1und1.de SIP/2.0
    Via: SIP/2.0/UDP 192.168.150.10:5060;branch=z9hG4bK77c15469
    From: <sip:4976xxxxxx@sip.1und1.de>;tag=as7c30e270
    To: <sip:4976xxxxx@sip.1und1.de>
    Call-ID: 79e2a9e37545e146515f007c5bd062c2@192.168.150.254
    CSeq: 190 REGISTER
    User-Agent: Asterisk PBX
    Expires: 120
    Contact: <sip:myMSN@192.168.150.10>
    Event: registration
    Content-Length: 0
    
     (no NAT) to 212.227.15.194:5060
    gatekeeper*CLI>
    
    Sip read:
    SIP/2.0 479 Please don't use private IP addresses
    Via: SIP/2.0/UDP 192.168.150.10:5060;branch=z9hG4bK77c15469;received=80.139.88.194
    From: <sip:4976xxxx@sip.1und1.de>;tag=as7c30e270
    To: <sip:4976xxxx@sip.1und1.de>;tag=32e930bf0f1ed484d4a78699f4ad7c11.8575
    Call-ID: 79e2a9e37545e146515f007c5bd062c2@192.168.150.254
    CSeq: 190 REGISTER
    Server: Sip EXpress router (0.8.14 (i386/linux))
    Content-Length: 0
    
    
    8 headers, 0 lines
    Destroying call '79e2a9e37545e146515f007c5bd062c2@192.168.150.254'
    
    
    sip show peers gibt folgendes:
    Code:
    Name/username    Host            Dyn Nat ACL Mask             Port     Status
    sipgate13/4976  212.227.15.194       N      255.255.255.255  5060     OK (89 ms)
    
    2. wie kann ich mit dieser allesOK config interne gespräche führen ?


    hier noch die config files
    /etc/zaptel.conf
    Code:
    loadzone=nl
    defaultzone=nl
    
    span=1,1,3,ccs,ami
    bchan=1-2
    dchan=3
    
    span=2,1,3,ccs,ami
    bchan=4-5
    dchan=6
    
    zapata.conf
    Code:
    [channels]
    ;NT-Card external s0
    switchtype = euroisdn
    signalling = bri_net_ptmp
    pridialplan = local
    prilocaldialplan = local
    echocancel = yes
    overlapdial = no
    echocancelwhenbridged=no
    echotraining=no
    immediate = no
    usecallerid = yes
    group = 1
    context = isdn2out
    channel => 1-2
    usecallingpres=yes
    nationalprefix = 0
    internationalprefix = 00
    
    ;TE-Card to NTBA
    switchtype = euroisdn
    signalling = bri_cpe_ptmp
    pridialplan = local
    prilocaldialplan = local
    echocancel = yes
    echocancelwhenbridged=no
    echotraining=no
    usecallerid = yes
    overlapdial = no
    immediate = no
    group = 2
    context = tcom-in
    channel => 4-5
    
    extensions.conf von

    allesOK mit global replace auf 11111 und 22222 auf meine msn.

    ja und dann türlich die fu*ing sip.conf
    Code:
    [general]
    language=de
    context=voip-in
    port=5060
    bindaddr=0.0.0.0
    disallow=all
    allow=ulaw
    allow=alaw
    allow=gsm
    localnet = 198.168.150.0/255.255.255.0
    externip = name.homeip.net
    register => 4976xxxxx:passs@sip.1und1.de/myMSN
    
    [sipgate13]
    type=friend
    username=4976xmyMSN
    secret=pass
    host=sip.1und1.de
    fromuser=4976xmyMSN
    fromdomain=sip.1und1.de
    qualify=yes
    nat=yes
    canreinvite=no
    insecure=very
    
    wäre super wenn die experten respektive allesOK mir einen hint geben könnten.

    grüssle
    mm
     
  2. Netview

    Netview IPPF-Promi

    Registriert seit:
    1 Apr. 2004
    Beiträge:
    3,366
    Zustimmungen:
    0
    Punkte für Erfolge:
    36
    Beruf:
    Dipl.-Inf.
    Ort:
    Westerwald
    Die Meldung erhälst du weil du 'qualify=yes' gesetzt hast und asterisk ständig pollt (default: zwei Sekunden) ob der sip-server noch da ist.
    Ich würde 'qualify=no' setzen oder einen höheren Wert als 2 Sekunden einstellen!

    syntax:

    qualify=xxx|no|yes

    where XXX is the number of milliseconds used. If yes the default timeout is used, 2 seconds.

    If you turn on qualify in the configuration of a SIP device in sip.conf, Asterisk will send a SIP OPTIONS command regularly to check that the device is still online. If the device does not answer within the configured (or default) period (in ms) Asterisk considers the device off-line for future calls.

    This feature may also be used to keep a UDP session open to a device that is located behind a network address translator (NAT). By sending the OPTIONS request, the UDP port binding in the NAT (on the outside address of the NAT/firewall device) is maintained by sending traffic through it. If the binding were to expire, there would be no way for Asterisk to initiate a call to the SIP device. This can be used in conjunction with the nat=yes setting.
     
  3. megamike

    megamike Neuer User

    Registriert seit:
    9 Dez. 2004
    Beiträge:
    6
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    habe nun qualify=no gesetzt - aber ohne erfolg. möglicherweise habe ich mich nicht präzise genug ausgedrückt, ich bekomme überhaupt keine sip connections weder inbound noch outbound.

    Hier noch ein debug log:

    Code:
    Dec 11 00:56:52 WARNING[29716]: ast_expr.y:474 ast_yyerror: ast_yyerror(): syntax error: parse error; Input:
     = -intl
    
       ^
    Dec 11 00:56:52 WARNING[29716]: chan_sip.c:1386 create_addr: No such host:
    Destroying call '7c1477df243657d17df0928453e2cd66@192.168.150.254'
    Dec 11 00:56:52 NOTICE[29716]: app_dial.c:756 dial_exec: Unable to create channel of type 'SIP'
    Dec 11 00:56:54 NOTICE[8200]: chan_sip.c:4070 sip_reg_timeout: Registration for '4976xxx@sip.1und1.de' timed out, trying again
    
    stimmt da was mit den *.conf files nicht, oder was hat es mit
    auf sich.

    hat jemand die files von allesOK erfolgreich am laufen

    dankeschöndasistabernett
     
  4. Netview

    Netview IPPF-Promi

    Registriert seit:
    1 Apr. 2004
    Beiträge:
    3,366
    Zustimmungen:
    0
    Punkte für Erfolge:
    36
    Beruf:
    Dipl.-Inf.
    Ort:
    Westerwald
    Du hast in der extensions.conf noch einen Fehler - vermutlich hier:

    exten => s,4,GotoIf($[${ARG3:-5} = -intl]?5:6)

    Alles richtig geschrieben?
     
  5. megamike

    megamike Neuer User

    Registriert seit:
    9 Dez. 2004
    Beiträge:
    6
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    also ich schaffs net ...

    mein log zeigt nu das folgende, ich kann keinen fehler finden bekomme aber weder inbound noch outbound eine sip verbindung hin.

    Code:
    == CDR updated on Zap/2-1
        -- Executing Wait("Zap/2-1", "0.1") in new stack
        -- Executing DigitTimeout("Zap/2-1", "2") in new stack
        -- Set Digit Timeout to 2
        -- Executing SetLanguage("Zap/2-1", "de") in new stack
        -- Executing Macro("Zap/2-1", "user") in new stack
    Dec 13 18:55:42 WARNING[25619]: app_macro.c:90 macro_exec: No such context 'macro-user' for macro 'user'
        -- Executing Goto("Zap/2-1", "callout|2*2427|1") in new stack
        -- Goto (callout,2*2427,1)
        -- Executing SetVar("Zap/2-1", "CALLMACRO2USE=callwithsip") in new stack
        -- Executing SetVar("Zap/2-1", "SIP2USE=") in new stack
        -- Executing Macro("Zap/2-1", "numbers|2427") in new stack
        -- Executing GotoIf("Zap/2-1", "0?2:5") in new stack
        -- Goto (macro-numbers,s,5)
        -- Executing GotoIf("Zap/2-1", "0?6:9") in new stack
        -- Goto (macro-numbers,s,9)
        -- Executing SetVar("Zap/2-1", "EWL=XXXX2427") in new stack
        -- Executing SetVar("Zap/2-1", "INTL=+49XXXX2427") in new stack
        -- Executing NoOp("Zap/2-1", "") in new stack
        -- Executing Goto("Zap/2-1", "line-preselection|XXXX2427|1") in new stack
        -- Goto (line-preselection,XXXX2427,1)
        -- Executing Macro("Zap/2-1", "cbc|01019") in new stack
        -- Executing SetVar("Zap/2-1", "CBC=01019") in new stack
        -- Executing Macro("Zap/2-1", "callwithsip|||") in new stack
        -- Executing SetCIDNum("Zap/2-1", "") in new stack
        -- Executing SetCIDName("Zap/2-1", "") in new stack
        -- Executing SetVar("Zap/2-1", "NUMBER2DIAL=XXXX2427") in new stack
        -- Executing Hangup("Zap/2-1", "") in new stack
      == Spawn extension (macro-cbc, s, 3) exited non-zero on 'Zap/2-1' in macro 'cbc'
      == Spawn extension (line-preselection, XXXX2427, 1) exited non-zero on 'Zap/2-1'
        -- Executing NoOp("Zap/2-1", "") in new stack
        -- Hungup 'Zap/2-1'
    
    ich habe keine sip endgeräte sondern lediglich normale isdn geräte, an der weiter oben beschriebenen config hängen.

    es würde mir für einen ersten schritt schon reichen wenn ich eine minimal config am laufen hätte damit ich das problem eingrenzen kann.

    hilfe ist willkommen

    danke!
     
  6. Netview

    Netview IPPF-Promi

    Registriert seit:
    1 Apr. 2004
    Beiträge:
    3,366
    Zustimmungen:
    0
    Punkte für Erfolge:
    36
    Beruf:
    Dipl.-Inf.
    Ort:
    Westerwald
    Also wichtig wäre ja mal deine 'extensions.conf' zu sehen und nicht die, die du kopiert bzw. als Vorlage verwendet hast (manchmal schleichen sich ja auch Tippfehler ein :roll: )
     
  7. megamike

    megamike Neuer User

    Registriert seit:
    9 Dez. 2004
    Beiträge:
    6
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    okay hier die sip.conf

    Code:
    [general]
    language=de
    context=voip-in                ; Context to be used in extensions
    port=5060                       ; Port to bind to
    bindaddr=192.168.150.254        ; Address to bind SIP channel to
    
    ;srvlookup=yes                  ; Enable DNS SRV lookups on outbound calls
    ;pedantic=yes                   ; Enable slow, pedantic checking for Pingtel
    ;tos=lowdelay                   ; IP QoS parameter, either keyword or value
    maxexpirey=3600                ; Max length of incoming registration we allow
    defaultexpirey=120             ; Dflt length of incoming/outoing registration
    defaultexpirey=160
    notifymimetype=text/plain      ; Allow overriding of mime type in NOTIFY
    ;videosupport=yes               ; Turn on support for SIP video
    
    disallow=all                    ; Disallow all codecs
    allow=ulaw
    allow=alaw
    allow=gsm
    
    localnet = 198.168.150.0/255.255.255.0
    externip = nn.nnn.nn.nnn
    
    ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
    ; SIP Accounts ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
    ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
    
    register => 49XXXX9129813:myPass@sip.1und1.de/9129813
    
    [einsundeins]
    type=friend
    username=49XXXX9129813
    secret=myPass
    host=sip.1und1.de
    fromuser=49XXXX9129813
    fromdomain=sip.1und1.de
    qualify=yes
    nat=yes
    canreinvite=no
    insecure=very
    
    
    und meine extensions.conf

    Code:
    
    ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
    ; from http://www.ip-phone-forum.de/forum/viewtopic.php?p=27089#27089
    ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
    
    
    [general]
    static=yes
    writeprotect=no
    
    [globals]
    VOIPMSN=Zap/g1		; VOIPMSN ist die NT-Karte f³r die Isdn-Telefone/TK
    TCOM=Zap/g2		; TCOM ist die TE-Karte zum NTBA
    
    [default]
    include => sip2out	; Sip2out wird spõter verwendet um ein "Amtsgesprõch" 
    			; von einem Sip-Telefon aus zu f³hren
    
    
    ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
    ; Als nõchsten definiere ich Benuzter-Macro. Diese setzen diverse Variablen: 
    ; MYNAME -> Eigener Name, 
    ; MYMSN  -> eigene MSN, 
    ; Sip-User falls ein anruf reinkommt, 
    ; bevorzugtes call-Macro (VOIP oder PSTN) und diverse Sip-Accounts. 
    ; Die Endung -intl wird spõter noch wichtig
    ;
    [macro-user942622]
    exten => s,1,SetVar(MYNAME=MSN942622)
    exten => s,2,SetVar(MYMSN=942622)
    exten => s,3,SetVar(MYSIPGROUP=SIP/22)
    exten => s,4,SetVar(MYCALLMACRO=callwithsip)
    exten => s,5,SetVar(MYNUMSIP=1)
    exten => s,6,SetVar(MYSIP1=einsundeins)
    
    [macro-user9129813]
    exten => s,1,SetVar(MYNAME=MSN9129813)
    exten => s,2,SetVar(MYMSN=13)
    exten => s,3,SetVar(MYSIPGROUP=SIP/13)
    exten => s,4,SetVar(MYCALLMACRO=callwithsip)
    exten => s,5,SetVar(MYNUMSIP=1)
    exten => s,6,SetVar(MYSIP1=einsundeins)
    
    [macro-user9129816]
    exten => s,1,SetVar(MYNAME=MSN9129816)
    exten => s,2,SetVar(MYMSN=9129816)
    exten => s,3,SetVar(MYSIPGROUP=SIP/16)
    exten => s,4,SetVar(MYCALLMACRO=callwithpstn)
    exten => s,5,SetVar(MYNUMSIP=1)
    exten => s,6,SetVar(MYSIP1=einsundeins)
    
    ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
    ; Hier wurden die zwei Call-Macros definiert. Zuerst wird festgelegt mit welcher 
    ; Absender-Kennung. Dann ausgewõhlt welche Nummer (evtl. ist ein CbC-Anbieter 
    ; eingetragen, oder aber die Nummer muss im internationalen Format vorliegen? 
    ; Nõmlich genau dann, wenn ein Sip-Account auf -intl endet. 
    ;
    ; Diverse Variablen werden erst spõter gesetzt. Falls ein CbC oder Sip-Anbieter 
    ; congested ist, wird auf PSTN zur³ckgefallen. 
    
    
    ; outgoing calls
    
    [macro-callwithpstn]
    ;ARG1 = calleridnum
    ;ARG2 = calleridname
    exten => s,1,SetCIDNum(${ARG1})
    exten => s,2,SetCIDName(${ARG2})
    exten => s,3,Dial(${TCOM}/${CBC}${EWL},60,Ttr)
    exten => s,104,GotoIf($[${DIALSTATUS} = CONGESTION]?109:110)
    exten => s,105,Dial(${TCOM}/${EWL},60,Ttr)
    exten => s,106,Playtones(busy);
    exten => s,107,Busy
    
    [macro-callwithsip]
    ;ARG1 = calleridnum
    ;ARG2 = calleridname
    ;ARG3 = sipprovider
    
    ;exten => s,1,SetCIDNum(${ARG1})
    ;exten => s,2,SetCIDName(${ARG2})
    exten => s,3,SetVar(NUMBER2DIAL=${EWL})
    ;exten => s,4,GotoIf($[${ARG3:-5} = -intl]?5:6)
    exten => s,5,SetVar(NUMBER2DIAL=${INTL})
    exten => s,6,Dial(SIP/${NUMBER2DIAL}@${ARG3},60,Ttr)
    exten => s,107,GotoIf($[${DIALSTATUS} = CONGESTION]?108:109)
    exten => s,108,Macro(callwithpstn,${ARG1},${ARG2})
    exten => s,109,Playtones(busy);
    exten => s,110,Busy
    
    
    ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
    ; Wenn spõter (weiter unten) ein Nummer gewõhlt wurde, wird jetzt getestet, 
    ; ob diese verboten ist (forbidden). Dann wird ein entsprechende Macro gestartet. 
    ; Oder aber, ob es ein Notruf ist (110, 112, 19222). Dann geht das Gesprõch auf 
    ; jeden Fall ³ber die Telekom. Oder ob diese Wahlregel ³ber VOIP oder ISDN geroutet 
    ; werden soll. Zum Beispiel werden alle Anrufe an die Uni Saarland ³ber einen 
    ; Uni-Saarland Sipaccount geroutet, oder alle 0800er Nummern immer ³ber ISDN. 
    ; 
    ; Achso: Wenn jemand selbst einen Call-by-Call Anbieter mitwõhlt (010x), dann geht 
    ; das Gesprõch auch ³ber ISDN raus, da die Sip-Provider mit 010x nichts anfangen k÷nnen. 
    ; 
    ; Achso: Im Grunde hat die Fritzboxfon auch dieses Verhalten. Aber hier kann man noch 
    ; so witzige Sachen machen, wir nummern umschreiben, zum Beispiel weil ein Sip-Provider 
    ; keine ENUM-Aufl÷sung macht, man selbst aber einen entsprechende SipgateNummer 
    ; des Anzurufenden kennt. 
    
    [macro-notallowed]
    exten => s,1,Answer
    exten => s,2,Wait(0.5)
    exten => s,3,Playback(ss-noservice)
    exten => s,4,Hangup
    
    [forbidden]
    ; 019x
    exten => _019X.,1,Macro(notallowed)
    ; 0900
    exten => _0900X.,1,Macro(notallowed)
    ; EMSAT
    exten => _0088X.,1,Macro(notallowed)
    
    [emergency]
    ; re-rewrite emergency call numbers
    exten => _0110,1,SetVar(EWL=110)
    exten => _0110,2,Macro(callwithpstn,${MYMSN},${MYNAME})
    exten => _0112,1,SetVar(EWL=112)
    exten => _0112,2,Macro(callwithpstn,${MYMSN},${MYNAME})
    exten => _019222,1,SetVar(EWL=19222)
    exten => _019222,2,Macro(callwithpstn,${MYMSN},${MYNAME})
    
    [preselection]
    ; dial the following prefixes with a defined method
    ; university of saarland
    ;exten => _0681302X.,1,Macro(callwithsip,${MYMSN},${MYNAME},eric-unisaarland-intl)
    
    ; freecall
    exten => _0800X.,1,Macro(callwithpstn,${MYMSN},${MYNAME})
    
    ; user-defined call-by-call
    exten => _010X.,1,Macro(callwithpstn,${MYMSN},${MYNAME})
    
    ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
    ; Jetzt wird es witzig: Call-By-Call 
    ; F³r alle Nummern wird vorlõufig ein bester CbC-Provider bestimmt - 
    ; auch wenn das Gesprõche spõter ³ber VoIP geht. Aber sicher ist sicher. 
    ; Die Liste hier ist sehr einfach. Die beachten momentan den Sonntags-XXL 
    ; Tarif der Telekom und ansonsten diverse Dumping-Preise, 
    ; die es momentan gibt (oder auch schon nicht mehr). 
    ; Unterschieden wird nach local (bei mir jetzt als Beispiel XXXX), 
    ; international (00x), long-distance (alles was nicht 0xxx, aber nicht XXXX) und Handies.
    ;
    
    ; automatic call-by-call
    [macro-cbc]
    exten => s,1,SetVar(CBC=${ARG1})
    exten => s,2,Macro(${CALLMACRO2USE},${MYMSN},${MYNAME},${SIP2USE})
    exten => s,3,Hangup
    
    [cbc-01071-international]
    exten => _00ZX.,1,Macro(cbc,01071)
    
    [cbc-01071-cellphones]
    exten => _016X.,1,Macro(cbc,01071)
    exten => _017X.,1,Macro(cbc,01071)
    
    [cbc-01071-longdistance]
    exten => _0ZX.,1,Macro(cbc,01071)
    
    [cbc-01019-local]
    exten => _XXXXX.,1,Macro(cbc,01019)
    
    [cbc-xxl]
    exten => _0ZX.,1,Macro(cbc,01033)
    
    ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
    ; Achtung! 
    ; Wichtig ist die Reihenfolge. Sonst lõuft alles in nocbc.
    
    ; no callbycall
    [nocbc]
    exten => _X.,1,Macro(cbc)
    
    [cbc]
    ;exten => _XXXXX.,1,Macro(cbc)
    include => cbc-01019-local|*|mon-sat|*|*
    include => cbc-01071-international
    include => cbc-01071-cellphones
    include => cbc-01071-longdistance|*|mon-sat|*|*
    include => cbc-xxl|*|sun|*|*
    include => nocbc;
    
    
    ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
    ; Der Number-Preselection Kontext unterscheidet sich vom line-preselection nur um eine Zeile. 
    ; Nõmlich dem include von oben beschriebenen preselection Kontext. 
    ; Wenn man nõmlich gleich (einen Moment noch) bewusst eine bestimmt Leitung wõhlt (ISDN oder SIPx) 
    ; dann braucht man kein preselection.
    
    [standard]
    exten => h,1,NoOp
    exten => t,1,Playtones(busy)
    exten => t,2,Busy
    
    [number-preselection]
    include => emergency
    include => forbidden
    include => preselection
    include => cbc
    include => standard
    [line-preselection]
    include => emergency
    include => forbidden
    include => cbc
    include => standard
    
    
    ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
    ; Noch zwei Macros; Letzteres sagt dem Benutzer nur, dass er wohl eine falsche 
    ; Leitung gewõhlt hat. Das erste schreibt die gewõhlte Nummer in zwei Formate: 
    ; International mit +xx am Anfang, und eine wie man es am z.B. Handy wõhlen w³rde 
    ; (ausser man wõhlt dort intl). Die Variablen heisen INTL und EWL. 
    ; Wie ihr seht ,wird auch eine Ortzvorwahl automatisch ergõnzt
    
    [macro-numbers]
    ; ARG1 number to rewrite
    ; sets
    ; EWL (exten with local)
    ; INTL (international format)
    exten => s,1,GotoIf($[${ARG1:0:2} = 00]?2:5)
    exten => s,2,SetVar(EWL=${ARG1})
    exten => s,3,SetVar(INTL=+${ARG1:2})
    exten => s,4,Goto(11)
    exten => s,5,GotoIf($[${ARG1:0:1} = 0]?6:9)
    exten => s,6,SetVar(EWL=${ARG1})
    exten => s,7,SetVar(INTL=+49${ARG1:1})
    exten => s,8,Goto(11)
    exten => s,9,SetVar(EWL=XXXX${ARG1})
    exten => s,10,SetVar(INTL=+49XXX${ARG1})
    exten => s,11,NoOp
    
    [macro-invalidline]
    exten => s,1,Answer
    exten => s,2,Wait(0.5)
    exten => s,3,Playback(privacy-incorrect)
    exten => s,4,Hangup
    
    
    
    
    ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
    ; Was passiert wenn nun gwõhlt wird - Ganz einfach! 
    ; Wenn die Nummer mit 1* beginnt, will ich ³ber ISDN raustelefonieren. 
    ; Wenn sie mit 2* beginnt soll der Anruf ³ber den Default (1) Sipprovider gehen 
    ; (und wie man mit etwas Code-anschauen erkennen kann ist das Benutzerabhõngig, 
    ; d.h. f³r jede MSN kann ich entsprechende Accounts einrichten). 
    
    ; Mit 2Z* kann man einen bestimmten Sip-Provider wõhlen, der aber auch exitsieren muss. 
    ; Ansonsten geht das ganze nach Number-Preselection und die k³mmert sich um eine nette 
    ;und vor allem automatische Anwahl
    
    [callout]
    ; use pstn line (no sip provider needed)
    exten => _1*X.,1,SetVar(CALLMACRO2USE=callwithpstn)
    exten => _1*X.,2,Macro(numbers,${EXTEN:2})
    exten => _1*X.,3,Goto(line-preselection,${EWL},1)
    
    ; use default sipline (MYSIP1)
    ; forbid CbX over sip
    exten => _2*010X.,1,Macro(invalidline)
    exten => _2*X.,1,SetVar(CALLMACRO2USE=callwithsip)
    exten => _2*X.,2,SetVar(SIP2USE=${MYSIP1})
    exten => _2*X.,3,Macro(numbers,${EXTEN:2})
    exten => _2*X.,4,Goto(line-preselection,${EWL},1)
    
    ; use special sipline (MYSIPx)
    ;forbid CbC over sip
    ;exten => _2Z*010X.,1,Macro(invalidline)
    ;exten => _2Z*X.,1,SetVar(CALLMACRO2USE=callwithsip)
    ;exten => _2Z*X.,2,GotoIf($[${EXTEN:1:1} <= ${MYNUMSIP}]?3:7)
    ;exten => _2Z*X.,3,SetVar(SIP2USE=${MYSIP${EXTEN:1:1}})
    ;exten => _2Z*X.,4,Macro(numbers,${EXTEN:3})
    ;exten => _2Z*X.,5,Goto(line-preselection,${EWL},1)
    ;exten => _2Z*X.,6,Goto(8)
    ;exten => _2Z*X.,7,Macro(invalidline)
    ;exten => _2Z*X.,8,NoOp
    
    ; choose best service by number (fallback is MYCALLMACRO)
    exten => _XXX.,1,SetVar(CALLMACRO2USE=${MYCALLMACRO})
    exten => _XXX.,2,SetVar(SIP2USE=${MYSIP1})
    exten => _XXX.,3,Macro(numbers,${EXTEN})
    exten => _XXX.,4,Goto(number-preselection,${EWL},1)
    ;include => sipphones
    
    ; if the number does not start with three digits -> invalid
    exten => i,1,Macro(invalidline)
    
    ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
    ; Fehlt nur noch eins - Wie kommt man in den den callout Kontext? 
    ; So: 
    
    [isdn2out]
    exten => s,1,Wait(0.1)
    exten => s,2,DigitTimeout(2)
    exten => s,3,SetLanguage(de)
    exten => s,4,Macro(user${CALLINGNUM})
    exten => _X.,1,Wait(0.1)
    exten => _X.,2,DigitTimeout(2)
    exten => _X.,3,SetLanguage(de)
    exten => _X.,4,Macro(user${CALLINGNUM})
    exten => _X.,5,Goto(callout,${EXTEN},1)
    
    
    
    ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
    ; Je nachdem ob man eine TK oder direkt ein Telefon dranhõngt, will man im sip2out auch zunõchst 
    ; eine 0 wõhlen. Die kann man vor X. einf³gen
    
    [sip2out]
    exten => _0X./22,1,Macro(user942622)
    exten => _0X./22,2,Goto(callout,${EXTEN:1},1)
    exten => _0X./13,1,Macro(user9129813)
    exten => _0X./13,2,Goto(callout,${EXTEN:1},1)
    
    
    ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
    ; in-coming calls 
    
    [macro-call-tk]
    exten => s,1,Wait(0.1)
    exten => s,2,Macro(user${MACRO_EXTEN})
    exten => s,3,SetCIDNum(${CALLERIDNUM})
    exten => s,4,Dial(${VOIPMSN}/${MYMSN},60,Ttr)
    exten => s,105,Busy
    
    [macro-call-sip]
    exten => s,1,Wait(0.1)
    exten => s,2,Macro(user${MACRO_EXTEN})
    exten => s,3,SetCIDNum(0${CALLERIDNUM})
    exten => s,4,Dial(${VOIPMSN}/${MYMSN},60,Ttr)
    ;exten => s,4,Dial(${MYSIPGROUP},60,Ttr) ;;;;;;;;;;;; f³r sip gerõte
    exten => s,105,Busy
    
    [tcom-in]
    exten => 942622,1,Macro(call-tk)
    exten => 9129813,1,Macro(call-sip)
    exten => 9129816,1,Macro(call-tk)
    exten => i,1,Congestion
    exten => h,1,NoOp
    exten => t,1,Busy
    
    ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
    
    
     
  8. akw

    akw Neuer User

    Registriert seit:
    17 Dez. 2004
    Beiträge:
    84
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Ich hatte die gleichen Probleme, bei mir lag's an der Firewall-Einstellung (Port forwarding fehlte).

    Viel Glück.