Page 1 of 1

DTMF ISSUE (RESOLVED)

PostPosted: Thu Feb 15, 2018 10:25 pm
by thephaseusa
Version: 2.14b0.5
SVN Version: 2872
DB Schema Version: 1527
ViciBox v.7.0.4| Asterisk 11.25.1-vici |
4 Box Cluster of 1 Database, 1 Asterisk, 1 Web, & 1 Archive Server.
Fundraising Call Center

The dtmf function was a great idea. So many businesses use automated answering systems, skipping them you lose a lot of leads. In my experience though I have noticed that if you type in 0 or any number and hit send, sometimes it works and sometimes it doesn’t. Recently I tried putting in the number twice before hitting send, lo and behold it worked. Every time. Somehow the first entry doesn’t grab all the time, the volume even seems lower when it hits, whereas if you for example, enter 00 the second zero when it sounds is louder, and seems to always result in the dtmf function working correctly. Am I alone in this, or is this an issue, and am I right in that entering the intended number push twice corrects the issue.

For example, an agent gets a call, the automated answering attendant say press 0 for an operator. The agent types in 0 in dtmf and hits send. He hears the tone sound, but nothing happens. However, if he types in 00 and hits send he hears the first tone and a louder second tone, which works and he is transferred to an operator.
Keep Pounding,
John M

Re: DTMF ISSUE

PostPosted: Fri Mar 02, 2018 7:23 am
by blackbird2306
I have the same issue, but we don't use this feature frequently, as a result it wasn't that important. First digit sounds chopped, only when it's played right first time. Go into directory "/usr/share/asterisk/agi-bin" and change agi_dtmf.agi:
at line 76: comment out usleep(1*500*1000); with "#" and paste same 3 lines further down:
Code: Select all
### sleep for 5 tenths of a second
#usleep(1*500*1000);

print "STREAM FILE silence \"\"\n";
usleep(1*500*1000);
$caller_id = "$caller_id$caller_idname";

Give us feedback. If it's ok, then I will put it to the issue tracker later!

Re: DTMF ISSUE (RESOLVED)

PostPosted: Fri Mar 02, 2018 3:34 pm
by thephaseusa
Blackbird that did it! Thank you very much!

So, here is the file portion before the change:

### sleep for 5 tenths of a second
usleep(1*500*1000);
print "STREAM FILE silence \"\"\n";
#$caller_id = "$caller_id$caller_idname";'

And here is the file agi-dtmf.agi after your change:

#usleep(1*500*1000);
print "STREAM FILE silence \"\"\n";
usleep(1*500*1000);
$caller_id = "$caller_id$caller_idname";
#print "STREAM FILE silence \"\"\n";
#$caller_id = "$caller_id$caller_idname";

At first it didn't work because I didn't uncomment the last 2 lines from the original.

Now entering the dtmf number, it is loud and clear and works like a charm! Well done!

JM