1) Welcome to the Party!
2) As you are obviously new here, I have some suggestions to help us all help you:
When you post, please post your entire configuration including (but not limited to) your installation method (7.X.X?) and vicidial version with build (VERSION: 2.X-XXXx ... BUILD: #####-####).
This IS a requirement for posting along with reading the stickies (at the top of each forum) and the manager's manual (available on EFLO.net, both free and paid versions)
You should also post: Asterisk version, telephony hardware (model number is helpful here), cluster information if you have one, and whether any other software is installed in the box. If your installation method is "manual/from scratch" you must post your operating system with version (and the .iso version from which you installed your original operating system) plus a link to the installation instructions you used. If your installation is "Hosted" list the site name of the host.
If this is a "Cloud" or "Virtual" server, please note the technology involved along with the version of that techology (ie: VMware Server Version 2.0.2). If it is not, merely stating the Motherboard model # and CPU would be helpful.
Similar to This:
Vicibox X.X from .iso | Vicidial X.X.X-XXX Build XXXXXX-XXXX | Asterisk X.X.X | Single Server | No Digium/Sangoma Hardware | No Extra Software After Installation | Intel DG35EC | Core2Quad Q6600
3) Your posted carrier dialplan extension is malformed:
* You can not leave off the agi line, it's required for Vicidial to work properly.
* The extension pattern should be "_9NXXNXXXXXX" or perhaps "_9XXXXXX." to avoid conflict with other internal operations.
4) If you want to assign a different CID to each outbound number, you would use:
Custom CallerID -When set to Y, this option allows you to use the security_phrase field in the list table as the CallerID to send out when placing for each specific lead. If this field has no CID in it then the Campaign CallerID defined above will be used instead. This option will disable the list CallerID Override if there is a CID present in the security_phrase field. Default is N. When set to AREACODE you have the ability to go into the AC-CID submenu and define multiple callerids to be used per areacode.
This is the proper method to assign a different caller id for each lead dialed. You can modify this field directly in mysql or upload the leads with this value prepopulated (or both, actually).
Of course, you are using CIDs for which you actually own the matching DID and merely rotating that list, I am sure. Since the FCC and Attorney's General of every state actively hunt for those who use false Caller IDs, and you would never dream of breaking the law by using a false caller ID. Right?
5) Additionally: This is a support request, not a general discussion. Moving to the appropriate "Support" board accordingly. Tsk.