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

asterisk mit AMP zur admin, und Fritz!PCI

Dieses Thema im Forum "Asterisk ISDN mit CAPI (chan_capi, chan_capi_cm)" wurde erstellt von stylistics, 6 Mai 2005.

  1. stylistics

    stylistics Neuer User

    Registriert seit:
    6 Mai 2005
    Beiträge:
    3
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    OS: SuSE 9.2 alle updates/07.05
    asterisk lastest
    zaptel.1.0.7
    AMP 1.10.007
    chan_capi 0.3.5

    Ich kann per http://localhost/admin auf das Asterisk Management Portal
    zugreifen. Externsions einrichten, die können sich auch anmelden.
    Doch wenn ich anrufen wird das gespräch entgegen genommen, und gleich aufgelegt. Ich kann auch nicht raustelefonieren, dabei wird folgender output im asterisk-cli generiert:

    == Spawn extension (from-internal, 07345236380, 1) exited non-zero on 'SIP/82-3b4e'
    -- Executing Macro("SIP/82-3b4e", "hangupcall") in new stack
    -- Executing ResetCDR("SIP/82-3b4e", "w") in new stack
    -- Executing NoCDR("SIP/82-3b4e", "") in new stack
    -- Executing Wait("SIP/82-3b4e", "5") in new stack
    == Parsing '/etc/asterisk/manager.conf': Found
    == Parsing '/etc/asterisk/manager_custom.conf': Not found (No such file or directory)
    == Manager 'wwwadmin' logged on from 127.0.0.1
    == Spawn extension (macro-hangupcall, s, 3) exited non-zero on 'SIP/82-3b4e' in macro 'hangupcall'
    == Spawn extension (from-internal, h, 1) exited non-zero on 'SIP/82-3b4e'

    und wie man sieht wird das gespräch nicht per ISDN aufgebaut.
    Wie bekomm ich die FRITZ!PCI mit zaptel als ZAP/gx zum laufen?
    anbei die configs

    ::sip.conf::

    Code:
    [general]
    
    port = 5060           ; Port to bind to (SIP is 5060)
    bindaddr = 0.0.0.0    ; Address to bind to (all addresses on machine)
    disallow=all
    allow=ulaw
    allow=alaw
    context = from-sip-external ; Send unknown SIP callers to this context
    callerid = Unknown
    
    #include sip_nat.conf
    #include sip_additional.conf
    
    ::sip_additional.conf::
    
    [82]
    username=82
    type=friend
    secret=xxxx
    qualify=1000
    port=5060
    pickupgroup=1
    nat=never
    mailbox=82@default
    host=dynamic
    dtmfmode=rfc2833
    disallow=
    context=from-internal
    canreinvite=no
    callgroup=1
    callerid="Toni Kuziel" <82>
    allow=gsm
    
    ::extensions.conf::

    Code:
    ; Asterisk Management Portal (AMP)
    ; Copyright (C) 2004 Coalescent Systems Inc
    
    ; dialparties.agi (http://www.sprackett.com/asterisk/)
    ; Asterisk::AGI (http://asterisk.gnuinter.net/)
    ; gsm (http://www.ibiblio.org/pub/Linux/utils/compress/!INDEX.short.html)
    ; loligo sounds (http://www.loligo.com/asterisk/sounds/)
    ; mpg123 (http://voip-info.org/wiki-Asterisk+config+musiconhold.conf)
    
    
    ; include extension contexts generated from AMP
    #include extensions_additional.conf
    
    ; Customizations to this dialplan should be made in extensions_custom.conf
    ; See extensions_custom.conf.sample for an example
    #include extensions_custom.conf
    
    [from-trunk]                                                    ; just an alias since VoIP sho
    include => from-pstn
    
    [from-pstn]
    include => from-pstn-custom                     ; create this context in extensions_custom.con
    include => ext-did
    include => from-pstn-timecheck          ; this has to be included otherwise it overrides ext-d
    
    [from-pstn-timecheck]
    exten => .,1,Goto(s,1)          ; catch-all matching for calls that have DID info (if a DID ro
    exten => s,1,GotoIf($[${IN_OVERRIDE} = forcereghours]?from-pstn-reghours,s,1:)
    exten => s,2,GotoIf($[${IN_OVERRIDE} = forceafthours]?from-pstn-afthours,s,1:)
    exten => s,3,GotoIfTime(${REGTIME}|${REGDAYS}|*|*?from-pstn-reghours,s,1:)
    exten => s,4,Goto(from-pstn-afthours,s,1)
    
    [from-pstn-reghours]
    exten => s,1,GotoIf($[${FAX_RX} = disabled]?from-pstn-reghours-nofax,s,1:2)     ; if fax detec
    exten => s,2,Answer
    exten => s,3,Wait(1)
    exten => s,4,SetVar(intype=${INCOMING})
    exten => s,5,Cut(intype=intype,-,1)
    exten => s,6,GotoIf($[${intype} = EXT]?7:9)             ; If INCOMING starts with EXT, then as
    exten => s,7,Wait(3)                                                    ;wait 3 more second to
    exten => s,8,Goto(ext-local,${INCOMING:4},1)
    exten => s,9,GotoIf($[${intype} = GRP]?10:12)   ; If INCOMING starts with GRP, then assume its
    exten => s,10,Wait(3)
    exten => s,11,Goto(ext-group,${INCOMING:4},1)
    exten => s,12,GotoIf($[${intype} = QUE]?13:15)
    exten => s,13,Wait(3)
    exten => s,14,Goto(ext-queues,${INCOMING:4},1)
    exten => s,15,Goto(${INCOMING},s,1)                     ; not EXT or GR1 - it's an auto attend
    exten => fax,1,Goto(ext-fax,in_fax,1)
    exten => h,1,Hangup
    
    [from-pstn-reghours-nofax]
    exten => s,1,SetVar(intype=${INCOMING})
    exten => s,2,Cut(intype=intype,-,1)
    exten => s,3,GotoIf($[${intype} = EXT]?4:5)             ; If INCOMING starts with EXT, then as
    exten => s,4,Goto(ext-local,${INCOMING:4},1)
    exten => s,5,GotoIf($[${intype} = GRP]?6:7)     ; If INCOMING starts with GRP, then assume its
    exten => s,6,Goto(ext-group,${INCOMING:4},1)
    exten => s,7,GotoIf($[${intype} = QUE]?8:11) ;queue
    exten => s,8,Answer                                                     ; answer call before q
    exten => s,9,Wait(1)
    exten => s,10,Goto(ext-queues,${INCOMING:4},1)
    exten => s,11,Answer                                                    ; answer call before a
    exten => s,12,Wait(1)
    exten => s,13,Goto(${INCOMING},s,1)                             ; not EXT or GR1 - it's an aut
    exten => fax,1,Goto(ext-fax,in_fax,1)
    exten => fax,1,Goto(ext-fax,in_fax,1)
    exten => h,1,Hangup
    
    [from-pstn-afthours]
    exten => s,1,GotoIf($[${FAX_RX} = disabled]?from-pstn-afthours-nofax,s,1:2)     ; if fax detec
    exten => s,2,Answer
    exten => s,3,Wait(1)
    exten => s,4,SetVar(intype=${AFTER_INCOMING})
    exten => s,5,Cut(intype=intype,-,1)
    exten => s,6,GotoIf($[${intype} = EXT]?7:9)             ; If INCOMING starts with EXT, then as
    exten => s,7,Wait(3)                                                    ;wait 3 more second to
    exten => s,8,Goto(ext-local,${AFTER_INCOMING:4},1)
    exten => s,9,GotoIf($[${intype} = GRP]?10:12)   ; If INCOMING starts with GRP, then assume its
    exten => s,10,Wait(3)
    exten => s,11,Goto(ext-group,${AFTER_INCOMING:4},1)
    exten => s,12,GotoIf($[${intype} = QUE]?13:15)
    exten => s,13,Wait(3)
    exten => s,14,Goto(ext-queues,${AFTER_INCOMING:4},1)
    exten => s,15,Goto(${AFTER_INCOMING},s,1)                       ; not EXT or GR1 - it's an aut
    exten => fax,1,Goto(ext-fax,in_fax,1)
    exten => h,1,Hangup
    
    [from-pstn-afthours-nofax]
    exten => s,1,SetVar(intype=${AFTER_INCOMING})
    exten => s,2,Cut(intype=intype,-,1)
    exten => s,3,GotoIf($[${intype} = EXT]?4:5)             ; If INCOMING starts with EXT, then as
    exten => s,4,Goto(ext-local,${AFTER_INCOMING:4},1)
    exten => s,5,GotoIf($[${intype} = GRP]?6:7)     ; If INCOMING starts with GRP, then assume its
    exten => s,6,Goto(ext-group,${AFTER_INCOMING:4},1)
    exten => s,7,GotoIf($[${intype} = QUE]?8:11) ;queue
    exten => s,8,Answer                                                     ; answer call before q
    exten => s,9,Wait(1)
    exten => s,10,Goto(ext-queues,${AFTER_INCOMING:4},1)
    exten => s,11,Answer                                                    ; answer call before a
    exten => s,12,Wait(1)
    exten => s,13,Goto(${AFTER_INCOMING},s,1)                               ; not EXT or GR1 - it'
    exten => fax,1,Goto(ext-fax,in_fax,1)
    exten => h,1,Hangup
    
    ; ############################################################################
    ; Macros [macro]
    ; ############################################################################
    
    ; Rings one or more extensions.  Handles things like call forwarding and DND
    ; We don't call dial directly for anything internal anymore.
    ; ARGS: $TIMER, $OPTIONS, $EXT1, $EXT2, $EXT3, ...
    ; Use a Macro call such as the following:
    ;  Macro(dial,$DIAL_TIMER,$DIAL_OPTIONS,$EXT1,$EXT2,$EXT3,...)
    [macro-dial]
    exten => s,1,AGI,dialparties.agi
    exten => s,10,Dial(${ds})                               ; dialparties will set the priority to
    exten => s,20,Wait(1)                                           ; dialparties will set priorit
    exten => s,21,Voicemail(b${ARG3})           ; The call was internal to extension, and was busy
    exten => o,1,Background(one-moment-please)      ; 0 during vm message will hangup
    exten => o,2,goto(from-pstn,s,1)
    
    ; Ring an extension, if the extension is busy or there is no answer send it
    ; to voicemail
    ; ARGS: $VMBOX, $EXT
    [macro-exten-vm]
    exten => s,1,Setvar(FROMCONTEXT=exten-vm)
    exten => s,2,GotoIf($[${CHANNEL:0:5} = Local]?novm,1:3)  ; if the channel is Local, then do no
    exten => s,3,GotoIf($[${ARG1} = novm]?novm,1)
    exten => s,4,Macro(dial,${RINGTIMER},${DIAL_OPTIONS},${ARG2})
    exten => s,5,Wait(1)
    exten => s,6,Voicemail(u${ARG1})      ; no answer to voicemail
    exten => s,6,Voicemail(u${ARG1})      ; no answer to voicemail
    exten => s,7,Macro(hangupcall)
    exten => s,106,Wait(1)
    exten => s,107,Voicemail(b${ARG1})
    exten => o,1,Background(one-moment-please)      ; 0 during vm message will hangup
    exten => o,2,goto(from-pstn,s,1)
    exten => a,1,Goto(app-directory,*411,1)
    exten => a,2,Hangup
    exten => novm,1,Macro(dial,120,${DIAL_OPTIONS},${ARG2})
    exten => novm,2,Wait(1)
    exten => novm,3,Playback(vm-nobodyavail)
    exten => novm,4,Playback(allison7/pls-try-call-later)
    exten => novm,5,Hangup
    
    [macro-vm]
    exten => s,1,Voicemail(u${ARG1})      ; no answer to voicemail
    exten => s,2,Hangup
    exten => o,1,Background(one-moment-please)      ; 0 during vm message will hangup
    exten => o,2,goto(from-pstn,s,1)
    exten => a,1,Goto(app-directory,*411,1)
    exten => a,2,Hangup
    
    ; For some reason, if I don't run setCIDname, CALLERIDNAME will be blank in my AGI
    ; ARGS: none
    [macro-fixcid]
    exten => s,1,SetCIDName(${CALLERIDNAME})
    
    ; Ring groups of phones
    ; ARGS: comma separated extension list
    [macro-rg-group];
    exten => s,1,Setvar(GRP=${GROUP})   ;my original choice of variable GROUP is now overwritten b
    exten => s,2,SetGroup(${CALLERIDNUM})
    exten => s,3,Setvar(FROMCONTEXT=rg-group)
    exten => s,4,SetCIDName(${PRE}${CALLERIDNAME})
    exten => s,5,Macro(dial,${RINGTIMER},${DIAL_OPTIONS},${GRP})
    
    ;
    ; Outgoing channel(s) are busy ... inform the client
    ;
    [macro-outisbusy]
    exten => s,1,Playback(allison7/all-circuits-busy-now)
    exten => s,2,Playback(allison7/pls-try-call-later)
    exten => s,3,Macro(hangupcall)
    
    ; What to do on hangup.
    [macro-hangupcall]
    exten => s,1,ResetCDR(w)
    exten => s,2,NoCDR()
    exten => s,3,Wait(5)
    exten => s,4,Hangup
    
    [macro-faxreceive]
    exten => s,1,SetVar(FAXFILE=/var/spool/asterisk/fax/${UNIQUEID}.tif)
    exten => s,2,SetVar(EMAILADDR=${FAX_RX_EMAIL})
    exten => s,3,rxfax(${FAXFILE})
    exten => s,103,SetVar(EMAILADDR=${FAX_RX_EMAIL})
    exten => s,104,Goto(3)
    
    ; dialout and strip the prefix
    [macro-dialout]
    exten => s,1,GotoIf($[foo${ECID${CALLERIDNUM}} = foo]?4)        ;check for CID override for ex
    exten => s,2,SetCallerID(${ECID${CALLERIDNUM}})
    exten => s,3,Goto(6)
    exten => s,4,GotoIf($[foo${OUTCID_${ARG1}} = foo]?6)            ;check for CID override for tr
    exten => s,5,SetCallerID(${OUTCID_${ARG1}})
    exten => s,6,SetVar(length=${LEN(${DIAL_OUT_${ARG1}})})
    exten => s,7,Dial(${OUT_${ARG1}}/${ARG2:${length}})
    exten => s,8,Congestion
    exten => s,108,Macro(outisbusy)
    
    
    ; dialout using default OUT trunk - no prefix
    [macro-dialout-default]
    exten => s,1,GotoIf($[foo${ECID${CALLERIDNUM}} = foo]?4)        ;check for CID override for ex
    exten => s,2,SetCallerID(${ECID${CALLERIDNUM}})
    exten => s,3,Goto(6)
    exten => s,4,GotoIf($[foo${OUTCID} = foo]?6)    ;check for CID override for trunk
    exten => s,5,SetCallerID(${OUTCID})
    exten => s,6,Dial(${OUT}/${ARG1})
    exten => s,7,Congestion
    exten => s,107,Macro(outisbusy)
    
    ; dialout using a trunk, using pattern matching (don't strip any prefix)
    ; arg1 = trunk number, arg2 = number
    [macro-dialout-trunk]
    exten => s,1,GotoIf($[foo${ECID${CALLERIDNUM}} = foo]?4)        ;check
    for CID override for exten
    exten => s,2,SetCallerID(${ECID${CALLERIDNUM}})
    exten => s,3,Goto(6)
    exten => s,4,GotoIf($[foo${OUTCID_${ARG1}} = foo]?6)            ;check
    for CID override for trunk
    exten => s,5,SetCallerID(${OUTCID_${ARG1}})
    exten => s,6,SetGroup(OUT_${ARG1})
    exten => s,7,CheckGroup(${OUTMAXCHANS_${ARG1}})
    ; if we've used up the max channels, continue at 108 (n+101)
    exten => s,8,SetVar(DIAL_NUMBER=${ARG2})
    exten => s,9,SetVar(DIAL_TRUNK=${ARG1})
    exten => s,10,AGI(fixlocalprefix) ; this sets DIAL_NUMBER to the proper dial string for this t
    exten => s,11,Dial(${OUT_${ARG1}}/${OUTPREFIX_${ARG1}}${DIAL_NUMBER})
    ; if dial fails (ie, all channels are busy), continue at 112 (n+101)
    
    ; we should only get here if the call was successful (?)
    exten => s,9,Congestion
    
    ; exit points for macro
    exten => s,108,NoOp(max channels used up)
    exten => s,112,NoOp(dial failed)
    
    [macro-agent-add]
    exten => s,1,Wait(1)
    exten => s,2,GotoIf($[foo${ARG2} = foo]?4:3))
    exten => s,3,Authenticate(${ARG2})
    exten => s,4,AddQueueMember(${ARG1})
    exten => s,5,Wait(1)
    exten => s,6,Playback(agent-loginok)
    exten => s,7,Hangup()
    
    [macro-agent-del]
    exten => s,1,Wait(1)
    exten => s,2,RemoveQueueMember(${ARG1})
    exten => s,3,Wait(1)
    exten => s,4,Playback(agent-loggedoff)
    exten => s,5,Hangup()
    
    ; arg1 = trunk number, arg2 = number
    [macro-dialout-enum]
    exten => s,1,GotoIf($[foo${ECID${CALLERIDNUM}} = foo]?4)        ;check for CID override for ex
    exten => s,2,SetCallerID(${ECID${CALLERIDNUM}})
    exten => s,3,Goto(6)
    exten => s,4,GotoIf($[foo${OUTCID_${ARG1}} = foo]?6)            ;check for CID override for tr
    exten => s,5,SetCallerID(${OUTCID_${ARG1}})
    exten => s,6,SetGroup(OUT_${ARG1})
    exten => s,6,SetGroup(OUT_${ARG1})
    exten => s,7,CheckGroup(${OUTMAXCHANS_${ARG1}})         ; if we've used up the max channels, c
    exten => s,8,SetVar(DIAL_NUMBER=${ARG2})
    exten => s,9,SetVar(DIAL_TRUNK=${ARG1})
    exten => s,10,AGI(fixlocalprefix)                                               ; this sets DI
    exten => s,11,EnumLookup(${DIAL_NUMBER})
    exten => s,12,GotoIf($[$[${ENUM:0:3} = SIP] | $[${ENUM:0:3} = IAX]]?13:62)
    exten => s,13,Dial(${ENUM})
    exten => s,14,Dial(${OUT_${ARG1}}/${OUTPREFIX_${ARG1}}${DIAL_NUMBER})
    ; if dial fails (ie, all channels are busy), continue at 112 (n+101)
    
    ; exit points for macro
    exten => s,62,NoOp(EnumLookup failed)
    exten => s,108,NoOp(max channels used up)
    exten => s,115,NoOp(dial failed)
    
    ; ############################################################################
    ; Applications [app]
    ; ############################################################################
    ;
    [app-directory]
    ;DIR-CONTEXT set in Digital Receptionist
    exten => #,1,Wait(1)
    exten => #,2,AGI(directory,${DIR-CONTEXT},ext-local,${DIRECTORY:0:1}${DIRECTORY_OPTS}o)
    exten => #,3,Playback(vm-goodbye)
    exten => #,4,Hangup
    ; *411 will access the entire directory (not just a single context)
    exten => *411,1,Answer
    exten => *411,2,Wait(1)
    exten => *411,3,AGI(directory,general,ext-local,${DIRECTORY:0:1}${DIRECTORY_OPTS})
    exten => *411,4,Playback(vm-goodbye)
    exten => *411,5,Hangup
    exten => h,1,Hangup
    exten => o,1,goto(from-pstn,s,1)
    
    [app-dnd]
    exten => *78,1,Answer
    exten => *78,2,Wait(1)
    exten => *78,3,DBput(DND/${CALLERIDNUM}=YES)
    exten => *78,4,Playback(allison7/do-not-disturb)
    exten => *78,5,Playback(activated)
    exten => *78,6,Macro(hangupcall)
    exten => *79,1,Answer
    exten => *79,2,Wait(1)
    exten => *79,3,DBdel(DND/${CALLERIDNUM})
    exten => *79,4,Playback(allison7/do-not-disturb)
    exten => *79,5,Playback(de-activated)
    exten => *79,6,Macro(hangupcall)
    
    [app-messagecenter]
    exten => *98,1,Answer
    exten => *98,2,Wait(1)
    exten => *98,3,VoiceMailMain(default)
    exten => *98,4,Macro(hangupcall)
    exten => _*98X.,1,Answer                        ; can dial *98<exten> to skip 'mailbox' prompt
    exten => _*98X.,2,Wait(1)
    exten => _*98X.,3,VoiceMailMain(${EXTEN:3}@default)
    exten => _*98X.,4,Macro(hangupcall)
    exten => *97,1,Answer
    exten => *97,2,Wait(1)
    exten => *97,3,VoicemailMain(${CALLERIDNUM}@default)
    exten => *97,4,Macro(hangupcall)
    
    [app-callwaiting]
    exten => *70,1,Answer
    exten => *70,2,Wait(1)
    exten => *70,3,DBput(CW/${CALLERIDNUM}=ENABLED)
    exten => *70,4,Playback(callwaiting)
    exten => *70,5,Playback(activated)
    exten => *70,6,Macro(hangupcall)
    exten => *71,1,Answer
    exten => *71,2,Wait(1)
    exten => *71,3,DBdel(CW/${CALLERIDNUM})
    exten => *71,4,Playback(callwaiting)
    exten => *71,5,Playback(de-activated)
    exten => *71,6,Macro(hangupcall)
    
    [app-callforward]
    ; dialed call forward app - forwards calling extension
    exten => _*72.,1,DBput(CF/${CALLERIDNUM}=${EXTEN:3})
    exten => _*72.,2,Answer
    exten => _*72.,3,Wait(1)
    exten => _*72.,4,Playback(loligo/call-fwd-unconditional)
    exten => _*72.,5,Playback(loligo/for)
    exten => _*72.,6,Playback(loligo/extension)
    exten => _*72.,7,SayDigits(${CALLERIDNUM})
    exten => _*72.,8,Playback(loligo/is-set-to)
    exten => _*72.,9,SayDigits(${EXTEN:3})
    exten => _*72.,10,Macro(hangupcall)
    ; prompting call forward app - forwards entered extension
    exten => *72,1,Answer
    exten => *72,2,Wait(1)
    exten => *72,3,BackGround(allison7/please-enter-your)
    exten => *72,4,Playback(extension)
    exten => *72,5,Read(fromext,then-press-pound)
    exten => *72,6,Wait(1)
    exten => *72,7,BackGround(ent-target-attendant)
    exten => *72,8,Read(toext,then-press-pound)
    exten => *72,9,Wait(1)
    exten => *72,10,DBput(CF/${fromext}=${toext})
    exten => *72,11,Playback(call-fwd-unconditional)
    exten => *72,12,Playback(for)
    exten => *72,13,Playback(extension)
    exten => *72,14,SayDigits(${fromext})
    exten => *72,15,Playback(is-set-to)
    exten => *72,16,SayDigits(${toext})
    exten => *72,17,Macro(hangupcall)
    ; cancels dialed extension call forward
    exten => _*73.,1,DBdel(CF/${EXTEN:3})
    exten => _*73.,2,Answer
    exten => _*73.,3,Wait(1)
    exten => _*73.,4,SayDigits(${EXTEN:3})
    exten => _*73.,5,Playback(call-fwd-cancelled)
    exten => _*73.,6,Macro(hangupcall)
    ; cancels call forward for calling extension
    exten => *73,1,DBdel(CF/${CALLERIDNUM})
    exten => *73,2,Answer
    exten => *73,3,Wait(1)
    exten => *73,4,Playback(loligo/call-fwd-cancelled)
    exten => *73,5,Macro(hangupcall)
    ; dialed call forward on busy app - forwards calling extension when busy
    exten => _*90.,1,DBput(CFB/${CALLERIDNUM}=${EXTEN:3})
    exten => _*90.,2,Answer
    exten => _*90.,3,Wait(1)
    exten => _*90.,4,Playback(loligo/call-fwd-on-busy)
    exten => _*90.,5,Playback(loligo/for)
    exten => _*90.,6,Playback(loligo/extension)
    exten => _*90.,7,SayDigits(${CALLERIDNUM})
    exten => _*90.,8,Playback(loligo/is-set-to)
    exten => _*90.,9,SayDigits(${EXTEN:3})
    exten => _*90.,10,Macro(hangupcall)
    ; cancels call forward on busy for calling extension
    exten => *91,1,DBdel(CFB/${CALLERIDNUM})
    exten => *91,2,Answer
    exten => *91,3,Wait(1)
    exten => *91,4,Playback(call-fwd-on-busy)
    exten => *91,5,Playback(de-activated)
    exten => *91,6,Macro(hangupcall)
    exten => h,1,Hangup
    
    [app-calltrace]
    ; We can't have our timeouts or dial digits collide with other applications
    ; or extensions, so we build the app in pieces
    exten => *69,1,Goto(app-calltrace-perform,s,1)
    
    [app-calltrace-perform]
    exten => s,1,Answer
    exten => s,2,Wait(1)
    exten => s,3,Background(allison7/info-about-last-call)
    exten => s,4,Background(allison7/telephone-number)
    exten => s,5,Dbget(lastcaller=CALLTRACE/${CALLERIDNUM})
    exten => s,6,GotoIf($[${lastcaller}]?7:13)
    exten => s,7,SayDigits(${lastcaller})
    exten => s,8,DigitTimeout(3)
    exten => s,9,ResponseTimeout(7)
    exten => s,10,Background(loligo/to-call-this-number)
    exten => s,11,Background(allison7/press-1)
    exten => s,12,Goto(15)
    exten => s,13,Playback(loligo/from-unknown-caller)
    exten => s,14,Macro(hangupcall)
    exten => s,15,NoOp
    exten => 1,1,Goto(from-internal,${lastcaller},1);
    exten => i,1,Playback(vm-goodbye)
    exten => i,2,Macro(hangupcall)
    exten => t,1,Playback(vm-goodbye)
    exten => t,2,Macro(hangupcall)
    
    
    ; ############################################################################
    ; Outbound Trunk Contexts [outbound]
    ; ############################################################################
    
    [outbound-local]
    exten => _NXXXXXX,1,Macro(dialout-default,${EXTEN})
    exten => _NXXNXXXXXX,1,Macro(dialout-default,${EXTEN})
    
    [outbound-tollfree]
    exten => _1800NXXXXXX,1,Macro(dialout-default,${EXTEN})
    exten => _1888NXXXXXX,1,Macro(dialout-default,${EXTEN})
    exten => _1877NXXXXXX,1,Macro(dialout-default,${EXTEN})
    exten => _1866NXXXXXX,1,Macro(dialout-default,${EXTEN})
    
    [outbound-ld]
    exten => _1NXXNXXXXXX,1,Macro(dialout-default,${EXTEN})
    
    [outbound-international]
    exten => _011.,1,Macro(dialout-default,${EXTEN})
    
    [outbound-emerg]
    exten => 911,1,Macro(dialout-default,${EXTEN})
    
    [outbound-info]
    exten => 411,1,Macro(dialout-default,${EXTEN})
    exten => 311,1,Macro(dialout-default,${EXTEN})
    
    
    ; ############################################################################
    ; Inbound Contexts [from]
    ; ############################################################################
    
    [from-sip-external]
    
    ;give external sip users congestion and hangup
    exten => _.,1,AbsoluteTimeout(15)
    exten => _.,2,Congestion
    exten => _.,3,Hangup
    
    [from-internal]
    ;allow phones to use applications
    include => app-directory
    include => app-dnd
    include => app-callforward
    include => app-callwaiting
    include => app-messagecenter
    include => app-calltrace
    include => parkedcalls
    include => from-internal-custom
    ;allow phones to dial other extensions
    include => ext-fax
    include => ext-local
    include => ext-group
    include => ext-queues
    include => ext-zapbarge
    include => ext-meetme
    include => ext-record
    include => ext-test
    ;allow phones to access trunks
    include => outbound-allroutes
    exten => s,1,Macro(hangupcall)
    exten => h,1,Macro(hangupcall)
    
    ; ############################################################################
    ; Extension Contexts [ext]
    ; ############################################################################
    
    [ext-zapbarge]
    exten => 888,1,SetGroup(${CALLERIDNUM})
    exten => 888,2,Answer
    exten => 888,3,Wait(1)
    exten => 888,4,ZapBarge
    exten => 888,5,Hangup
    
    [ext-meetme]
    exten => _8X,1,Answer
    exten => _8X,2,Wait(1)
    exten => _8X,3,GotoIf($[${CALLERIDNUM} = ${EXTEN:1}]?5:4)
    exten => _8X,4,MeetMe(${EXTEN}|sM)
    exten => _8X,5,MeetMe(${EXTEN}|asM)
    
    exten => _8XX,1,Answer
    exten => _8XX,2,Wait(1)
    exten => _8XX,3,GotoIf($[${CALLERIDNUM} = ${EXTEN:1}]?5:4)
    exten => _8XX,4,MeetMe(${EXTEN}|sM)
    exten => _8XX,5,MeetMe(${EXTEN}|asM)
    
    exten => _8XXX,1,Answer
    exten => _8XXX,2,Wait(1)
    exten => _8XXX,3,GotoIf($[${CALLERIDNUM} = ${EXTEN:1}]?5:4)
    exten => _8XXX,4,MeetMe(${EXTEN}|sM)
    exten => _8XXX,5,MeetMe(${EXTEN}|asM)
    
    exten => _8XXXX,1,Answer
    exten => _8XXXX,2,Wait(1)
    exten => _8XXXX,3,GotoIf($[${CALLERIDNUM} = ${EXTEN:1}]?5:4)
    exten => _8XXXX,4,MeetMe(${EXTEN}|sM)
    exten => _8XXXX,5,MeetMe(${EXTEN}|asM)
    
    
    [ext-fax]
    exten => s,1,Answer
    exten => s,2,Goto(in_fax,1)
    exten => in_fax,1,GotoIf($[${FAX_RX} = system]?2:analog_fax,1)
    exten => in_fax,2,Macro(faxreceive)
    exten => in_fax,3,system(tiff2ps -2eaz -w 8.5 -h 11 ${FAXFILE} | ps2pdf - ${FAXFILE}.pdf)
    exten => in_fax,4,system(mime-construct --to ${EMAILADDR} --subject "Fax from ${CALLERIDNUM} $
    exten => in_fax,5,system(rm ${FAXFILE} ${FAXFILE}.pdf)
    exten => in_fax,6,Hangup
    exten => analog_fax,1,GotoIf($[${FAX_RX} = disabled]?3:2)  ;if fax is disabled, just hang up
    exten => analog_fax,2,Dial(${FAX_RX},20,d)
    exten => analog_fax,3,Hangup
    ;exten => out_fax,1,wait(7)
    exten => out_fax,1,txfax(${TXFAX_NAME}|caller)
    exten => out_fax,2,Hangup
    exten => h,1,Hangup()
    
    [ext-record]
    exten => *77,1,Wait(2)
    exten => *77,2,Record(${CALLERIDNUM}ivrrecording:wav)
    exten => *77,3,Wait(2)
    exten => *77,4,Hangup
    exten => *99,1,Playback(${CALLERIDNUM}ivrrecording)
    exten => *99,2,Wait(2)
    exten => *99,3,Hangup
    
    ;this is where parked calls go if they time-out.  Should probably re-ring
    [default]
    include => ext-local
    exten => s,1,Playback(vm-goodbye)
    exten => s,2,Macro(hangupcall)
    
    [ext-test]
    exten => 7777,1,Goto(from-pstn,s,1)
    exten => 666,1,Goto(ext-fax,in_fax,1)
    exten => h,1,Macro(hangupcall)
    
    ;echo test
    exten => *43,1,Answer
    exten => *43,2,Wait(2)
    exten => *43,3,Playback(demo-echotest)
    exten => *43,4,Echo
    exten => *43,5,Playback(demo-echodone)
    exten => *43,6,Hangup
    
    ::capi.conf::
    
    [general]
    nationalprefix=
    internationalprefix=00
    rxgain=0.8
    txgain=0.8
    
    
    [interfaces]
    mode=immediate
    controller=1
    softdtmf=1
    accountcode=
    context=capi
    msn=236382
    incomingmsn=236382
    echosquelch=1
    echocancel=yes
    echotail=64
    callgroup=1
    devices=2
    
    ::zaptel.conf::

    Code:
    # Zaptel Configuration File
    #
    # This file is parsed by the Zaptel Configurator, ztcfg
    #
    #
    # First come the span definitions, in the format
    # span=<span num>,<timing>,<line build out (LBO)>,<framing>,<coding>[,yellow]
    #
    # The timing parameter determines the selection of primary, secondary, and
    # so on sync sources.  If this span should be considered a primary sync
    # source, then give it a value of "1".  For a secondary, use "2", and so on.
    # To not use this as a sync source, just use "0"
    #
    # The line build-out (or LBO) is an integer, from the following table:
    # 0: 0 db (CSU) / 0-133 feet (DSX-1)
    # 1: 133-266 feet (DSX-1)
    # 2: 266-399 feet (DSX-1)
    # 3: 399-533 feet (DSX-1)
    # 4: 533-655 feet (DSX-1)
    # 5: -7.5db (CSU)
    # 6: -15db (CSU)
    # 7: -22.5db (CSU)
    #
    # The framing is one of "d4" or "esf" for T1 or "cas" or "ccs" for E1
    #
    # Note: "d4" could be referred to as "sf" or "superframe"
    #
    # The coding is one of "ami" or "b8zs" for T1 or "ami" or "hdb3" for E1
    #
    # E1's may have the additional keyword "crc4" to enable CRC4 checking
    #
    # If the keyword "yellow" follows, yellow alarm is transmitted when no
    # channels are open.
    #
    #span=1,0,0,esf,b8zs
    #span=2,1,0,esf,b8zs
    #span=3,0,0,ccs,hdb3,crc4
    #
    # Next come the dynamic span definitions, in the form:
    # dynamic=<driver>,<address>,<numchans>,<timing>
    #
    # Where <driver> is the name of the driver (e.g. eth), <address> is the
    # driver specific address (like a MAC for eth), <numchans> is the number
    # of channels, and <timing> is a timing priority, like for a normal span.
    # use "0" to not use this as a timing source, or prioritize them as
    # primary, secondard, etc.  Note that you MUST have a REAL zaptel device
    # if you are not using external timing.
    #
    # dynamic=eth,eth0/00:02:b3:35:43:9c,24,0
    #
    # Next come the definitions for using the channels.  The format is:
    # <device>=<channel list>
    #
    # Valid devices are:
    #
    # "e&m"     : Channel(s) are signalled using E&M signalling (specific
    #             implementation, such as Immediate, Wink, or Feature Group D
    #             are handled by the userspace library).
    # "fxsls"   : Channel(s) are signalled using FXS Loopstart protocol.
    # "fxsgs"   : Channel(s) are signalled using FXS Groundstart protocol.
    # "fxsks"   : Channel(s) are signalled using FXS Koolstart protocol.
    # "fxols"   : Channel(s) are signalled using FXO Loopstart protocol.
    # "fxogs"   : Channel(s) are signalled using FXO Groundstart protocol.
    # "fxoks"   : Channel(s) are signalled using FXO Koolstart protocol.
    # "sf"      : Channel(s) are signalled using in-band single freq tone.
    #               Syntax as follows:
    #                channel# => sf:<rxfreq>,<rxbw>,<rxflag>,<txfreq>,<txlevel>,<txflag>
    #               rxfreq is rx tone freq in hz, rxbw is rx notch (and decode)
    #               bandwith in hz (typically 10.0), rxflag is either 'normal' or
    #               'inverted', txfreq is tx tone freq in hz, txlevel is tx tone
    #               level in dbm, txflag is either 'normal' or 'inverted'. Set
    #               rxfreq or txfreq to 0.0 if that tone is not desired.
    # "unused"  : No signalling is performed, each channel in the list remains idle
    # "clear"   : Channel(s) are bundled into a single span.  No conversion or
    #             signalling is performed, and raw data is available on the master.
    # "indclear": Like "clear" except all channels are treated individually and
    #             are not bundled.  "bchan" is an alias for this.
    # "rawhdlc" : The zaptel driver performs HDLC encoding and decoding on the
    #             bundle, and the resulting data is communicated via the master
    #             device.
    # "fcshdlc" : The zapdel driver performs HDLC encoding and decoding on the
    #             bundle and also performs incoming and outgoing FCS insertion
    #             and verification.  "dchan" is an alias for this.
    # "nethdlc" : The zaptel driver bundles the channels together into an
    #             hdlc network device, which in turn can be configured with
    #             sethdlc (available separately).
    # "dacs"    : The zaptel driver cross connects the channels starting at
    #             the channel number listed at the end, after a colon
    # "dacsrbs" : The zaptel driver cross connects the channels starting at
    #             the channel number listed at the end, after a colon and
    #             also performs the DACSing of RBS bits
    #
    # The channel list is a comma-separated list of channels or ranges, for
    # example:
    #
    #   1,3,5 (channels one, three, and five)
    #   16-23, 29 (channels 16 through 23, as well as channel 29
    #
    # So, some complete examples are:
    #   e&m=1-12
    #   nethdlc=13-24
    #   fxsls=25,26,27,28
    #   fxols=29-32
    #
    #fxoks=1-24
    #bchan=25-47
    #dchan=48
    #fxols=1-12
    #fxols=13-24
    #e&m=25-29
    #nethdlc=30-33
    #clear=44
    #clear=45
    #clear=46
    #clear=47
    #fcshdlc=48
    #dacs=1-24:48
    #dacsrbs=1-24:48
    #
    # Finally, you can preload some tone zones, to prevent them from getting
    # overwritten by other users (if you allow non-root users to open /dev/zap/*
    # interfaces anyway.  Also this means they won't have to be loaded at runtime.
    # The format is "loadzone=<zone>" where the zone is a two letter country code.
    #
    # You may also specify a default zone with "defaultzone=<zone>" where zone
    # is a two letter country code.
    #
    # An up-to-date list of the zones can be found in the file zaptel/zonedata.c
    #
    #loadzone = de
    #loadzone = us-old
    #loadzone=gr
    #loadzone=it
    #loadzone=fr
    loadzone=de
    #loadzone=uk
    #loadzone=fi
    #loadzone=jp
    #loadzone=sp
    #loadzone=no
    defaultzone=us
    
    Hat vielleicht jemand ne Idee? Würd mich über jede Hilfe freun!

    thx a lot!!

    toni

    ::zapata.conf::
    Code:
    ;
    ; Zapata telephony interface
    ;
    ; Configuration file
    
    [trunkgroups]
    ;
    ; Trunk groups are used for NFAS or GR-303 connections.
    ;
    ; Group: Defines a trunk group.
    ;        group => <trunkgroup>,<dchannel>[,<backup1>...]
    ;
    ;        trunkgroup  is the numerical trunk group to create
    ;        dchannel    is the zap channel which will have the
    ;                    d-channel for the trunk.
    ;        backup1     is an optional list of backup d-channels.
    ;
    ;trunkgroup => 1,24,48
    ;
    ; Spanmap: Associates a span with a trunk group
    ;        spanmap => <zapspan>,<trunkgroup>[,<logicalspan>]
    ;
    ;        zapspan     is the zap span number to associate
    ;        trunkgroup  is the trunkgroup (specified above) for the mapping
    ;        logicalspan is the logical span number within the trunk group to use.
    ;                    if unspecified, no logical span number is used.
    ;
    ;spanmap => 1,1,1
    ;spanmap => 2,1,2
    ;spanmap => 3,1,3
    ;spanmap => 4,1,4
    
    [channels]
    ;
    ; Default language
    ;
    ;language=en
    ;
    ; Default context
    ;
    context=default
    ;
    ; Switchtype:  Only used for PRI.
    ;
    ; national:       National ISDN 2 (default)
    ; dms100:         Nortel DMS100
    ; 4ess:           AT&T 4ESS
    ; 5ess:           Lucent 5ESS
    ; euroisdn:       EuroISDN
    ; ni1:            Old National ISDN 1
    ;
    switchtype=national
    ;
    ; Some switches (AT&T especially) require network specific facility IE
    ; supported values are currently 'none', 'sdn', 'megacom', 'accunet'
    ;
    ;nsf=none
    ;
    ; PRI Dialplan:  Only RARELY used for PRI.
    ;
    ; unknown:        Unknown
    ; private:        Private ISDN
    ; local:          Local ISDN
    ; national:       National ISDN
    ; international:  International ISDN
    ;
    ;pridialplan=national
    ;
    ; PRI Local Dialplan:  Only RARELY used for PRI (sets the calling number's numbering plan)
    ;
    ; unknown:        Unknown
    ; private:        Private ISDN
    ; local:          Local ISDN
    ; national:       National ISDN
    ; international:  International ISDN
    ;
    ;prilocaldialplan=national
    ;
    ; Overlap dialing mode (sending overlap digits)
    ;
    ;overlapdial=yes
    ;
    ; Signalling method (default is fxs).  Valid values:
    ; em:      E & M
    ; em_w:    E & M Wink
    ; featd:   Feature Group D (The fake, Adtran style, DTMF)
    ; featdmf: Feature Group D (The real thing, MF (domestic, US))
    ; featb:   Feature Group B (MF (domestic, US))
    ; fxs_ls:  FXS (Loop Start)
    ; fxs_gs:  FXS (Ground Start)
    ; fxs_ks:  FXS (Kewl Start)
    ; fxo_ls:  FXO (Loop Start)
    ; fxo_gs:  FXO (Ground Start)
    ; fxo_ks:  FXO (Kewl Start)
    ; pri_cpe: PRI signalling, CPE side
    ; pri_net: PRI signalling, Network side
    ; gr303fxoks_net: GR-303 Signalling, FXO Loopstart, Network side
    ; gr303fxsks_cpe: GR-303 Signalling, FXS Loopstart, CPE side
    ; sf:         SF (Inband Tone) Signalling
    ; sf_w:       SF Wink
    ; sf_featd:   SF Feature Group D (The fake, Adtran style, DTMF)
    ; sf_featdmf: SF Feature Group D (The real thing, MF (domestic, US))
    ; sf_featb:   SF Feature Group B (MF (domestic, US))
    ; The following are used for Radio interfaces:
    ; fxs_rx:  Receive audio/COR on an FXS kewlstart interface (FXO at the channel bank)
    ; fxs_tx:  Transmit audio/PTT on an FXS loopstart interface (FXO at the channel bank)
    ; fxo_rx:  Receive audio/COR on an FXO loopstart interface (FXS at the channel bank)
    ; fxo_tx:  Transmit audio/PTT on an FXO groundstart interface (FXS at the channel bank)
    ; em_rx:   Receive audio/COR on an E&M interface (1-way)
    ; em_tx:   Transmit audio/PTT on an E&M interface (1-way)
    ; em_txrx: Receive audio/COR AND Transmit audio/PTT on an E&M interface (2-way)
    ; em_rxtx: same as em_txrx (for our dyslexic friends)
    ; sf_rx:   Receive audio/COR on an SF interface (1-way)
    ; sf_tx:   Transmit audio/PTT on an SF interface (1-way)
    ; sf_txrx: Receive audio/COR AND Transmit audio/PTT on an SF interface (2-way)
    ; sf_rxtx: same as sf_txrx (for our dyslexic friends)
    ;
    signalling=fxo_ls
    ;
    ; A variety of timing parameters can be specified as well
    ; Including:
    ;    prewink:     Pre-wink time (default 50ms)
    ;    preflash:    Pre-flash time (default 50ms)
    ;    wink:        Wink time (default 150ms)
    ;    flash:       Flash time (default 750ms)
    ;    start:       Start time (default 1500ms)
    ;    rxwink:      Receiver wink time (default 300ms)
    ;    rxflash:     Receiver flashtime (default 1250ms)
    ;    debounce:    Debounce timing (default 600ms)
    ;
    rxwink=300              ; Atlas seems to use long (250ms) winks
    ; Whether or not to do distinctive ring detection on FXO lines
    ;
    ;usedistinctiveringdetection=yes
    
    ;
    ; Whether or not to use caller ID
    ;
    usecallerid=yes
    ;
    ; Whether or not to hide outgoing caller ID (Override with *67 or *82)
    ;
    hidecallerid=no
    ;
    ; Whether or not to enable call waiting on FXO lines
    ;
    callwaiting=yes
    ;
    ; Whether or not restrict outgoing caller ID (will be sent as ANI only, not available for the
    ; Mostly use with FXS ports
    ;
    ;restrictcid=no
    ;
    ; Whether or not use the caller ID presentation for the outgoing call that the calling switch
    ;
    usecallingpres=yes
    ;
    ; Support Caller*ID on Call Waiting
    ;
    callwaitingcallerid=yes
    ;
    ; Support three-way calling
    ;
    threewaycalling=yes
    ;
    ; Support flash-hook call transfer (requires three way calling)
    ;
    transfer=yes
    ;
    ; Support call forward variable
    ;
    cancallforward=yes
    ;
    ; Whether or not to support Call Return (*69)
    ;
    callreturn=yes
    ;
    ; Stutter dialtone support: If a mailbox is specified without a voicemail
    ; context, then when voicemail is received in a mailbox in the default
    ; voicemail context in voicemail.conf, taking the phone off hook will
    ; cause a stutter dialtone instead of a normal one.
    ;
    ; If a mailbox is specified *with* a voicemail context, the same will
    ; result if voicemail recieved in mailbox in the specified voicemail
    ; context
    ;
    ; for default voicemail context, the example below is fine:
    ;
    ;mailbox=1234
    ;
    ; for any other voicemail context, the following will produce the
    ; stutter tone:
    ;
    ;mailbox=1234@context
    ;
    ; Enable echo cancellation
    ; Use either "yes", "no", or a power of two from 32 to 256 if you wish
    ; to actually set the number of taps of cancellation.
    ;
    echocancel=yes
    ;
    ; Generally, it is not necessary (and in fact undesirable) to echo cancel
    ; when the circuit path is entirely TDM.  You may, however, reverse this
    ; behavior by enabling the echo cancel during pure TDM bridging below.
    ;
    echocancelwhenbridged=yes
    ;
    ; In some cases, the echo canceller doesn't train quickly enough and there
    ; is echo at the beginning of the call.  Enabling echo training will cause
    ; asterisk to briefly mute the channel, send an impulse, and use the impulse
    ; response to pre-train the echo canceller so it can start out with a much
    ; closer idea of the actual echo.  Value may be "yes", "no", or a number of
    ; milliseconds to delay before training (default = 400)
    ;
    ;echotraining=yes
    ;echotraining=800
    ;
    ; If you are having trouble with DTMF detection, you can relax the
    ; DTMF detection parameters.  Relaxing them may make the DTMF detector
    ; more likely to have "talkoff" where DTMF is detected when it
    ; shouldn't be.
    ;
    ;relaxdtmf=yes
    ;
    ; You may also set the default receive and transmit gains (in dB)
    ;
    rxgain=0.0
    txgain=0.0
    ;
    ; Logical groups can be assigned to allow outgoing rollover.  Groups
    ; range from 0 to 31, and multiple groups can be specified.
    ;
    group=1
    ;
    ; Ring groups (a.k.a. call groups) and pickup groups.  If a phone is ringing
    ; and it is a member of a group which is one of your pickup groups, then
    ; you can answer it by picking up and dialing *8#.  For simple offices, just
    ; make these both the same
    ;
    callgroup=1
    pickupgroup=1
    
    ;
    ; Specify whether the channel should be answered immediately or
    ; if the simple switch should provide dialtone, read digits, etc.
    ;
    immediate=no
    ;
    ; CallerID can be set to "asreceived" or a specific number
    ; if you want to override it.  Note that "asreceived" only
    ; applies to trunk interfaces.
    ;
    ;callerid=2564286000
    ;
    ; AMA flags affects the recording of Call Detail Records.  If specified
    ; it may be 'default', 'omit', 'billing', or 'documentation'.
    ;
    ;amaflags=default
    ;
    ; Channels may be associated with an account code to ease
    ; billing
    ;
    ;accountcode=lss0101
    ;
    ; ADSI (Analog Display Services Interface) can be enabled on a per-channel
    ; basis if you have (or may have) ADSI compatible CPE equipment
    ;
    ;adsi=yes
    ;
    ; On trunk interfaces (FXS) and E&M interfaces (E&M, Wink, Feature Group D
    ; etc, it can be useful to perform busy detection either in an effort to
    ; detect hangup or for detecting busies
    ;
    ;busydetect=yes
    ;
    ; If busydetect is enabled, is also possible to specify how many
    ; busy tones to wait before hanging up. The default is 4, but
    ; better results can be achieved if set to 6 or even 8. Mind that
    ; higher the number, more time is needed to hangup a channel, but
    ; lower is probability to get random hangups
    ;
    ;busycount=4
    ;
    ; On trunk interfaces (FXS) it can be useful to attempt to follow the progress
    ; of a call through RINGING, BUSY, and ANSWERING.   If turned on, call
    ; progress attempts to determine answer, busy, and ringing on phone lines.
    ; This feature is HIGHLY EXPERIMENTAL and can easily detect false answers,
    ; so don't count on it being very accurate.
    ;
    ; Few zones are supported at the time of this writing, but may
    ; be selected with "progzone"
    ;
    ; This feature can also easily detect false hangups. The symptoms of this
    ; is being disconnected in the middle of a call for no reason.
    ;
    ;callprogress=yes
    ;progzone=us
    ;
    ; For fax detection, uncomment one of the following lines.  The default is *OFF*
    ;
    ;faxdetect=both
    ;faxdetect=incoming
    ;faxdetect=outgoing
    ;faxdetect=no
    ;
    ; Select which class of music to use for music on hold.  If not specified
    ; then the default will be used.
    ;
    ;musiconhold=default
    ;
    ; PRI channels can have an idle extension and a minunused number.  So long
    ; as at least "minunused" channels are idle, chan_zap will try to call
    ; "idledial" on them, and then dump them into the PBX in the "idleext"
    ; extension (which is of the form exten@context).  When channels are needed
    ; the "idle" calls are disconnected (so long as there are at least "minidle"
    ; calls still running, of course) to make more channels available.  The
    ; primary use of this is to create a dynamic service, where idle channels
    ; are bundled through multilink PPP, thus more efficiently utilizing
    ; combined voice/data services than conventional fixed mappings/muxings.
    ;
    ;idledial=6999
    ;idleext=6999@dialout
    ;minunused=2
    ;minidle=1
    ;
    ; Configure jitter buffers in zapata (each one is 20ms, default is 4)
    ;
    ;jitterbuffers=4
    ;
    ; You can define your own custom ring cadences here.  You can define up to
    ; 8 pairs.  If the silence is negative, it indicates where the callerid
    ; spill is to be placed.  Also, if you define any custom cadences, the
    ; default cadences will be turned off.
    ;
    ; Syntax is:  cadence=ring,silence[,ring,silence[...]]
    ;
    ; These are the default cadences:
    ;
    ;cadence=125,125,2000,-4000
    ;cadence=250,250,500,1000,250,250,500,-4000
    ;cadence=125,125,125,125,125,-4000
    ;cadence=1000,500,2500,-5000
    ;
    ; Each channel consists of the channel number or range.  It
    ; inherits the parameters that were specified above its declaration
    ;
    ; For GR-303, CRV's are created like channels except they must start
    ; with the trunk group followed by a colon, e.g.:
    ;
    ; crv => 1:1
    ; crv => 2:1-2,5-8
    ;
    ;
    ;callerid="Green Phone"<(256) 428-6121>
    ;channel => 1
    ;callerid="Black Phone"<(256) 428-6122>
    ;channel => 2
    ;callerid="CallerID Phone" <(256) 428-6123>
    ;callerid="CallerID Phone" <(630) 372-1564>
    ;callerid="CallerID Phone" <(256) 704-4666>
    ;channel => 3
    ;callerid="Pac Tel Phone" <(256) 428-6124>
    ;channel => 4
    ;callerid="Uniden Dead" <(256) 428-6125>
    ;channel => 5
    ;callerid="Cortelco 2500" <(256) 428-6126>
    ;channel => 6
    ;callerid="Main TA 750" <(256) 428-6127>
    ;channel => 44
    ;
    ; For example, maybe we have some other channels
    ; which start out in a different context and use
    ; E & M signalling instead.
    ;
    ;context=remote
    ;sigalling=em
    ;channel => 15
    ;channel => 16
    
    ;signalling=em_w
    ;
    ; All those in group 0 I'll use for outgoing calls
    ;
    ; Strip most significant digit (9) before sending
    ;
    ;stripmsd=1
    ;callerid=asreceived
    ;group=0
    ;signalling=fxs_ls
    ;channel => 45
    
    ;signalling=fxo_ls
    ;group=1
    ;callerid="Joe Schmoe" <(256) 428-6131>
    ;channel => 25
    ;callerid="Megan May" <(256) 428-6132>
    ;channel => 26
    ;callerid="Suzy Queue" <(256) 428-6233>
    ;channel => 27
    ;callerid="Larry Moe" <(256) 428-6234>
    ;channel => 28
    ;
    ; Sample PRI (CPE) config:  Specify the switchtype, the signalling as
    ; either pri_cpe or pri_net for CPE or Network termination, and generally
    ; you will want to create a single "group" for all channels of the PRI.
    ;
    ; switchtype = national
    ; signalling = pri_cpe
    ; group = 2
    ; channel => 1-23
    
    ;
    ;  Used for distintive ring support for x100p.
    ;  You can see the dringX patterns is to set any one of the dringXcontext fields
    ;  and they will be printed on the console when an inbound call comes in.
    ;
    ;dring1=95,0,0
    ;dring1context=internal1
    ;dring2=325,95,0
    ;dring2context=internal2
    ; If no pattern is matched here is where we go.
    ;context=default
    ;channel => 1
    
     
  2. stylistics

    stylistics Neuer User

    Registriert seit:
    6 Mai 2005
    Beiträge:
    3
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    und wie bekomm ich es hin, das das ZAP device meine Fritz!PCI zur anwahl der nummer nutzt? um gemütlich per AMP den rest einzurichten, und zu erweitern. über jeder hilfe bin ich dankbar!!

    mfg
    Toni
     
  3. stylistics

    stylistics Neuer User

    Registriert seit:
    6 Mai 2005
    Beiträge:
    3
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    ich schätz mal das es vielleicht daran liegt das zaptel nicht richtig läuft
    hab mir mal den output von ztcfg -vv angeschaut::

    Zaptel Configuration
    ======================
    Channel map:
    0 channels configured.

    beim make loadNT in /usr/src/asterisk/bristuff-0.2.0-RC8a/zaphfc
    kommt auch kein fehler nur der obrige output.

    Was mach ich beim zaptel falsch?
    Wie muss die zaptel.conf aussehn um mit der Fritz!PCI zu arbeiten?

    da beim capiinfo der richtige controller angezeit wird, und bei der standalone asterisk mit capi beim waehlen ueber capi lief...

    nur jetzt sollte ich die Fitz!PCI als ZAP Device nutzen, um in der AMP
    umgebung richtig arbeiten zu koennen.

    Kann mir vielleicht jemand beim einrichten von zaptel mit der Fritz!PCI
    helfen? das waehre echt super!!

    thx a lot, 4 your time!

    mfg
    toni
     
  4. rajo

    rajo Admin-Team

    Registriert seit:
    31 März 2004
    Beiträge:
    1,958
    Zustimmungen:
    0
    Punkte für Erfolge:
    36
    Das geht nicht. Fritz = CAPI und sonst nix.
    Zaptel sind nur die Digium-Karten und ISDN-Karten mit HFC-Chipsatz die über zapHFC / bristuff angesprochen werden.

    BTW: löblich, dass Du gleich Deine Configs postest, aber pack sie nächstens bitte in eine Code-Umgebung, sonst scrollt man sich ja zu tode :)
     
  5. teddy75

    teddy75 Neuer User

    Registriert seit:
    8 Mai 2005
    Beiträge:
    52
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    naja fritz nicht nur gleich capi geht auch per modem (i4l)
    habe 2 fritzkarten fritz!dsl mit capi am NTBA und Fritz!PCI an S0 der TK anlage (TK Stellt einen internen S0 zur verfügung)