play record for outgoing campaing

cmrahman

Joined
Jul 21, 2008
Messages
47
Likes
0
Points
0
#1
How to make callcenter play record rather then connecting to extensions for outgoing campaign?


Anybody know anything on this issue?

Thanks:silly: :silly:
 

jgutierrez

Joined
Feb 28, 2008
Messages
5,737
Likes
0
Points
0

cmrahman

Joined
Jul 21, 2008
Messages
47
Likes
0
Points
0
#3
Thank you but can you please post this in English so I can understand. You do not need to translate everything, just the answer to my question.

Thanks ;)
 

jgutierrez

Joined
Feb 28, 2008
Messages
5,737
Likes
0
Points
0
#4
Here is a simple context that will help you to achieve your goal, then you may customize it:

1. edit /etc/asterisk/extensions_custom.conf find and leave this section like this:

Code:
[from-internal-custom]
   exten => 1234,1,Playback(demo-congrats)         ; extensions can dial 1234
   exten => 1234,2,Hangup()
   exten => h,1,Hangup()
   include => agentlogin
   include => conferences
   include => calendar-event
   include => weather-wakeup
   include => automatic-message
As you will see, I have added: include => automatic-message

2. On the same file, you may go to the end and write the following context:

Code:
[automatic-message]
exten => 900,1,Answer
exten => 900,n,Playback(custom/message)
exten => 900,n,Hangup
I'm supposing that there is an audio file on /var/lib/asterisk/sounds/custom/ called message.wav (or any audio format that may be played by asterisk)

3. You need to create a queue 900, there you will put the agents (A1001 for example...). You may register the agents using any softphone, remember, they will not be used by any person, they will just be connected

4. Now on the outbound campaign setup, you will need to choose queue 900, and the context you may leave it as from-internal
 

soulofmischief87

Joined
Apr 30, 2008
Messages
42
Likes
0
Points
0
#5
nice work around i tried this to make an ivr when it answers but it didnt work it plays the sound but it hangs up and when i press any of the options it doesnt take me anywhere

[mensaje-automatico]
exten => 600,1,Answer
exten => 600,2,Wait,2
exten => 600,3,Playback(custom/mejor)
exten => 600,4,SetMusicOnHold(default)
exten => 600,5,DigitTimeout,5
exten => 600,5,ResponseTimeout,10
exten => 600,6,Background(greeting)
exten => 1,1,Goto(incoming,001,1) ; (extension)
exten => 2,1,Goto(incoming,601,1) ; (Sales Department)
exten => 3,1,Goto(incoming,001,1) ; (IT)Step #3
exten => 600,n,Wait,20
 

jgutierrez

Joined
Feb 28, 2008
Messages
5,737
Likes
0
Points
0
#6
try the following context:

Code:
[mensaje-automatico]
exten => 600,1,Answer
exten => 600,2,Wait,2
exten => 600,3,Playback(custom/mejor)
exten => 600,4,SetMusicOnHold(default)
;exten => 600,n,DigitTimeout,5
;exten => 600,n,ResponseTimeout,10
exten => 600,n,Set(TIMEOUT(digit)=2)
exten => 600,n,Set(TIMEOUT(response)=8)
exten => 600,n,Background(greeting)
exten => 600,n,WaitExten(,)
exten => 1,1,Goto(incoming,001,1) ; (extension)
exten => 2,1,Goto(incoming,601,1) ; (Sales Department)
exten => 3,1,Goto(incoming,001,1) ; (IT)Step #3
 

soulofmischief87

Joined
Apr 30, 2008
Messages
42
Likes
0
Points
0
#7
did try what you told me but it doesnt work
do i have to create a [incoming,001,1] ?
or how do i make it go automatically into another queue for example 601


[mensaje-automatico]
exten => 600,1,Answer
exten => 600,2,Wait,2
exten => 600,3,Playback(custom/mejor)
exten => 600,4,SetMusicOnHold(default)
;exten => 600,n,DigitTimeout,5
;exten => 600,n,ResponseTimeout,10
exten => 600,n,Set(TIMEOUT(digit)=2)
exten => 600,n,Set(TIMEOUT(response)=8)
exten => 600,n,Background(greeting)
exten => 600,n,WaitExten(,)
exten => 1,1,Goto(incoming,001,1) ; (extension)
exten => 2,1,Goto(incoming,601,1) ; (Sales Department)
exten => 3,1,Goto(incoming,001,1) ; (IT)Step #3
 

jgutierrez

Joined
Feb 28, 2008
Messages
5,737
Likes
0
Points
0
#8
yes I did test it, and it worked, I assumed that you had created the context incomming... (you included it on your example)

any ways, try the following:
[mensaje-automatico]
exten => 600,1,Answer
exten => 600,2,Wait,2
exten => 600,3,Playback(custom/mejor)
exten => 600,4,SetMusicOnHold(default)
exten => 600,n,Set(TIMEOUT(digit)=2)
exten => 600,n,Set(TIMEOUT(response)=8)
exten => 600,n,Background(greeting)
exten => 600,n,WaitExten(,)
exten => 1,1,Goto(ext-queues,601,1) ; (Support Department Queue)
exten => 2,1,Goto(ext-queues,602,1) ; (Sales Department Queue)
exten => 3,1,Goto(ext-queues,603,1) ; (IT Department Queue)


In this case I assume that you have already created queues 601,602,603, and if you want to call any of your extensions through the IVR, under the context, you should include the ext-local context.

[mensaje-automatico]
include => ext-local
exten => 600,1,Answer
exten => 600,2,Wait,2
...
 

soulofmischief87

Joined
Apr 30, 2008
Messages
42
Likes
0
Points
0
#9
Great, this worked perfectly, is there a way to lower the amount of rings the dialer will allow the call to ring for?, for numbers that do not have answering machines, callcenter reports them as failure and probably waste alot of time
 

dicko

Joined
Oct 24, 2008
Messages
4,099
Likes
0
Points
0
#10
I would try inserting

exten => 600,1,Set(TIMEOUT(absolute)=20)

at the beginning of the context(increasing the following priorities by one or replacing them with n)
and after the answer

exten => 600,n,Set(TIMEOUT(absolute)=0)

this should set the limit to 5 rings (in the US) before aborting the call.
 

soulofmischief87

Joined
Apr 30, 2008
Messages
42
Likes
0
Points
0
#11
This works, fine but when the calle does not press a key it put the calle back in the queue and hands the call to the callcenter agent rather than wait and hang up. How can i configure the it so that it waits for the ivr response longer and if there is no response hangs up the call?


and i found the solution to that

[mensaje-automatico]
include => ext-local
exten => 600,1,Answer
exten => 600,2,Wait,1
exten => 600,3,Playback(custom/carlos1)
exten => 600,4,SetMusicOnHold(default)
exten => 600,n,Set(TIMEOUT(digit)=2)
exten => 600,n,Set(TIMEOUT(response)=20)
exten => 600,n,Background(greeting)
exten => 600,n,WaitExten(,)
exten => 600,n,Hangup
exten => 1,1,Goto(ext-queues,601,1) ; (Support Department Queue)
exten => 2,1,Goto(ext-queues,602,1) ; (Sales Department Queue)
exten => 3,1,Goto(ext-queues,603,1) ; (IT Department Queue)


this waits for 20 seconds for response if there is no response it hangs up 20 seconds after playback is done
 

dicko

Joined
Oct 24, 2008
Messages
4,099
Likes
0
Points
0
#12
Or add a timeout priority

exten => t,1,hangup
 

soulofmischief87

Joined
Apr 30, 2008
Messages
42
Likes
0
Points
0
#13
oo that works too thank you, using this method how many calls go out simultenously? or does that depend on how many agents are logged in?
 

jgutierrez

Joined
Feb 28, 2008
Messages
5,737
Likes
0
Points
0
#14
Yes, that depends on the availability of trunks that you have, as well as the number of agents connected.

But if you would like to generate more than one call per agent, you may do the following:

edit /opt/elastix/dialer/Predictivo.php

and find the following section:

Code:
function predecirNumeroLlamadas($sNombreCola, $bPredecir = TRUE)
    {
        if (!isset($this->_estadisticasCola[$sNombreCola])) {
                // Inventarse par
 

soulofmischief87

Joined
Apr 30, 2008
Messages
42
Likes
0
Points
0
#15
thank you for response its been a great help to me how can i add amd answering machine detection to this configuration?

[mensaje-automatico]
include => ext-local
exten => 600,1,Answer
exten => 600,2,Wait,1
exten => 600,3,Playback(custom/carlos1)
exten => 600,4,SetMusicOnHold(default)
exten => 600,n,Set(TIMEOUT(digit)=2)
exten => 600,n,Set(TIMEOUT(response)=20)
exten => 600,n,Background(greeting)
exten => 600,n,WaitExten(,)
exten => 600,n,Hangup
exten => 1,1,Goto(ext-queues,601,1) ; (Support Department Queue)
exten => 2,1,Goto(ext-queues,602,1) ; (Sales Department Queue)
exten => 3,1,Goto(ext-queues,603,1) ; (IT Department Queue)
 

jgutierrez

Joined
Feb 28, 2008
Messages
5,737
Likes
0
Points
0
#16
I would try the following:

Code:
[mensaje-automatico]
include => ext-local
exten => 600,1,Answer
exten => 600,n,BackgroundDetect(silence/5, 1500, 1000)
exten => 600,n,Hangup
exten => talk,1,Wait,1
exten => talk,n,Playback(custom/carlos1)
exten => talk,n,SetMusicOnHold(default)
exten => talk,n,Set(TIMEOUT(digit)=2)
exten => talk,n,Set(TIMEOUT(response)=20)
exten => talk,n,Background(greeting)
exten => talk,n,WaitExten(,)
exten => talk,n,Hangup
exten => 1,1,Goto(ext-queues,601,1) ; (Support Department Queue)
exten => 2,1,Goto(ext-queues,602,1) ; (Sales Department Queue)
exten => 3,1,Goto(ext-queues,603,1) ; (IT Department Queue)
Remember to adjust BackgroundDetect to fit your needs, so if asterisk detects that it is a human being, it will go to the talk priority, else, it will continue with n+1 priority, as you will see the next one is Hangup
 

viraj

Joined
Oct 30, 2008
Messages
3
Likes
0
Points
0
#17
How do I have theses calls logged on the CDR or under the Campaing Reports?
 

jgutierrez

Joined
Feb 28, 2008
Messages
5,737
Likes
0
Points
0
#18
If you mean to have a the answer machine status on the call center report, then you will need to do the following:

1. backup /opt/elastix/dialer/Dialer.class.php
2. edit /opt/elastix/dialer/Dialer.class.php
over there change all the lines that says NoAnswer to AnswerMachine
3. service elastix stop
until it says failure
4. service elastixdialer start
5. backup /var/www/html/modules/campaign_out/libs/archivo_cvs.php
6. edit /var/www/html/modules/campaign_out/libs/archivo_cvs.php
leave this section like this:
Code:
where
   c.id_campaign=$idCampaign and 
   (c.status='Success' or c.status='Failure' or c.status='ShortCall' or c.status='AnswerMachine')
order by
   telefono
asc";
also find this line:
Code:
$valor_recolectado[] =  $arrLan[$value_telefono['estado']];
and leave it like:
Code:
$valor_recolectado[] =  $value_telefono['estado'];
 

andres.vargasd

Joined
Jun 29, 2010
Messages
10
Likes
0
Points
0
#19
hola, tengo un post y la verdad veo que conoces del tema y me puedes ayudar.

ya pude revisar y solucionar todo, pero lo que quiero es que en lugar de poner un mensaje fijo, lo pueda enviar a un IVR, osea que se convierta de una llamada de salida a una de entrada y dos un autologin, que no dependa de un agente si no sea automatica yo le di guardar a la campaña y arranque de uan solito.

alguien sabe??

http://www.elastix.org/es/component/kun ... 0&start=60

Gracias
 

ullu

Joined
Jul 18, 2010
Messages
2
Likes
0
Points
0
#20

Members online

No members online now.

Latest posts

Forum statistics

Threads
30,942
Messages
130,964
Members
17,638
Latest member
washingtongomez
Top