Number of rings before IVR

richardroi

Well-known member
richardroi - Well-known member  
Support,

How can I put or increase number of rings before IVR?
When I dial the DID it goes straight to IVR, I want it to ring 1 or 2 first before the IVR.

Thank you
 

richardroi

Well-known member
richardroi - Well-known member  
Anybody? Badly needed.
Cannot find answer on goggle and forum.
My DID is routed to " Call menu" and it is working, the problem is it goes straight with the message, no ring before the recording.
Just want to put one ring or two before the recording starts playing.
Thank you.
 

ZoVoS

Active member
ZoVoS - Active member  
Basically there are a few ways to do it and the simplest is playing a fake ring tone, maybe using a loop back extension (The person will see a connected status) if you are going to do it this way then I want to make sure you are not using a premium rate number ETC.

Other ways to do this are more complicated, it is even possible to prevent the phone from answering however this is (at least the way I would do it) very complicated.

The best option isn't available for everybody but it would be to set a "post connection" ringtone with their carrier.


If you tell me exactly WHY you want it to happen I can advise you the best way to go about it.

it may even be possible to use a wait before the call is answered on the loopback however ill have to test that

exten => _X,1,Wait(${variable here})
 

ZoVoS

Active member
ZoVoS - Active member  
oh then all of this is moot. you may as well add a second or 2 of silence to the start of your call menu introduction if that's the only reason =P

Delaying the answer or using a pre-connect wont help much as your problem is that the fast connection cuts people off, best way to go about it would be to simply download the sound file and edit it in audacity adding a second of silence.

If you want to go via the loop back option and play sip silence/ring tone, then create a new extension and have it route to the call menu that is supposed to handle the inbound.

Give me 2 seconds ill check if call menus support piping sounds. if they do you wont have to change anything in your system
Last edited by ZoVoS on Mon Jan 14, 2013 3:50 pm, edited 1 time in total.
 

ZoVoS

Active member
ZoVoS - Active member  
Sorry I disappeared there mate. I had an emergency support call.

In the call menu for the menu prompt use

RINGING SOUND|CALLMENU INTRO SOUND

For example mine would be

UK_ringback_tone|CM_Intro

If you don't have a simple ringing sound provide me with an email and i will send you my UK_ringback_tone

The problem with doing it this way is that it creates a ringing sound each time the call menu is replayed. If that's a problem I can help you find alternative solutions. playing silence would prevent the repeat issue.
 

richardroi

Well-known member
richardroi - Well-known member  
Yes it is a problem...having a ringing sound each time the call menu is replayed.
Thank you so much for your advise.
Hope you have more ideas...
Will look into the manual once again.
 

ZoVoS

Active member
ZoVoS - Active member  
=P you don't half know how to make this more difficult than it has to be... ok 2 seconds

... doing everything through the interface to ensure that you can do it your end with very little effort. just waiting for all the settings in the system to update.
 

ZoVoS

Active member
ZoVoS - Active member  
ok so option 1

on system settings you will want to create your own custom dialplan

[***CONTEXT NAME OF CHOICE***]
exten => ***INBOUND DID NUMBER***,1,Background(sound file of your choice)
exten => ***INBOUND DID NUMBER***,2,Answer
exten => ***INBOUND DID NUMBER***,3,Goto(****CALL MENU ID HERE***,,1)
exten => ***INBOUND DID NUMBER***,4,Hangup

set the inbound did to use exten. (using extension ***INBOUND DID NUMBER*** and context ***CONTEXT NAME OF CHOICE***



However this may cause logging errors.
If it does (you will have to test)

create a new did and use
exten => ***INBOUND DID NUMBER***,3,Goto(trunkinbound,***NEW DID HANDLING CALL MENU***,1)



OR if you want to be dead fancy, (this is what I currently run as the problem is similar to one I have however the code would take me ages to find as most of my installations are heavily customised) Edit the code that creates a call menu and change it so that it starts answer with a s,2.
 

richardroi

Well-known member
richardroi - Well-known member  
Thank you so much. will test it. will send you an update.
So thankful, there is always someone willing to help.
Thank you very very much.
 

ZoVoS

Active member
ZoVoS - Active member  
okie dokie I have looked through all my notes

My favourite solution is as follows


nano /usr/share/astguiclient/ADMIN_keepalive_ALL.pl
CTRL W
$call_menu_ext .= "exten => s,1,Answer\n";

find that line. change the s,1 to a s,2

Now on the call menu put in the custom dial plan entry field;

exten => s,1,Background(UK_ringback_tone) (PUT YOUR RINGING TONE HERE)

however if I remember my testing right you also have to change

$call_menu_ext .= "exten => t,n,Goto(s,4)
to
$call_menu_ext .= "exten => t,n,Goto(s,5)


Bear in mind the limitations when doing this. once its changed and you update your server your change will be lost.
 

ZoVoS

Active member
ZoVoS - Active member  
so


$time_check_route = 'EXTENSION';
$time_check_route_value = '9999999999999999999988';
$time_check_route_context = $menu_id[$i];
}
$call_menu_ext .= "\n";
$call_menu_ext .= "; $menu_name[$i]\n";
$call_menu_ext .= "[$menu_id[$i]]\n";
$call_menu_ext .= "exten => s,1,Answer\n";
$call_menu_ext .= "exten => s,n,AGI(agi-VDAD_inbound_calltime_check.agi,$tracking_group[$$
$call_menu_ext .= "exten => s,n,Set(INVCOUNT=0) \n";
$call_menu_ext .= "$menu_prompt_ext";
if ($menu_timeout[$i] > 0)
{$call_menu_ext .= "exten => s,n,WaitExten($menu_timeout[$i])\n";}
$k=0;
while ($k < $menu_repeat[$i])
{
$call_menu_ext .= "$menu_prompt_ext";
if ($menu_timeout[$i] > 0)
{$call_menu_ext .= "exten => s,n,WaitExten($menu_timeout[$i])\n";}
$k++;
}
# $call_menu_ext .= "exten => s,n,Hangup\n";
$call_menu_ext .= "\n";
$call_menu_ext .= "$call_menu_options_ext";
$call_menu_ext .= "\n";

if (length($call_menu_timeout_ext) < 1)
{
if ( (length($menu_timeout_prompt[$i])>0) && ($menu_timeout_prompt[$i] !~ /NONE/$
{
$call_menu_ext .= "exten => t,1,Playback($menu_timeout_prompt[$i])\n";
$call_menu_ext .= "exten => t,n,Goto(s,4)\n";
}
else
{
$call_menu_ext .= "exten => t,1,Goto(s,4)\n";
}
}
else
{
$call_menu_ext .= "$call_menu_timeout_ext";
}
if (length($call_menu_invalid_ext) < 1)
{
if ( (length($menu_invalid_prompt[$i])>0) && ($menu_invalid_prompt[$i] !~ /NONE/)$
{
$call_menu_ext .= "exten => i,1,Playback($menu_invalid_prompt[$i])\n";
$call_menu_ext .= "exten => i,n,Goto(s,4)\n";
}
else
{
$call_menu_ext .= "exten => i,1,Goto(s,4)\n";
}
}
else
{
$call_menu_ext .= "$call_menu_invalid_ext";
}
$call_menu_ext .= "; hangup\n";
$call_menu_ext .= 'exten => h,1,DeadAGI(agi://127.0.0.1:4577/call_log--HVcauses--PRI-----$

if (length($custom_dialplan_entry[$i]) > 4)
{
$call_menu_ext .= "\n\n";
$call_menu_ext .= "; custom dialplan entries\n";
$call_menu_ext .= "$custom_dialplan_entry[$i]\n";
}

$call_menu_ext .= "\n\n";

$i++;
}
##### END Generate the Call Menu entries #####


**************************************CHANGE TO****************************************

$time_check_route = 'EXTENSION';
$time_check_route_value = '9999999999999999999988';
$time_check_route_context = $menu_id[$i];
}
$call_menu_ext .= "\n";
$call_menu_ext .= "; $menu_name[$i]\n";
$call_menu_ext .= "[$menu_id[$i]]\n";
$call_menu_ext .= "exten => s,2,Answer\n";
$call_menu_ext .= "exten => s,n,AGI(agi-VDAD_inbound_calltime_check.agi,$tracking_group[$$
$call_menu_ext .= "exten => s,n,Set(INVCOUNT=0) \n";
$call_menu_ext .= "$menu_prompt_ext";
if ($menu_timeout[$i] > 0)
{$call_menu_ext .= "exten => s,n,WaitExten($menu_timeout[$i])\n";}
$k=0;
while ($k < $menu_repeat[$i])
{
$call_menu_ext .= "$menu_prompt_ext";
if ($menu_timeout[$i] > 0)
{$call_menu_ext .= "exten => s,n,WaitExten($menu_timeout[$i])\n";}
$k++;
}
# $call_menu_ext .= "exten => s,n,Hangup\n";
$call_menu_ext .= "\n";
$call_menu_ext .= "$call_menu_options_ext";
$call_menu_ext .= "\n";

if (length($call_menu_timeout_ext) < 1)
{
if ( (length($menu_timeout_prompt[$i])>0) && ($menu_timeout_prompt[$i] !~ /NONE/$
{
$call_menu_ext .= "exten => t,1,Playback($menu_timeout_prompt[$i])\n";
$call_menu_ext .= "exten => t,n,Goto(s,5)\n";
}
else
{
$call_menu_ext .= "exten => t,1,Goto(s,5)\n";
}
}
else
{
$call_menu_ext .= "$call_menu_timeout_ext";
}
if (length($call_menu_invalid_ext) < 1)
{
if ( (length($menu_invalid_prompt[$i])>0) && ($menu_invalid_prompt[$i] !~ /NONE/)$
{
$call_menu_ext .= "exten => i,1,Playback($menu_invalid_prompt[$i])\n";
$call_menu_ext .= "exten => i,n,Goto(s,5)\n";
}
else
{
$call_menu_ext .= "exten => i,1,Goto(s,5)\n";
}
}
else
{
$call_menu_ext .= "$call_menu_invalid_ext";
}
$call_menu_ext .= "; hangup\n";
$call_menu_ext .= 'exten => h,1,DeadAGI(agi://127.0.0.1:4577/call_log--HVcauses--PRI-----$

if (length($custom_dialplan_entry[$i]) > 4)
{
$call_menu_ext .= "\n\n";
$call_menu_ext .= "; custom dialplan entries\n";
$call_menu_ext .= "$custom_dialplan_entry[$i]\n";
}

$call_menu_ext .= "\n\n";

$i++;
}
##### END Generate the Call Menu entries #####


Sorry that took a while to find and i'm handling support calls while I go
 
close button
Top