[SOLVED]Selective call redirection with g400p card

Status
Not open for further replies.

eNoisy

Joined
Jul 24, 2010
Messages
59
Reaction score
0
Good morning,

I'am configuring an Elatix 2.3 system with 2 Openvox cards, one A400P (2 FXO modules) and a g400p (3GSM modules, however only one in use). Overall the system works fine and I can make/receive calls with any of the PSTN/GSM lines.

All I want to achieve is to be able to create a particular incoming route for the calls on the GSM trunk to a particular extension/ring group or any other selected destination

In the past I had an A400p with 3 FXO modules (one of them connected to an external GSM gateway). I did not have any problems doing this selective redirection back then. I configured the ZAP chanell DIDs, modified the files chan_dahdi.conf and dahdi_channels.conf (as it is well explained on the boox Elastix Without Tears).

Now that I have these new card and I can see that the configuration for the GSM channels is in different files (extra-channels.conf and chan_extra.conf). I am not sure if I should modify these files as per chan_dahdi.conf and dahdi_channels.conf or if I need a different approach. I spent quite a long time now trying to find a solution on the net however unable to find something helpful.

Please find below the modifications for chan_dahdi.conf and dahdi_channels.conf
In addition to this, of course I have to add the new DIDs for ZAP channels in the web interface

chan_dahdi.conf

[channels]
;context=from-pstn < --- commented out
context=from-zaptel < --- added
useincommingcalleridonzaptransfer=yes < --- added
language=au < -- Added

dahdi_channels.conf
replaced the context from-pstn to from-zaptel for every channel.

Thanks in advance
Juan
 
Re:Selective call redirection with g400p GSM card

Paste the CLI output (asterisk -r) to see what is going on.
 
Re:Selective call redirection with g400p GSM card

Gracias Jorge.

Please find below CLI output when dialing to the GSM line:
(The incoming route with assigned DID should direct the call to a particular announcement instead of reaching extension 201)

Extension 201 is the destination for an incoming route with no assigned DID.


-- Accepting call from '0449xxxxxx' to 's' on channel 1, span 2
-- Executing [s@from-zaptel:1] NoOp("EXTRA/13-1", "Entering from-dahdi with DID == ") in new stack
-- Executing [s@from-zaptel:2] Ringing("EXTRA/13-1", "") in new stack
-- Executing [s@from-zaptel:3] Set("EXTRA/13-1", "DID=s") in new stack
-- Executing [s@from-zaptel:4] NoOp("EXTRA/13-1", "DID is now s") in new stack
-- Executing [s@from-zaptel:5] GotoIf("EXTRA/13-1", "0?dahdiok:checkzap") in new stack
-- Goto (from-zaptel,s,6)
-- Executing [s@from-zaptel:6] GotoIf("EXTRA/13-1", "0?zapok:neither") in new stack
-- Goto (from-zaptel,s,7)
-- Executing [s@from-zaptel:7] Goto("EXTRA/13-1", "from-pstn,s,1") in new stack
-- Goto (from-pstn,s,1)
-- Executing [s@from-pstn:1] Set("EXTRA/13-1", "__FROM_DID=s") in new stack
-- Executing [s@from-pstn:2] Gosub("EXTRA/13-1", "app-blacklist-check,s,1") in new stack
-- Executing [s@app-blacklist-check:1] GotoIf("EXTRA/13-1", "0?blacklisted") in new stack
-- Executing [s@app-blacklist-check:2] Set("EXTRA/13-1", "CALLED_BLACKLIST=1") in new stack
-- Executing [s@app-blacklist-check:3] Return("EXTRA/13-1", "") in new stack
-- Executing [s@from-pstn:3] Gosub("EXTRA/13-1", "cidlookup,cidlookup_1,1") in new stack
-- Executing [cidlookup_1@cidlookup:1] MYSQL("EXTRA/13-1", "Connect connid 10.0.0.8 USR PWD asteriskcdrdb") in new stack
-- Executing [cidlookup_1@cidlookup:2] MYSQL("EXTRA/13-1", "Query resultid 1 select contactname from contacts where phonenumber like right('0449xxxxxx',8)") in new stack
-- Executing [cidlookup_1@cidlookup:3] MYSQL("EXTRA/13-1", "Fetch fetchid 2 CALLERID(name)") in new stack
-- Executing [cidlookup_1@cidlookup:4] MYSQL("EXTRA/13-1", "Clear 2") in new stack
-- Executing [cidlookup_1@cidlookup:5] MYSQL("EXTRA/13-1", "Disconnect 1") in new stack
-- Executing [cidlookup_1@cidlookup:6] Return("EXTRA/13-1", "") in new stack
-- Executing [s@from-pstn:4] ExecIf("EXTRA/13-1", "0 ?Set(CALLERID(name)=0449xxxxxx)") in new stack
-- Executing [s@from-pstn:5] Set("EXTRA/13-1", "__CALLINGPRES_SV=allowed_not_screened") in new stack
-- Executing [s@from-pstn:6] Set("EXTRA/13-1", "CALLERPRES()=allowed_not_screened") in new stack
-- Executing [s@from-pstn:7] Goto("EXTRA/13-1", "from-did-direct,201,1") in new stack
-- Goto (from-did-direct,201,1)
-- Executing [201@from-did-direct:1] Macro("EXTRA/13-1", "exten-vm,novm,201") in new stack
-- Executing [s@macro-exten-vm:1] Macro("EXTRA/13-1", "user-callerid,") in new stack
-- Executing [s@macro-user-callerid:1] Set("EXTRA/13-1", "AMPUSER=0449xxxxxx") in new stack
-- Executing [s@macro-user-callerid:2] GotoIf("EXTRA/13-1", "0?report") in new stack
-- Executing [s@macro-user-callerid:3] ExecIf("EXTRA/13-1", "1?Set(REALCALLERIDNUM=0449xxxxxx)") in new stack
-- Executing [s@macro-user-callerid:4] Set("EXTRA/13-1", "AMPUSER=") in new stack
-- Executing [s@macro-user-callerid:5] Set("EXTRA/13-1", "AMPUSERCIDNAME=") in new stack
-- Executing [s@macro-user-callerid:6] GotoIf("EXTRA/13-1", "1?report") in new stack
-- Goto (macro-user-callerid,s,10)
-- Executing [s@macro-user-callerid:10] GotoIf("EXTRA/13-1", "0?continue") in new stack
-- Executing [s@macro-user-callerid:11] Set("EXTRA/13-1", "__TTL=64") in new stack
-- Executing [s@macro-user-callerid:12] GotoIf("EXTRA/13-1", "1?continue") in new stack
-- Goto (macro-user-callerid,s,19)
-- Executing [s@macro-user-callerid:19] Set("EXTRA/13-1", "CALLERID(number)=0449xxxxxx") in new stack
-- Executing [s@macro-user-callerid:20] Set("EXTRA/13-1", "CALLERID(name)=Juan Bustamante-Juan Bustamante") in new stack
-- Executing [s@macro-user-callerid:21] NoOp("EXTRA/13-1", "Using CallerID "Juan Bustamante-Juan Bustamante" <0449xxxxxx>") in new stack
-- Executing [s@macro-exten-vm:2] Set("EXTRA/13-1", "RingGroupMethod=none") in new stack
-- Executing [s@macro-exten-vm:3] Set("EXTRA/13-1", "VMBOX=novm") in new stack
-- Executing [s@macro-exten-vm:4] Set("EXTRA/13-1", "__EXTTOCALL=201") in new stack
-- Executing [s@macro-exten-vm:5] Set("EXTRA/13-1", "CFUEXT=") in new stack
-- Executing [s@macro-exten-vm:6] Set("EXTRA/13-1", "CFBEXT=") in new stack
-- Executing [s@macro-exten-vm:7] Set("EXTRA/13-1", "RT=""") in new stack
-- Executing [s@macro-exten-vm:8] Macro("EXTRA/13-1", "record-enable,201,IN") in new stack
-- Executing [s@macro-record-enable:1] GotoIf("EXTRA/13-1", "1?check") in new stack
-- Goto (macro-record-enable,s,4)
-- Executing [s@macro-record-enable:4] ExecIf("EXTRA/13-1", "0?MacroExit()") in new stack
-- Executing [s@macro-record-enable:5] GotoIf("EXTRA/13-1", "0?Group:OUT") in new stack
-- Goto (macro-record-enable,s,15)
-- Executing [s@macro-record-enable:15] GotoIf("EXTRA/13-1", "1?IN") in new stack
-- Goto (macro-record-enable,s,20)
-- Executing [s@macro-record-enable:20] ExecIf("EXTRA/13-1", "0?MacroExit()") in new stack
-- Executing [s@macro-record-enable:21] NoOp("EXTRA/13-1", "Recording enable for 201") in new stack
-- Executing [s@macro-record-enable:22] Set("EXTRA/13-1", "CALLFILENAME=20120706-130120-1341543680.8") in new stack
-- Executing [s@macro-record-enable:23] MixMonitor("EXTRA/13-1", "20120706-130120-1341543680.8.wav,,") in new stack
-- Executing [s@macro-record-enable:24] Set("EXTRA/13-1", "CDR(userfield)=audio:20120706-130120-1341543680.8.wav") in new stack
-- Executing [s@macro-record-enable:25] MacroExit("EXTRA/13-1", "") in new stack
-- Executing [s@macro-exten-vm:9] Macro("EXTRA/13-1", "dial-one,"",Ttwr,201") in new stack
-- Executing [s@macro-dial-one:1] Set("EXTRA/13-1", "DEXTEN=201") in new stack
-- Executing [s@macro-dial-one:2] Set("EXTRA/13-1", "DIALSTATUS_CW=") in new stack
-- Executing [s@macro-dial-one:3] GosubIf("EXTRA/13-1", "0?screen,1") in new stack
-- Executing [s@macro-dial-one:4] GosubIf("EXTRA/13-1", "0?cf,1") in new stack
-- Executing [s@macro-dial-one:5] GotoIf("EXTRA/13-1", "1?skip1") in new stack
-- Goto (macro-dial-one,s,8)
-- Executing [s@macro-dial-one:8] GotoIf("EXTRA/13-1", "0?nodial") in new stack
-- Executing [s@macro-dial-one:9] GotoIf("EXTRA/13-1", "0?continue") in new stack
-- Executing [s@macro-dial-one:10] Set("EXTRA/13-1", "EXTHASCW=") in new stack
-- Executing [s@macro-dial-one:11] GotoIf("EXTRA/13-1", "1?next1:cwinusebusy") in new stack
-- Goto (macro-dial-one,s,12)
-- Executing [s@macro-dial-one:12] GotoIf("EXTRA/13-1", "0?docfu:skip3") in new stack
-- Goto (macro-dial-one,s,16)
-- Executing [s@macro-dial-one:16] GotoIf("EXTRA/13-1", "1?next2:continue") in new stack
-- Goto (macro-dial-one,s,17)
-- Executing [s@macro-dial-one:17] GotoIf("EXTRA/13-1", "1?continue") in new stack
-- Goto (macro-dial-one,s,25)
-- Executing [s@macro-dial-one:25] GotoIf("EXTRA/13-1", "0?nodial") in new stack
-- Executing [s@macro-dial-one:26] GosubIf("EXTRA/13-1", "1?dstring,1:dlocal,1") in new stack
-- Executing [dstring@macro-dial-one:1] Set("EXTRA/13-1", "DSTRING=") in new stack
-- Executing [dstring@macro-dial-one:2] Set("EXTRA/13-1", "DEVICES=201") in new stack
-- Executing [dstring@macro-dial-one:3] ExecIf("EXTRA/13-1", "0?Return()") in new stack
-- Executing [dstring@macro-dial-one:4] ExecIf("EXTRA/13-1", "0?Set(DEVICES=01)") in new stack
-- Executing [dstring@macro-dial-one:5] Set("EXTRA/13-1", "LOOPCNT=1") in new stack
-- Executing [dstring@macro-dial-one:6] Set("EXTRA/13-1", "ITER=1") in new stack
-- Executing [dstring@macro-dial-one:7] Set("EXTRA/13-1", "THISDIAL=SIP/201") in new stack
-- Executing [dstring@macro-dial-one:8] GosubIf("EXTRA/13-1", "1?zap2dahdi,1") in new stack
-- Executing [zap2dahdi@macro-dial-one:1] ExecIf("EXTRA/13-1", "0?Return()") in new stack
-- Executing [zap2dahdi@macro-dial-one:2] Set("EXTRA/13-1", "NEWDIAL=") in new stack
-- Executing [zap2dahdi@macro-dial-one:3] Set("EXTRA/13-1", "LOOPCNT2=1") in new stack
-- Executing [zap2dahdi@macro-dial-one:4] Set("EXTRA/13-1", "ITER2=1") in new stack
-- Executing [zap2dahdi@macro-dial-one:5] Set("EXTRA/13-1", "THISPART2=SIP/201") in new stack
-- Executing [zap2dahdi@macro-dial-one:6] ExecIf("EXTRA/13-1", "0?Set(THISPART2=DAHDI/201)") in new stack
-- Executing [zap2dahdi@macro-dial-one:7] Set("EXTRA/13-1", "NEWDIAL=SIP/201&") in new stack
-- Executing [zap2dahdi@macro-dial-one:8] Set("EXTRA/13-1", "ITER2=2") in new stack
-- Executing [zap2dahdi@macro-dial-one:9] GotoIf("EXTRA/13-1", "0?begin2") in new stack
-- Executing [zap2dahdi@macro-dial-one:10] Set("EXTRA/13-1", "THISDIAL=SIP/201") in new stack
-- Executing [zap2dahdi@macro-dial-one:11] Return("EXTRA/13-1", "") in new stack
-- Executing [dstring@macro-dial-one:9] Set("EXTRA/13-1", "DSTRING=SIP/201&") in new stack
-- Executing [dstring@macro-dial-one:10] Set("EXTRA/13-1", "ITER=2") in new stack
-- Executing [dstring@macro-dial-one:11] GotoIf("EXTRA/13-1", "0?begin") in new stack
-- Executing [dstring@macro-dial-one:12] Set("EXTRA/13-1", "DSTRING=SIP/201") in new stack
-- Executing [dstring@macro-dial-one:13] Return("EXTRA/13-1", "") in new stack
-- Executing [s@macro-dial-one:27] GotoIf("EXTRA/13-1", "0?nodial") in new stack
-- Executing [s@macro-dial-one:28] GotoIf("EXTRA/13-1", "1?skiptrace") in new stack
-- Goto (macro-dial-one,s,30)
-- Executing [s@macro-dial-one:30] Set("EXTRA/13-1", "D_OPTIONS=Ttwr") in new stack
-- Executing [s@macro-dial-one:31] ExecIf("EXTRA/13-1", "0?SIPAddHeader(Alert-Info: )") in new stack
-- Executing [s@macro-dial-one:32] ExecIf("EXTRA/13-1", "0?SIPAddHeader()") in new stack
-- Executing [s@macro-dial-one:33] ExecIf("EXTRA/13-1", "0?Set(CHANNEL(musicclass)=)") in new stack
-- Executing [s@macro-dial-one:34] GosubIf("EXTRA/13-1", "0?qwait,1") in new stack
-- Executing [s@macro-dial-one:35] Set("EXTRA/13-1", "__CWIGNORE=") in new stack
-- Executing [s@macro-dial-one:36] Set("EXTRA/13-1", "__KEEPCID=TRUE") in new stack
-- Executing [s@macro-dial-one:37] Dial("EXTRA/13-1", "SIP/201,"",Ttwr") in new stack
== Using SIP RTP TOS bits 184
== Using SIP RTP CoS mark 5
-- Called SIP/201
== Begin MixMonitor Recording EXTRA/13-1
-- SIP/201-00000001 is ringing
 
Re:Selective call redirection with g400p GSM card

Below is what happens when I dial to one of the PSTN lines with assigned DID and same announcement as destination.

-- Starting simple switch on 'DAHDI/2-1'
-- Executing [s@from-zaptel:1] NoOp("DAHDI/2-1", "Entering from-dahdi with DID == ") in new stack
-- Executing [s@from-zaptel:2] Ringing("DAHDI/2-1", "") in new stack
-- Executing [s@from-zaptel:3] Set("DAHDI/2-1", "DID=s") in new stack
-- Executing [s@from-zaptel:4] NoOp("DAHDI/2-1", "DID is now s") in new stack
-- Executing [s@from-zaptel:5] GotoIf("DAHDI/2-1", "1?dahdiok:checkzap") in new stack
-- Goto (from-zaptel,s,9)
-- Executing [s@from-zaptel:9] NoOp("DAHDI/2-1", "Is a DAHDI Channel") in new stack
-- Executing [s@from-zaptel:10] Set("DAHDI/2-1", "CHAN=2-1") in new stack
-- Executing [s@from-zaptel:11] Set("DAHDI/2-1", "CHAN=2") in new stack
-- Executing [s@from-zaptel:12] Macro("DAHDI/2-1", "from-dahdi-2,s,1") in new stack
-- Executing [s@macro-from-dahdi-2:1] NoOp("DAHDI/2-1", "Entering macro-from-dahdi-2 with DID = s and setting to: 073209xxxx") in new stack
-- Executing [s@macro-from-dahdi-2:2] Set("DAHDI/2-1", "__FROM_DID=073209xxxx") in new stack
-- Executing [s@macro-from-dahdi-2:3] Goto("DAHDI/2-1", "from-trunk,073209xxxx,1") in new stack
-- Goto (from-trunk,073209xxxx,1)
== Channel 'DAHDI/2-1' jumping out of macro 'from-dahdi-2'
-- Executing [073209xxxx@from-trunk:1] Set("DAHDI/2-1", "__FROM_DID=073209xxxx") in new stack
-- Executing [073209xxxx@from-trunk:2] Gosub("DAHDI/2-1", "app-blacklist-check,s,1") in new stack
-- Executing [s@app-blacklist-check:1] GotoIf("DAHDI/2-1", "0?blacklisted") in new stack
-- Executing [s@app-blacklist-check:2] Set("DAHDI/2-1", "CALLED_BLACKLIST=1") in new stack
-- Executing [s@app-blacklist-check:3] Return("DAHDI/2-1", "") in new stack
-- Executing [073209xxxx@from-trunk:3] ExecIf("DAHDI/2-1", "1 ?Set(CALLERID(name)=)") in new stack
-- Executing [073209xxxx@from-trunk:4] Set("DAHDI/2-1", "__CALLINGPRES_SV=allowed_not_screened") in new stack
-- Executing [073209xxxx@from-trunk:5] Set("DAHDI/2-1", "CALLERPRES()=allowed_not_screened") in new stack
-- Executing [073209xxxx@from-trunk:6] Goto("DAHDI/2-1", "app-announcement-1,s,1") in new stack
-- Goto (app-announcement-1,s,1)
-- Executing [s@app-announcement-1:1] GotoIf("DAHDI/2-1", "0?begin") in new stack
-- Executing [s@app-announcement-1:2] Answer("DAHDI/2-1", "") in new stack
-- Executing [s@app-announcement-1:3] Wait("DAHDI/2-1", "1") in new stack
-- Executing [s@app-announcement-1:4] NoOp("DAHDI/2-1", "Playing announcement OutOfBusinnesHours") in new stack
-- Executing [s@app-announcement-1:5] Playback("DAHDI/2-1", "en/option-is-invalid&en/our-business-hours-are&en/from&en/digits/8&en/digits/30&en/digits/a-m&en/digits/2&en/digits/5&en/digits/30&en/pls-hold-while-try,noanswer") in new stack
-- <DAHDI/2-1> Playing 'en/option-is-invalid.gsm' (language 'au')
-- <DAHDI/2-1> Playing 'en/our-business-hours-are.gsm' (language 'au')
-- <DAHDI/2-1> Playing 'en/from.gsm' (language 'au')
-- <DAHDI/2-1> Playing 'en/digits/8.gsm' (language 'au')
-- <DAHDI/2-1> Playing 'en/digits/30.gsm' (language 'au')
-- <DAHDI/2-1> Playing 'en/digits/a-m.gsm' (language 'au')
-- <DAHDI/2-1> Playing 'en/digits/2.gsm' (language 'au')
-- <DAHDI/2-1> Playing 'en/digits/5.gsm' (language 'au')
 
Re:Selective call redirection with g400p GSM card

I have though on a solution, just want to know if there is a better solution B)
Paste the output for:
cat /etc/asterisk/extra-channels.conf
cat /etc/asterisk/chan_extra.conf
 
Re:Selective call redirection with g400p GSM card

extra-channels.conf

; Autogenerated by /usr/sbin/dahdi_genconf on Wed Jun 27 14:21:29 2012
; If you edit this file and execute /usr/sbin/dahdi_genconf again,
; your manual changes will be LOST.
; Dahdi Channels Configurations (chan_extra.conf)
;
; This is not intended to be a complete chan_extra.conf. Rather, it is intended
; to be #include-d by /etc/chan_extra.conf that will include the global settings
;


; Span 2: opvxg4xx/0/1 "OpenVox G400P GSM/CDMA PCI Card 0"
group=12
context=from-pstn
signalling = gsm
;pin=1234
channel => 13
context = default
group = 63

; Span 3: opvxg4xx/0/2 "OpenVox G400P GSM/CDMA PCI Card 0"
group=13
context=from-pstn
signalling = gsm
;pin=1234
channel => 15
context = default
group = 63

; Span 4: opvxg4xx/0/3 "OpenVox G400P GSM/CDMA PCI Card 0"
group=14
context=from-pstn
signalling = gsm
;pin=1234
channel => 17
context = default
group = 63

---------------------------------------------------------------------------------------------------------------------------------------
chan_extra.conf

;
; DAHDI telephony
;
; Configuration file
;
; You need to restart Asterisk to re-configure the DAHDI channel
; CLI> module reload chan_dahdi.so
; will reload the configuration file,
; but not all configuration options are
; re-configured during a reload (signalling, as well as
; PRI and SS7-related settings cannot be changed on a
; reload.
;
; This file documents many configuration variables. Normally unless you
; know what a variable means or that it should be changed, there's no
; reason to unrem lines.
;
; remmed-out examples below (those lines that begin with a ';' but no
; space afterwards) typically show a value that is not the defauult value,
; but would make sense under cetain circumstances. The default values
; are usually sane. Thus you should typically not touch them unless you
; know what they mean or you know you should change them.


[trunkgroups]
;
; Trunk groups are used for NFAS or GR-303 connections.
;
; Group: Defines a trunk group.
; trunkgroup => <trunkgroup>,<dchannel>[,<backup1>...]
;
; trunkgroup is the numerical trunk group to create
; dchannel is the DAHDI channel which will have the
; d-channel for the trunk.
; backup1 is an optional list of backup d-channels.
;
;trunkgroup => 1,24,48
;trunkgroup => 1,24
;
; Spanmap: Associates a span with a trunk group
; spanmap => <dahdispan>,<trunkgroup>[,<logicalspan>]
;
; dahdispan is the DAHDI 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]
context=from-zaptel
useincommingcalleridonzaptransfer=yes
language=au


;
; Default language
;
;language=en
;
; Context for calls. Defaults to 'default'
;
;context=incoming
;
; Switchtype: Only used for PRI.
;
; national: National ISDN 2 (default)
; dms100: Nortel DMS100
; 4ess: AT&T 4ESS
; 5ess: Lucent 5ESS
; euroisdn: EuroISDN (common in Europe)
; ni1: Old National ISDN 1
; qsig: Q.SIG
;
;switchtype=euroisdn
;
; Some switches (AT&T especially) require network specific facility IE
; supported values are currently 'none', 'sdn', 'megacom', 'tollfreemegacom', 'accunet'
;
; nsf cannot be changed on a reload.
;
;nsf=none
;
; PRI Dialplan: The ISDN-level Type Of Number (TON) or numbering plan, used for
; the dialed number. For most installations, leaving this as 'unknown' (the
; default) works in the most cases. In some very unusual circumstances, you
; may need to set this to 'dynamic' or 'redundant'. Note that if you set one
; of the others, you will be unable to dial another class of numbers. For
; example, if you set 'national', you will be unable to dial local or
; international numbers.
;
; PRI Local Dialplan: Only RARELY used for PRI (sets the calling number's
; numbering plan). In North America, the typical use is sending the 10 digit
; callerID number and setting the prilocaldialplan to 'national' (the default).
; Only VERY rarely will you need to change this.
;
; Neither pridialplan nor prilocaldialplan can be changed on reload.
;
; unknown: Unknown
; private: Private ISDN
; local: Local ISDN
; national: National ISDN
; international: International ISDN
; dynamic: Dynamically selects the appropriate dialplan
; redundant: Same as dynamic, except that the underlying number is not
; changed (not common)
;
;pridialplan=unknown
;prilocaldialplan=national
;
; pridialplan may be also set at dialtime, by prefixing the dialled number with
; one of the following letters:
; U - Unknown
; I - International
; N - National
; L - Local (Net Specific)
; S - Subscriber
; V - Abbreviated
; R - Reserved (should probably never be used but is included for completeness)
;
; Additionally, you may also set the following NPI bits (also by prefixing the
; dialled string with one of the following letters):
; u - Unknown
; e - E.163/E.164 (ISDN/telephony)
; x - X.121 (Data)
; f - F.69 (Telex)
; n - National
; p - Private
; r - Reserved (should probably never be used but is included for completeness)
;
; You may also set the prilocaldialplan in the same way, but by prefixing the
; Caller*ID Number, rather than the dialled number. Please note that telcos
; which require this kind of additional manipulation of the TON/NPI are *rare*.
; Most telco PRIs will work fine simply by setting pridialplan to unknown or
; dynamic.
;
;
; PRI caller ID prefixes based on the given TON/NPI (dialplan)
; This is especially needed for EuroISDN E1-PRIs
;
; None of the prefix settings can be changed on reload.
;
; sample 1 for Germany
;internationalprefix = 00
;nationalprefix = 0
;localprefix = 0711
;privateprefix = 07115678
;unknownprefix =
;
; sample 2 for Germany
;internationalprefix = +
;nationalprefix = +49
;localprefix = +49711
;privateprefix = +497115678
;unknownprefix =
;
; PRI resetinterval: sets the time in seconds between restart of unused
; B channels; defaults to 'never'.
;
;resetinterval = 3600
;
; Overlap dialing mode (sending overlap digits)
; Cannot be changed on a reload.
;
; incoming: incoming direction only
; outgoing: outgoing direction only
; no: neither direction
; yes or both: both directions
;
;overlapdial=yes
;
; Allow inband audio (progress) when a call is RELEASEd by the far end of a PRI
;
;inbanddisconnect=yes
;
; PRI Out of band indications.
; Enable this to report Busy and Congestion on a PRI using out-of-band
; notification. Inband indication, as used by Asterisk doesn't seem to work
; with all telcos.
;
; outofband: Signal Busy/Congestion out of band with RELEASE/DISCONNECT
; inband: Signal Busy/Congestion using in-band tones (default)
;
; priindication cannot be changed on a reload.
;
;priindication = outofband
;
; If you need to override the existing channels selection routine and force all
; PRI channels to be marked as exclusively selected, set this to yes.
;
; priexclusive cannot be changed on a reload.
;
;priexclusive = yes
;
; ISDN Timers
; All of the ISDN timers and counters that are used are configurable. Specify
; the timer name, and its value (in ms for timers).
; K: Layer 2 max number of outstanding unacknowledged I frames (default 7)
; N200: Layer 2 max number of retransmissions of a frame (default 3)
; T200: Layer 2 max time before retransmission of a frame (default 1000 ms)
; T203: Layer 2 max time without frames being exchanged (default 10000 ms)
; T305: Wait for DISCONNECT acknowledge (default 30000 ms)
; T308: Wait for RELEASE acknowledge (default 4000 ms)
; T309: Maintain active calls on Layer 2 disconnection (default -1,
; Asterisk clears calls)
; EuroISDN: 6000 to 12000 ms, according to (N200 + 1) x T200 + 2s
; May vary in other ISDN standards (Q.931 1993 : 90000 ms)
; T313: Wait for CONNECT acknowledge, CPE side only (default 3000 ms)
;
;pritimer => t200,1000
;pritimer => t313,4000
;
; To enable transmission of facility-based ISDN supplementary services (such
; as caller name from CPE over facility), enable this option.
; Cannot be changed on a reload.
;
;facilityenable = yes
;
; pritimer cannot be changed on a reload.
;
; Signalling method. The default is "auto". Valid values:
; auto: Use the current value from DAHDI.
; em: E & M
; em_e1: E & M E1
; em_w: E & M Wink
; featd: Feature Group D (The fake, Adtran style, DTMF)
; featdmf: Feature Group D (The real thing, MF (domestic, US))
; featdmf_ta: Feature Group D (The real thing, MF (domestic, US)) through
; a Tandem Access point
; featb: Feature Group B (MF (domestic, US))
; fgccama Feature Group C-CAMA (DP DNIS, MF ANI)
; fgccamamf Feature Group C-CAMA MF (MF DNIS, MF ANI)
; 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))
; e911: E911 (MF) style signalling
; ss7: Signalling System 7
;
; 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)
; ss7: Signalling System 7
;
; signalling of a channel can not be changed on a reload.
;
;signalling=fxo_ls
;
; If you have an outbound signalling format that is different from format
; specified above (but compatible), you can specify outbound signalling format,
; (see below). The 'signalling' format specified will be the inbound signalling
; format. If you only specify 'signalling', then it will be the format for
; both inbound and outbound.
;
; outsignalling can only be one of:
; em, em_e1, em_w, sf, sf_w, sf_featd, sf_featdmf, sf_featb, featd,
; featdmf, featdmf_ta, e911, fgccama, fgccamamf
;
; outsignalling cannot be changed on a reload.
;
;signalling=featdmf
;
;outsignalling=featb
;
; For Feature Group D Tandem access, to set the default CIC and OZZ use these
; parameters (Will not be updated on reload):
;
;defaultozz=0000
;defaultcic=303
;
; A variety of timing parameters can be specified as well
; The default values for those are "-1", which is to use the
; compile-time defaults of the DAHDI kernel modules. The timing
; parameters, (with the standard default from DAHDI):
;
; 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)
;
; None of them will update on a reload.
;
; How long generated tones (DTMF and MF) will be played on the channel
; (in milliseconds).
;
; This is a global, rather than a per-channel setting. It will not be
; updated on a reload.
;
;toneduration=100
;
; Whether or not to do distinctive ring detection on FXO lines:
;
;usedistinctiveringdetection=yes
;
; enable dring detection after caller ID for those countries like Australia
; where the ring cadence is changed *after* the caller ID spill:
;
;distinctiveringaftercid=yes
;
; Whether or not to use caller ID:
;
usecallerid=yes
;
; Hide the name part and leave just the number part of the caller ID
; string. Only applies to PRI channels.
;hidecalleridname=yes
;
; Type of caller ID signalling in use
; bell = bell202 as used in US (default)
; v23 = v23 as used in the UK
; v23_jp = v23 as used in Japan
; dtmf = DTMF as used in Denmark, Sweden and Netherlands
; smdi = Use SMDI for caller ID. Requires SMDI to be enabled (usesmdi).
;
;cidsignalling=v23
;
; What signals the start of caller ID
; ring = a ring signals the start (default)
; polarity = polarity reversal signals the start
; polarity_IN = polarity reversal signals the start, for India,
; for dtmf dialtone detection; using DTMF.
; (see doc/India-CID.txt)
;
;cidstart=polarity
;
; Whether or not to hide outgoing caller ID (Override with *67 or *82)
; (If your dialplan doesn't catch it)
;
;hidecallerid=yes
;
; The following option enables receiving MWI on FXO lines. The default
; value is no.
; The mwimonitor can take the following values
; no - No mwimonitoring occurs. (default)
; yes - The same as specifying fsk
; fsk - the FXO line is monitored for MWI FSK spills
; fsk,rpas - the FXO line is monitored for MWI FSK spills preceded
; by a ring pulse alert signal.
; neon - The fxo line is monitored for the presence of NEON pulses
; indicating MWI.
; When detected, an internal Asterisk MWI event is generated so that any other
; part of Asterisk that cares about MWI state changes is notified, just as if
; the state change came from app_voicemail.
; For FSK MWI Spills, the energy level that must be seen before starting the
; MWI detection process can be set with 'mwilevel'.
;
;mwimonitor=no
;mwilevel=512
;
; This option is used in conjunction with mwimonitor. This will get executed
; when incoming MWI state changes. The script is passed 2 arguments. The
; first is the corresponding mailbox, and the second is 1 or 0, indicating if
; there are messages waiting or not.
;
;mwimonitornotify=/usr/local/bin/dahdinotify.sh
;
; Whether or not to enable call waiting on internal extensions
; With this set to 'yes', busy extensions will hear the call-waiting
; tone, and can use hook-flash to switch between callers. The Dial()
; app will not return the "BUSY" result for extensions.
;
callwaiting=yes
;
; Whether or not restrict outgoing caller ID (will be sent as ANI only, not
; available for the user)
; Mostly use with FXS ports
; Does nothing. Use hidecallerid instead.
;
;restrictcid=no
;
; Whether or not to use the caller ID presentation from the Asterisk channel
; for outgoing calls.
; See dialplan function CALLERID(pres) for more information.
; Only applies to PRI and SS7 channels.
;
usecallingpres=yes
;
; Some countries (UK) have ring tones with different ring tones (ring-ring),
; which means the caller ID needs to be set later on, and not just after
; the first ring, as per the default (1).
;
;sendcalleridafter = 2
;
;
; Support caller ID on Call Waiting
;
callwaitingcallerid=yes
;
; Support three-way calling
;
threewaycalling=yes
;
; For FXS ports (either direct analog or over T1/E1):
; Support flash-hook call transfer (requires three way calling)
; Also enables call parking (overrides the 'canpark' parameter)
;
; For digital ports using ISDN PRI protocols:
; Support switch-side transfer (called 2BCT, RLT or other names)
; This setting must be enabled on both ports involved, and the
; 'facilityenable' setting must also be enabled to allow sending
; the transfer to the ISDN switch, since it sent in a FACILITY
; message.
;
transfer=yes
;
; Allow call parking
; ('canpark=no' is overridden by 'transfer=yes')
;
canpark=yes
;
; Support call forward variable
;
cancallforward=yes
;
; Whether or not to support Call Return (*69, if your dialplan doesn't
; catch this first)
;
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 received 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.
;
; Note that when setting the number of taps, the number 256 does not translate
; to 256 ms of echo cancellation. echocancel=256 means 256 / 8 = 32 ms.
;
; Note that if any of your DAHDI cards have hardware echo cancellers,
; then this setting only turns them on and off; numeric settings will
; be treated as "yes". There are no special settings required for
; hardware echo cancellers; when present and enabled in their kernel
; modules, they take precedence over the software echo canceller compiled
; into DAHDI automatically.
;
;
echocancel=yes
;
; Some DAHDI echo cancellers (software and hardware) support adjustable
; parameters; these parameters can be supplied as additional options to
; the 'echocancel' setting. Note that Asterisk does not attempt to
; validate the parameters or their values, so if you supply an invalid
; parameter you will not know the specific reason it failed without
; checking the kernel message log for the error(s) put there by DAHDI.
;
;echocancel=128,param1=32,param2=0,param3=14
;
; Generally, it is not necessary (and in fact undesirable) to echo cancel when
; the circuit path is entirely TDM. You may, however, change this behavior
; by enabling the echo canceller 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
; DAHDI 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)
;
; WARNING: In some cases this option can make echo worse! If you are
; trying to debug an echo problem, it is worth checking to see if your echo
; is better with the option set to yes or no. Use whatever setting gives
; the best results.
;
; Note that these parameters do not apply to hardware echo cancellers.
;
;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)
;
; Gain Settings: increasing / decreasing the volume level on a channel.
; The values are in db (decibells). A positive number
; increases the volume level on a channel, and a
; negavive value decreases volume level.
;
; There are several independent gain settings:
; rxgain: gain for the rx (receive - into Asterisk) channel. Default: 0.0
; txgain: gain for the tx (transmit - out of Asterisk Asterisk) channel.
; Default: 0.0
; cid_rxgain: set the gain just for the caller ID sounds Asterisk
; emits. Default: 5.0 .

;rxgain=2.0
;txgain=3.0
;
; Logical groups can be assigned to allow outgoing roll-over. Groups range
; from 0 to 63, and multiple groups can be specified. By default the
; channel is not a member of any group.
;
; Note that an explicit empty value for 'group' is invalid, and will not
; override a previous non-empty one. The same applies to callgroup and
; pickupgroup as well.
;
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. Groups range from 0 to 63.
;
callgroup=1
pickupgroup=1

; Channel variable to be set for all calls from this channel
;setvar=CHANNEL=42
;setvar=ATTENDED_TRANSFER_COMPLETE_SOUND=beep ; This channel variable will
; cause the given audio file to
; be played upon completion of
; an attended transfer.

;
; Specify whether the channel should be answered immediately or if the simple
; switch should provide dialtone, read digits, etc.
; Note: If immediate=yes the dialplan execution will always start at extension
; 's' priority 1 regardless of the dialed number!
;
;immediate=yes
;
; Specify whether flash-hook transfers to 'busy' channels should complete or
; return to the caller performing the transfer (default is yes).
;
;transfertobusy=no
;
; caller ID can be set to "asreceived" or a specific number if you want to
; override it. Note that "asreceived" only applies to trunk interfaces.
; fullname sets just the
;
; fullname: sets just the name part.
; cid_number: sets just the number part:
;
;callerid = 123456
;
;callerid = My Name <2564286000>
; Which can also be written as:
;cid_number = 2564286000
;fullname = My Name
;
;callerid = asreceived
;
; should we use the caller ID from incoming call on DAHDI transfer?
;
;useincomingcalleridondahditransfer = yes
;
; 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
;
; SMDI (Simplified Message Desk Interface) can be enabled on a per-channel
; basis if you would like that channel to behave like an SMDI message desk.
; The SMDI port specified should have already been defined in smdi.conf. The
; default port is /dev/ttyS0.
;
;usesmdi=yes
;smdiport=/dev/ttyS0
;
; 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. This enables listening for
; the beep-beep busy pattern.
;
;busydetect=yes
;
; If busydetect is enabled, it is also possible to specify how many busy tones
; to wait for before hanging up. The default is 3, but it might be
; safer to set to 6 or even 8. Mind that the higher the number, the more
; time that will be needed to hangup a channel, but lowers the probability
; that you will get random hangups.
;
;busycount=6
;
; If busydetect is enabled, it is also possible to specify the cadence of your
; busy signal. In many countries, it is 500msec on, 500msec off. Without
; busypattern specified, we'll accept any regular sound-silence pattern that
; repeats <busycount> times as a busy signal. If you specify busypattern,
; then we'll further check the length of the sound (tone) and silence, which
; will further reduce the chance of a false positive.
;
;busypattern=500,500
;
; NOTE: In make menuselect, you'll find further options to tweak the busy
; detector. If your country has a busy tone with the same length tone and
; silence (as many countries do), consider enabling the
; BUSYDETECT_COMPARE_TONE_AND_SILENCE option.
;
; To further detect which hangup tone your telco provider is sending, it is
; useful to use the ztmonitor utility to record the audio that main/dsp.c
; is receiving after the caller hangs up.
;
; Use a polarity reversal to mark when a outgoing call is answered by the
; remote party.
;
;answeronpolarityswitch=yes
;
; In some countries, a polarity reversal is used to signal the disconnect of a
; phone line. If the hanguponpolarityswitch option is selected, the call will
; be considered "hung up" on a polarity reversal.
;
;hanguponpolarityswitch=yes
;
; polarityonanswerdelay: minimal time period (ms) between the answer
; polarity switch and hangup polarity switch.
; (default: 600ms)
;
; 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".
;
; progzone also affects the pattern used for buzydetect (unless
; busypattern is set explicitly). The possible values are:
; us (default)
; ca (alias for 'us')
; cr (Costa Rica)
; br (Brazil, alias for 'cr')
; uk
;
; 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=uk
;
; Set the tonezone. Equivalent of the defaultzone settings in
; /etc/dahdi/system.conf. This sets the tone zone by number.
; Note that you'd still need to load tonezones (loadzone in
; /etc/dahdi/system.conf).
; The default is -1: not to set anything.
;tonezone = 0 ; 0 is US
;
; FXO (FXS signalled) devices must have a timeout to determine if there was a
; hangup before the line was answered. This value can be tweaked to shorten
; how long it takes before DAHDI considers a non-ringing line to have hungup.
;
; ringtimeout will not update on a reload.
;
;ringtimeout=8000
;
; For FXO (FXS signalled) devices, whether to use pulse dial instead of DTMF
; Pulse digits from phones (FXS devices, FXO signalling) are always
; detected.
;
;pulsedial=yes
;
; For fax detection, uncomment one of the following lines. The default is *OFF*
;
;faxdetect=both
;faxdetect=incoming
;faxdetect=outgoing
;faxdetect=no
;
; This option specifies a preference for which music on hold class this channel
; should listen to when put on hold if the music class has not been set on the
; channel with Set(CHANNEL(musicclass)=whatever) in the dialplan, and the peer
; channel putting this one on hold did not suggest a music class.
;
; If this option is set to "passthrough", then the hold message will always be
; passed through as signalling instead of generating hold music locally. This
; setting is only valid when used on a channel that uses digital signalling.
;
; This option may be set globally or on a per-channel basis.
;
;mohinterpret=default
;
; This option specifies which music on hold class to suggest to the peer channel
; when this channel places the peer on hold. This option may be set globally,
; or on a per-channel basis.
;
;mohsuggest=default
;
; PRI channels can have an idle extension and a minunused number. So long as
; at least "minunused" channels are idle, chan_dahdi 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.
;
; Those settings cannot be changed on reload.
;
;idledial=6999
;idleext=6999@dialout
;minunused=2
;minidle=1
;
; Configure jitter buffers in DAHDI (each one is 20ms, default is 4)
; This is set globally, rather than per-channel.
;
;jitterbuffers=4
;
;------------------------------ JITTER BUFFER CONFIGURATION --------------------------
; jbenable = yes ; Enables the use of a jitterbuffer on the receiving side of a
; DAHDI channel. Defaults to "no". An enabled jitterbuffer will
; be used only if the sending side can create and the receiving
; side can not accept jitter. The DAHDI channel can't accept jitter,
; thus an enabled jitterbuffer on the receive DAHDI side will always
; be used if the sending side can create jitter.

; jbmaxsize = 200 ; Max length of the jitterbuffer in milliseconds.

; jbresyncthreshold = 1000 ; Jump in the frame timestamps over which the jitterbuffer is
; resynchronized. Useful to improve the quality of the voice, with
; big jumps in/broken timestamps, usually sent from exotic devices
; and programs. Defaults to 1000.

; jbimpl = fixed ; Jitterbuffer implementation, used on the receiving side of a DAHDI
; channel. Two implementations are currently available - "fixed"
; (with size always equals to jbmax-size) and "adaptive" (with
; variable size, actually the new jb of IAX2). Defaults to fixed.

; jblog = no ; Enables jitterbuffer frame logging. Defaults to "no".
;-----------------------------------------------------------------------------------
;
; 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 caller ID spill is
; to be placed. Also, if you define any custom cadences, the default cadences
; will be turned off.
;
; This setting is global, rather than per-channel. It will not update on
; a reload.
;
; 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" <(630) 372-1564>
;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
;signaling=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 cannot be changed on a reload.
;
; switchtype = national
; signalling = pri_cpe
; group = 2
; channel => 1-23

;

; Used for distinctive 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.
;
; dringXrange is used to change the acceptable ranges for "tone offsets". Defaults to 10.
; Note: a range of 0 is NOT what you might expect - it instead forces it to the default.
; A range of -1 will force it to always match.
; Anything lower than -1 would presumably cause it to never match.
;
;dring1=95,0,0
;dring1context=internal1
;dring1range=10
;dring2=325,95,0
;dring2context=internal2
;dring2range=10
; If no pattern is matched here is where we go.
;context=default
;channel => 1

; ---------------- Options for use with signalling=ss7 -----------------
; None of them can be changed by a reload.
;
; Variant of SS7 signalling:
; Options are itu and ansi
;ss7type = itu

; SS7 Called Nature of Address Indicator
;
; unknown: Unknown
; subscriber: Subscriber
; national: National
; international: International
; dynamic: Dynamically selects the appropriate dialplan
;
;ss7_called_nai=dynamic
;
; SS7 Calling Nature of Address Indicator
;
; unknown: Unknown
; subscriber: Subscriber
; national: National
; international: International
; dynamic: Dynamically selects the appropriate dialplan
;
;ss7_calling_nai=dynamic
;
;
; sample 1 for Germany
;ss7_internationalprefix = 00
;ss7_nationalprefix = 0
;ss7_subscriberprefix =
;ss7_unknownprefix =
;

; This option is used to disable automatic sending of ACM when the call is started
; in the dialplan. If you do use this option, you will need to use the Proceeding()
; application in the dialplan to send ACM.
;ss7_explictacm=yes

; All settings apply to linkset 1
;linkset = 1

; Point code of the linkset. For ITU, this is the decimal number
; format of the point code. For ANSI, this can either be in decimal
; number format or in the xxx-xxx-xxx format
;pointcode = 1

; Point code of node adjacent to this signalling link (Possibly the STP between you and
; your destination). Point code format follows the same rules as above.
;adjpointcode = 2

; Default point code that you would like to assign to outgoing messages (in case of
; routing through STPs, or using A links). Point code format follows the same rules
; as above.
;defaultdpc = 3

; Begin CIC (Circuit indication codes) count with this number
;cicbeginswith = 1

; What the MTP3 network indicator bits should be set to. Choices are
; national, national_spare, international, international_spare
;networkindicator=international

; First signalling channel
;sigchan = 48

; Additional signalling channel for this linkset (So you can have a linkset
; with two signalling links in it). It seems like a silly way to do it, but
; for linksets with multiple signalling links, you add an additional sigchan
; line for every additional signalling link on the linkset.
;sigchan = 96

; Channels to associate with CICs on this linkset
;channel = 25-47
;
; For more information on setting up SS7, see the README file in libss7 or
; the doc/ss7.txt file in the Asterisk source tree.
; ----------------- SS7 Options ----------------------------------------

; Configuration Sections
; ~~~~~~~~~~~~~~~~~~~~~~
; You can also configure channels in a separate chan_dahdi.conf section. In
; this case the keyword 'channel' is not used. Instead the keyword
; 'dahdichan' is used (as in users.conf) - configuration is only processed
; in a section where the keyword dahdichan is used. It will only be
; processed in the end of the section. Thus the following section:
;
;[phones]
;echocancel = 64
;dahdichan = 1-8
;group = 1
;
; Is somewhat equivalent to the following snippet in the section
; [channels]:
;
;echocancel = 64
;group = 1
;channel => 1-8
;
; When starting a new section almost all of the configuration values are
; copied from their values at the end of the section [channels] in
; chan_dahdi.conf and [general] in users.conf - one section's configuration
; does not affect another one's.
;
; Instead of letting common configuration values "slide through" you can
; use configuration templates to easily keep the common part in one
; place and override where needed.
;
;[phones](!)
;echocancel = yes
;group = 0,4
;callgroup = 3
;pickupgroup = 3
;threewaycalling = yes
;transfer = yes
;context = phones
;faxdetect = incoming
;
;[phone-1](phones)
;dahdichan = 1
;callerid = My Name <501>
;mailbox = 501@mailboxes
;
;
;[fax](phones)
;dahdichan = 2
;faxdetect = no
;context = fax
;
;[phone-3](phones)
;dahdichan = 3
;pickupgroup = 3,4

#include extra-channels.conf
 
Re:Selective call redirection with g400p GSM card

You will need to do the same configurations as if it was an analog channel (from-zaptel, Zap channel DID, inbound route), and here comes the trick:

Paste the following context on /etc/asterisk/extensions_override_elastix.conf:
Code:
[from-dahdi]
include => from-dahdi-custom
exten => _X.,1,Set(DID=${EXTEN})
exten => _X.,n,Goto(s,1)
exten => s,1,Noop(Entering from-dahdi with DID == ${DID})
exten => s,n,Ringing()
exten => s,n,Set(DID=${IF($["${DID}"= ""]?s:${DID})})
exten => s,n,Noop(DID is now ${DID})
exten => s,n,GotoIf($[ "${CHANNEL:0:5}"="DAHDI" | "${CHANNEL:0:5}"="EXTRA" ]?dahdiok:checkzap)
exten => s,n(checkzap),GotoIf($["${CHANNEL:0:3}"="Zap"]?zapok:neither)
exten => s,n(neither),Goto(from-pstn,${DID},1)
exten => s,n,Macro(Hangupcall,dummy)
exten => s,n(dahdiok),Noop(Is a DAHDI Channel)
exten => s,n,Set(CHAN=${CHANNEL:6})
exten => s,n,Set(CHAN=${CUT(CHAN,-,1)})
exten => s,n,Macro(from-dahdi-${CHAN},${DID},1)
exten => s,n,Noop(Returned from Macro from-dahdi-${CHAN})
exten => s,n,Goto(from-pstn,${DID},1)
exten => s,n(zapok),Noop(Is a Zaptel Channel)
exten => s,n,Set(CHAN=${CHANNEL:4})
exten => s,n,Set(CHAN=${CUT(CHAN,-,1)})
exten => s,n,Macro(from-dahdi-${CHAN},${DID},1)
exten => s,n,Noop(Returned from Macro from-dahdi-${CHAN})
exten => s,n,Goto(from-pstn,${DID},1)
Then execute:
asterisk -rx "module reload"
 
Re:Selective call redirection with g400p GSM card

Worked like a charm! :)

Thanks heaps!
Juan
 
Works Fine in ELASTIX 2.4 :laugh:
 
My friend what about ecuador? I have issues with the outbound calls from an OpenVox G400P GSM/CDMA PCI Card, please help me I configured the inbound route and I receive calls with the IVR, but when I try to make calls I receive: Unable to create channel of type 'DAHDI' (cause 6 - Channel unacceptable. Please help
 
Last edited:
Status
Not open for further replies.

Latest Posts

Forum statistics

Threads
111,863
Messages
589,444
Members
164,702
Latest member
iamatlas