Input needed -- New Module, Extension to Zap Channel DID or Outbound Extension Groups..?

Status Version 1.2.5 released on Date 072508
pbx.local on
*           PBX in a Flash Version 1.2 Daemon Status               *
*                      Running Asterisk 1.4                        *
* Asterisk  * ONLINE  * Zaptel    * ONLINE  * MySQL      * ONLINE  *
* SSH       * ONLINE  * Apache    * ONLINE  * Iptables   * ONLINE  *
* Fail2ban  * ONLINE  * Ethernet0 * ONLINE  * IP Connect * ONLINE  *
* BlueTooth * ONLINE  * Hidd      * ONLINE  * NTPD       * ONLINE  *
* Sendmail  * ONLINE  * Samba     * OFFLINE * Webmin     * ONLINE  *
* Running Asterisk Version : Asterisk
* Asterisk Source Version  :
* Zaptel Source Version    : 1.4.11
* Libpri Source Version    : 1.4.5
* Addons Source Version    : 1.4.7
CentOS release 5.2 (Final) - 32 Bit ** Kernel: 2.6.18-92.1.6.el5
 For help on PBX commands than you can run type help-pbx           *

I have an interesting issue and I am attempting to decide rather how to proceed. I have a system with 24+ FXOs coming in and use the Zap Channel DID process to MAP each FXO to the appropriate Ring Group / Queue / Extension. Five of these 24+ are treated as “Direct” lines to specific extensions the rest are hung group numbers and route to various Queues. This all works great.

Now I have a request / need to reverse the mapping process, so that five of the 20 or so extensions always try to dial out on an assigned / specific FXO(channel), so that the recipient of the call get’s the callers DID on the Caller-Id display / Cell Phone. This is based on the fact that that many of these calls get returned for follow up and we would prefer they came back directly to the same dispatcher / extension.

I have looked at the Custom Contexts module and it does not meet this need. The Outbound Extension Groups module, that came up in a separate discussion recently, looks like a possiable option but before I try and locate the supporting author and/or take on the task of getting it working with the current release of FreePBX I wanted to solicit some feed back on the need / function.

My concept for a new module or extension of Zap Channel is based on using an extensions outbound CID to do a lookup for the assigned ZAP channel. If one is found do a dial() on it, and if it fails then go to the standard outbound routing table. If there is no hit on the CID then just fall through to the outbound routing table.

What do you all think…

Here are a few links you may find interesting:

How to give a particular extension different or restricted trunk access for outgoing calls

Simplified translations/restrictions module

“Route sets” to allow per-extension route selection

Maybe these links might give you some ideas.


Thank you very much for the additional links. I now have some studying to do an a decision to make.