Page 1 of 1
Modify unattended campaign
Posted:
Sat Feb 25, 2012 9:51 am
by nkasoff
We've run the "campaign without live agents and play a message" for a long time. Now I'd like to modify it to offer an option to press 0 for a live agent, at any time during the message, which would transfer the call into an Asterisk queue. I can't use an unmodified Vicidial predictive dialing campaign because (1) The vast majority of calls will not request a live agent; (2) There are two few agents to use predictive dialing; (3) There won't be any predictable way of sending the call to a specific agent, it will just go to whoever in the ring-all queue feels like picking up the phone.
I didn't see anything in the HighRes manual that would cover this. I would appreciate any suggestion on how to do it.
Posted:
Mon Feb 27, 2012 11:37 am
by nkasoff
So I thought about it over the weekend, and it seems like I could modify the "Play message after waiting for silence" script by replacing the Playback line with Background, and putting a sufficiently long WaitExten at the end. Sound like a possibility?
Posted:
Tue Mar 13, 2012 1:15 pm
by nkasoff
So, I created this context:
[outboundwith0]
exten => s,1,Answer
exten => s,n,Set(TIMEOUT(digit)=5)
exten => s,n,Set(TIMEOUT(response)=60)
exten => s,n,Background(outboundmsg)
exten => s,n,AGI(VD_amd_post.agi,${EXTEN})
exten => s,n,Background(outboundmsg)
exten => s,n,Hangup
exten => 0,1,Queue(everyone)
exten => 0,n,Hangup
And modified extension 8320:
exten => 8320,1,Goto(outboundwith0,s,1)
It does exactly what I want in terms of allowing people to zero out of the message and transfer to the asterisk queue. Only problem is, vicidial_live_agents.status remains "INCALL" so the remote agent isn't released to take another call. I'm fine with Vicidial considering the call to be over as soon as they press 0 and logging it as such. Or any other way of allowing the autodialer campaign to continue. How can I do that?
Posted:
Tue Mar 13, 2012 1:36 pm
by mflorell
Why not use it in the standard way but just have the call drop to an ingroup that has agent logged in to it from another campaign?
Posted:
Tue Mar 13, 2012 1:38 pm
by nkasoff
I don't know. *stupid look on my face* I guess there is a section of the manager manual that I didn't recognize would do that?
Posted:
Tue Mar 13, 2012 1:51 pm
by mflorell
admin.php version and build?
Posted:
Tue Mar 13, 2012 1:54 pm
by nkasoff
VERSION: 2.4-309a
BUILD: 110430-1642
I just bought another manager manual last week, because the one we had was more than a year old. But I think it's a 2.2 manual.
Posted:
Tue Mar 13, 2012 2:27 pm
by mflorell
I'm not sure if this option is in the verion you are using or not, but you can set the drop seconds to -1 and the Drop action to INGROUP so that the call will never try to go to one of the campaign agents and will instead go to the drop in-group immediately.
You may need to upgrade to a more recent svn/trunk to get this option.
Posted:
Tue Mar 13, 2012 2:36 pm
by nkasoff
I will read the manual and figure out what you mean here. Related question to my previous screw up - I went into MySql and reset the status on vicidial_live_agents.status. The live agents no longer show up as in call on the real-time campaign summary. But Vicidial is still acting as though they weren't available - it is only placing calls for the agents that were not involved in my previous experiment. What other field/table do I need to reset to fix this?
Re: Modify unattended campaign
Posted:
Fri May 11, 2012 8:28 am
by nkasoff
I downloaded the new hi-res manager's manual, and found that I could use the survey feature (page 40) to do this. I've just got a single option, press 0, which gets you to a live agent. And I created an extension which drops the call into the Asterisk queue, and put that in Survey Xfer Extension. It all works great, but there's one way I need to improve it if possible: I need to set the Caller Id to the outbound number that was dialed. I would have thought that Set(CALLERID(num)=${EXTEN}) in the Survey Xfer Extension would accomplish this, but it did not. Any idea how I might accomplish this?
Re: Modify unattended campaign
Posted:
Fri May 11, 2012 10:44 am
by nkasoff
Figured it out - used channel variables.
Re: Modify unattended campaign
Posted:
Fri May 11, 2012 10:50 am
by nkasoff
So the next question is ... I'd love to be able to pass `Vendor ID` and name fields from the lead to Asterisk so that I can set the CALLERID(name) as well. I'm very able to modify a php script if I need to in order to accomplish this, but am not sure where to start, or whether this is just a bad idea altogether.
Re: Modify unattended campaign
Posted:
Fri May 11, 2012 4:55 pm
by mflorell
take a look at the agi-set_variables.agi script, that is why we wrote it.
Re: Modify unattended campaign
Posted:
Mon May 14, 2012 8:54 am
by nkasoff
The code shows how to call agi-set_variables.agi from the dialplan
- Code: Select all
exten => _91NXXNXXXXXX,n,AGI(agi-set_variables.agi,)
But I found nothing in code or the most recent manual about how to use those variables. What I specifically want is to set called id name to
0:first_name last_name vendor_lead_code
My guess at this would be
- Code: Select all
exten => _91NXXNXXXXXX,n,Set(CALLERID(name)=0:${first_name} ${last_name} ${vendor_lead_code})
But that's only a guess. Your guidance on this is appreciated.
Re: Modify unattended campaign
Posted:
Tue May 15, 2012 9:06 am
by nkasoff
My guess worked ... thanks for the tip.