Summary:ASTERISK-05924: [patch] new events: status of DTMF event
Reporter:adomjan (adomjan)Labels:
Date Opened:2005-12-29 06:26:40.000-0600Date Closed:2007-04-10 18:55:37
Versions:Frequency of
Environment:Attachments:( 0) asterisk-rev-47037-dtmf_event.patch
Description:Please see new event list in the bug notes. Original description outdated.

----- Original Description -------
This small patch create a new manager event when send a DTMF digit on the channel.

Event: SendDTMF
Privilege: call,all
Digit: <digit>
Channel: <channel>
Uniqueid: <uniqueid>
Comments:By: Matt O'Gorman (mogorman) 2006-01-10 10:13:50.000-0600

this looks like a fine patch, you need some return codes though for success or failure.

By: adomjan (adomjan) 2006-01-10 10:28:50.000-0600

I think you missunderstand something. It reports only if a dtmf digit has sent to the channel...

By: Matt O'Gorman (mogorman) 2006-02-01 15:03:46.000-0600

i think you should create another category in the manager.conf, dtmf, so that it is not enabled by default and does not spam manager clients to oblivion

By: Kevin P. Fleming (kpfleming) 2006-02-14 18:35:47.000-0600

Agreed; we need to find some way to keep this from hammering existing manager connections.

By: Jon Hood (squinky86) 2006-03-08 22:52:30.000-0600

I'm benefitting from this patch very much; just some small language barriers that need to be broken down. I may be completely wrong about all this, but would this event more properly be named "SentDTMF", or better yet "DTMF"? SendDTMF is more like an action (issue 6682 from me); SentDTMF is more like an event triggered from being Sent DTMF, especially if "It reports only if a dtmf digit has sent to the channel." Again, I'm using this patch quite heavily and thank you for it :).

By: adomjan (adomjan) 2006-03-09 03:08:31.000-0600

You right, but not too much the difference between SentDTMF and SendDTMF.
Any other idea the name of the event?
have to implement when getting dtmf on channel, not only the sending event too...

By: Stefan Reuter (srt) 2006-03-09 03:44:14.000-0600

i would suggest DTMFReceived

By: adomjan (adomjan) 2006-03-09 06:19:28.000-0600

new patch is out, 2 events generated:

Event: DTMFReceived
Privilege: dtmf,all
Digit: 1
Channel: SIP/test-271c
Uniqueid: 1141905708.0

Event: DTMFSent
Privilege: dtmf,all
Digit: 1
Channel: SIP/
Uniqueid: 1141905708.1

the event has generated only when dtmf manager category has set.

By: Moises Silva (moy) 2006-04-21 14:11:53

i didnt know about the existance of this issue, so i opened a new one (im very sorry), could any bugmarshall close it please? is bug 0006990.

Well, now, the patch posted in 2006-03-09 is now broken in SVN 22004. I have made a new one adding some other events:

the flag is still the same, EVENT_FLAG_DTMF, events are:

DTMFSent, DTMFBeginSent, DTMFEndSent
DTMFReceived, DTMFBeginReceived, DTMFEndReceived

Im not sure if all of them should be merged in only 2 events (sent and received). Feedback will be appreciated.

By: Moises Silva (moy) 2006-04-27 13:56:57


I know everybody is busy, but please take a look at this :)

By: Serge Vecher (serge-v) 2006-05-08 12:41:20

moy, please update your patch to latest trunk. Also, don't forget to state your dislaimer status when posting patches in somebody else's report.


By: Jeffrey C. Ollie (jcollie) 2006-05-08 12:52:55

Here's a new patch that is against trunk rev 25654.  Disclaimer on file.

By: Serge Vecher (serge-v) 2006-05-08 13:05:45

This pertains to the hunk dealing with manager.h
1. Spelling error: 'recieved'
2. Tabulation with spaces
3. Comment should probably reference the actual event names, instead of their approximations.

By: Jeffrey C. Ollie (jcollie) 2006-05-08 13:27:44

New patch with vechers' comments addressed...

By: Moises Silva (moy) 2006-05-08 16:34:39

Vechers: Sorry for not informing about my disclaimer, i tought bug marshalls could see that info easily.

jcollie: thanks for that! :)

Anything missing ?

By: Serge Vecher (serge-v) 2006-05-11 09:04:39

jcollie has applied the latest patch to the following branch:

By: Jeffrey C. Ollie (jcollie) 2006-05-16 08:16:33

The code in my branch should be ready to go...

By: Olle Johansson (oej) 2006-05-16 08:24:39

I would vote for ONE event named "DTMF" and a variable saying if it's received or sent. Let's make it as clean as possible.

By: Jeffrey C. Ollie (jcollie) 2006-05-16 11:07:41

OK, here's what the new event looks like...

Event: DTMF
Privilege: dtmf,all
Timestamp: 1147795574.967703
Channel: SIP/5159490915-431f
Uniqueid: 1147795505.0
Digit: 2
Direction: Received
Begin: Yes
End: Yes

By: Jeffrey C. Ollie (jcollie) 2006-05-19 23:47:41

Per discussion with kpfleming, corydon76, and qwell on IRC I've updated the branch to have a global option in manager.conf that controls generation of DTMF events.  While I was at it I converted the rest of the global boolean options in manager.c to use ast_flags and related macros.

By: rchurch (obelix) 2006-05-27 03:06:55

I have tested the latest from trunk r30580 and the bug6082 branch and they both
display intermittent connection problems to the Manager API.

Connection is fine from localhost, and connections forwarded via SSH

Connection from an external machine requires a number of repeated tries to get
a successful connection. I do get one eventually sometimes after only 2 tries,
sometimes after 10 tries. The connections are being rejected randomly for some
unknown reason.

During testing I also noticed one thing, the DTMF events stops after a call
begins ringing and gets answered. Pressing any keys after that has no effect.

Another related thing is the transfer functions, like pressing * to disconnect a call also does not work, but I don't know whether it is related to the DTMF
events changes.

By: Serge Vecher (serge-v) 2006-05-30 08:24:05

obelix: since the trunk also exibits the problem, some of the recent changes there must have broken something. If at all possible, can you please figure out which revision did it by downgrading? If you find the source of the problem, please file a separate report with a reference to this bug. Thanks

By: rchurch (obelix) 2006-06-06 06:57:04

hi guys, I am not sure of exactly which version number the problem appeared with, but judging from this post http://lists.digium.com/pipermail/asterisk-dev/2006-May/020836.html, it was on 22nd may. I continued again and it was around the 25th that the problem appeared in the trunk version. I can't be sure of the exact version as I kept on overwriting the previous compiles.

I will be trying trunk regularly to see if the problem will go away.

PS. Is there a CLI command to display what build you are using, an option to have an abbreviated name show up in the CLI prompt? I looked and couldn't find one, it will be a great help where testing is concerned.

By: Serge Vecher (serge-v) 2006-06-06 09:42:10

'show version' will show you the info on the build. I don't think you can have the abreviated version show up instead of CLI> prompt.

By: rchurch (obelix) 2006-06-07 05:43:28

Is the DTMF event supposed to interrupt the link? I see Unlink and Link events whenever it occurs. It also creates some kind of static on the line.

Can it also be intercepted, so the option can left to the manager to handle as required?

I see 2 events Received and Sent - it would be nice to Send only if you want to, especially in the case of static sound I have described, or come out clearly has a DTMF tone on the other end

By: adomjan (adomjan) 2006-06-07 05:46:22

My application needed the both event :)

By: mitcheloc (mitcheloc) 2006-06-12 02:46:42

When using PlayDTMF it works fine on terminated calls, but does not on calls to VoiceMailMain. Is this a limitation of PlayDTMF or am I doing something wrong?

By: Moises Silva (moy) 2006-07-03 13:46:27

Any news on this? I would love to get this thing on Asterisk to not having to patch manually each time I upgrade Asterisk. I have tested jcollie branch with nothing but success :)

By: Serge Vecher (serge-v) 2006-09-01 14:01:56


By: rchurch (obelix) 2006-09-15 03:20:08

I have tried to compile the latest version (14/09/2005) of this branch and it failed with some libxml compilation errors. It also appears to require GNU make 3.81 which the latest trunk doesn't.

I also noticed that the DTMF events do not work with trunk.

Has this branch been incorporated into trunk?

By: jmls (jmls) 2006-11-01 12:52:26.000-0600

adomjan, can we have an updated patch for trunk please ? Thanks very much

By: adomjan (adomjan) 2006-11-02 04:48:24.000-0600

Hm, I forgot this project I'm using happily my uggly 1.2 version in my production enviroment. The other guys get along more then me as I red...

By: Moises Silva (moy) 2006-11-02 10:32:52.000-0600

Ok, now that the bugmarshalls are back, i swear god i will make a new patch for trunk tonight. Please dont go away :) , i really want to get this into trunk, I dont want to patch my production servers forever.

By: Moises Silva (moy) 2006-11-03 10:33:21.000-0600

Updated patch on files now. Compiles fine, somebody can test it? I will have some time to test it until tomorrow, hopefully somebody else can do it today.

Disclaimer ok.


By: Serge Vecher (serge-v) 2006-11-09 09:41:04.000-0600

adomjan, obelix: we need your test results here ...

By: adomjan (adomjan) 2006-11-09 10:06:15.000-0600

This patch works fine. I would be happy if I shold not patch when I upgrade my production system to v1.4.

By: mitcheloc (mitcheloc) 2006-11-09 11:25:50.000-0600

Does this work with the voice mail menu now?

By: adomjan (adomjan) 2006-11-09 11:36:41.000-0600

I dont use VM I didn't test, I will.

By: adomjan (adomjan) 2006-11-09 11:41:01.000-0600

I tested now, only in simple VoiceMailMain(), it works.

By: Jason Parker (jparker) 2006-11-17 16:29:32.000-0600

I think it would be incredibly useful if it also showed the dtmf length (via the new variable length dtmf code).  Not a requirement of being added, just...something to think about.

By: Tilghman Lesher (tilghman) 2007-04-10 18:55:37

Committed to trunk, revision 61324.