Page 1 of 1

Autodial Survey UNLESS Agents are Available -> Transfer

PostPosted: Fri Sep 15, 2006 8:39 pm
by smt8d1
Has anyone setup an autodialer that will run at a set rate administering survey's unless agents are logged in (in which case the calls would be immediately transfered -- ie no survey given)?

Ideally, I would like to maintain 30 concurrent calls split between two asterisk servers over IAX. The calls would run between specified hours regardless of whether agents are logged in. As agents log in I would like calls to be sent to them whenever they are available, and to administer survey's if no agents are available.

As you can tell, volume is the key goal here (this is for a political campaign). If anyone has any tips on how I would implement this, please post your comments.

I think I can modify the agi-VDADtransferSURVEY script to attempt to transfer to an agent immediately and fall back on administering the survey.

I am just not sure on how I can:
1. Keep the autodial running without agents being logged in
2. How to specify a dial rate that is independent of how many agents are logged in

Thanks!
Sean

PostPosted: Fri Sep 15, 2006 10:07 pm
by mflorell
To do exactly what you want you will need to do some programming. But, you can get very close to what you want to do just using existing methods.

You can dial without agents logged in by using remote agents and setting the "external extension" to your survey exten.

Then when real agents log in you can reduce the number of lines for your remote agent. In the campaign you will want to set the "safe harbor exten" to the survey exten and set your "drop seconds" field pretty low to send the overflow to your servey quickly.

You can restrict the number of lines being dialed out by setting the "Max VICIDIAL trunks" variable on the astguiclient/admin.php page to however many lines you want that server to allow vicidial to call out on.

If you have not already, you should take a look at the VICIDIAL manager manual from eflo.net

Just curious, what political office or issue is this for? Please don't name a candidate or position since I would like to keep the boards politically neutral.

Thanks for the quick reply

PostPosted: Mon Sep 18, 2006 3:02 pm
by smt8d1
You can dial without agents logged in by using remote agents and setting the "external extension" to your survey exten.


Does this imply that if the survey attempted to transfer to a live agent it would be transferred back to the remote agent (infinite loop) if no other agents were available?

Then when real agents log in you can reduce the number of lines for your remote agent. In the campaign you will want to set the "safe harbor exten" to the survey exten and set your "drop seconds" field pretty low to send the overflow to your servey quickly.


That is a great idea! I hadn't considered using the Safe Harbor extension to administer the survey.

It sounds like all my problems can be fixed by doing three things:
- Forcing the dial level to always be at the max for all my asterisk servers
- Using a remote agent to allow the system to dial out without having any agents logged in
- Setting up a campaign to use the agi-VDAD_LB_transfer script when a call connects and setting the Safe Harbor and remote agent extension to administer the survey if no agents are available



Some questions:
1. Where (in the code) could I override the dialing level to ignore how many agents are logged in? Should I just use the "ratio" option and set it to 30 -- as the "max channels" on the servers should ignore anything higher than the max?

2. If I use the remote agent, will all of my asterisk servers continue to dial out at max capacity and hand off calls to the survey? I noticed that if I have an agent logged into one server making calls, no calls are made on the other server. Would I have to setup a remote agent for each server?

3. Would the remote agent[s] share the same campaign as the live agents? If not, would they be competing for channels if I had the remote agent dial level set to 30 and the live agents set to use a ratio?


Just curious, what political office or issue is this for? Please don't name a candidate or position since I would like to keep the boards politically neutral.


I am working for a statewide campaign in Nevada to pass an initiative that is on the ballot (no candidates or political parties involved). We are primarily using vicidial to register voters and get them to the polls to vote. I don't want to break any forum rules, so let me know if you want to know what the initiative is about. :D

Re: Thanks for the quick reply

PostPosted: Mon Sep 18, 2006 3:19 pm
by mflorell
smt8d1 wrote:
You can dial without agents logged in by using remote agents and setting the "external extension" to your survey exten.


Does this imply that if the survey attempted to transfer to a live agent it would be transferred back to the remote agent (infinite loop) if no other agents were available?


Nope, doesn't work that way.

It sounds like all my problems can be fixed by doing three things:
- Forcing the dial level to always be at the max for all my asterisk servers
- Using a remote agent to allow the system to dial out without having any agents logged in
- Setting up a campaign to use the agi-VDAD_LB_transfer script when a call connects and setting the Safe Harbor and remote agent extension to administer the survey if no agents are available


Dial level is defined by campaign not server.

Some questions:
1. Where (in the code) could I override the dialing level to ignore how many agents are logged in? Should I just use the "ratio" option and set it to 30 -- as the "max channels" on the servers should ignore anything higher than the max?


It would be much easier just to set the "number of lines" for the remote agent to a high number

2. If I use the remote agent, will all of my asterisk servers continue to dial out at max capacity and hand off calls to the survey? I noticed that if I have an agent logged into one server making calls, no calls are made on the other server. Would I have to setup a remote agent for each server?


Yes, as of 2.0.1 you will need to have at least one remote agent on per server. We are working on this issue for the next release.

3. Would the remote agent[s] share the same campaign as the live agents? If not, would they be competing for channels if I had the remote agent dial level set to 30 and the live agents set to use a ratio?


Yes they use the same campaign.

So that they do not compete for lines you can use the overall_user_level for the "Next Agent Call" field in the campaign detail setting and set your real live agents to a user_level of 5 and all calls will go to them first.

Just curious, what political office or issue is this for? Please don't name a candidate or position since I would like to keep the boards politically neutral.


I am working for a statewide campaign in Nevada to pass an initiative that is on the ballot (no candidates or political parties involved). We are primarily using vicidial to register voters and get them to the polls to vote. I don't want to break any forum rules, so let me know if you want to know what the initiative is about. :D


Thanks for the info, just curious as to the level of the campaign. Let us know what the response is when you get it up and running and if you made any special changes to optimize it in any special way.