Hello all, first post, need help. I'm running a complex asterisk 1.8 install 
with five machines. I inherited it and don't fully understand it, nor the deep 
mysteries of asterisk either. I would appreciate any insight you might have. I 
scoured the 'net and the Digium wiki and my Google-Fu has failed me. 

I've been asked to somehow prohibit transfers to extension 3232. It has to be 
fully dialable from outside, as it is now. But they want to prevent people 
calling other DIDs and being transferred to 3232. They want the clerks and 
other people they're calling to tell them to hang up and redial the DID for 
3232. They want to be able to tell them that they CAN'T transfer them to that 
extension. That extension is just an ordinary extension defined by FreePBX on 
machine A. See below. Well, it's ordinary in that it was defined in the gui, 
but there's no physical phone. It's just used to collect voicemail for a legal 
purpose. 

As I said, I inherited this system. I don't really know what to include in this 
question, so I pasted anything I thought was relevant. You;ll have to tell me 
if there's other config files you want to see. 

I've written some VERY simple dialplan code, but need to be told where to put 
it. So, here goes. 

Four machines have FreePBX 2.9 front ends, the fifth is a bare asterisk install 
(on machine "C"). 
At the same physical site as "C" is machine "A" which handles users and phones 
for that site. 
Other sites have machines Z, D, K to handle the phones local to them. 

There's two more for the primary and failover IVR, and a subsidiary machine for 
conference bridges and other minor functions. 

There are (from the perspective of the "A" machine) IAX trunks to the IVR 
machines, IAX trunks to Z, D, K, and "to-pstn-c" for machine C. 

Machine "c" is connected to our PRIs but has no phones on it. Well, not really. 
It does a few special things (in extensions.conf) like send calls to our 
custom-written ACD queue program, send calls to our fax-to-print code, deal 
with a few special numbers, etc. It prepends our local areacode to calls that 
come in as 7-digit CLIDs. It checks if the call came in with a destination of 
our main IVR, checks if it's in failover, sends it to the primary or secondary 
IVR, etc. 

It checks for a match against our two main DID ranges, and a few special ones: 
(patterns slightly obfuscated below)
exten   => _414abc32XX,1,NoOp(DID: ${EXTEN})
 same   => n,Goto(to-internal,${EXTEN:-4},1)

exten   => _414def17XX,1,NoOP(DID: ${EXTEN})
 same   => n,Goto(to-internal,${EXTEN:-4},1)

exten   => 414def1700,1,NoOp(Transit Plus)
 same   => n,Goto(1700-auto-attendant,aaentry,1)

exten   => 414ghi4550,1,NoOp(Main Number)
 same   => n,Goto(4550-auto-attendant,aaentry,1)

exten   => _X.,1,NoOp(Unknown DID: ${EXTEN})
 same   => n,Goto(4550-auto-attendant,aaentry,1)

exten   => s,1,NoOP(No DID)
 same   => n,Goto(4550-auto-attendant,aaentry,1)

If there's no such DID defined, it dumps the call into our main autoattendent, 
which is different from the IVR. 

Right after the code above, it the [to-internal] context attempts a DUNDI 
lookup on the number, and routes the call as appropriate. 

AS FAR AS I CAN TELL, inbound calls are handed off to machine A, Z, D, and K, 
by C, as appropriate. I think the original design was that all machines would 
route calls to machine A, then A would send them to where they belonged. But 
ISTR later defining meshed IAX2 trunks so that 4-digit calls could find their 
way to or from A, Z, D, or K even if A was toes-up. 

That's no help if machine C dies, because outbound calls to the PSTN have to go 
through C.

On A, Z, D, and K, the FreePBX GUI writes the configuration files, but we do 
have a BUNCH of stuff in extensions_custom.conf for special handling of various 
things. 


Thomas M. Peters | IT Specialist | tpet...@mcts.org
Desk: 414.343.1720 | Helpdesk: x3400 or helpd...@mcts.org



-- 
_____________________________________________________________________
-- Bandwidth and Colocation Provided by http://www.api-digital.com --
New to Asterisk? Join us for a live introductory webinar every Thurs:
               http://www.asterisk.org/hello

asterisk-users mailing list
To UNSUBSCRIBE or update options visit:
   http://lists.digium.com/mailman/listinfo/asterisk-users

Reply via email to