I am developing an application that talks to remote devices using a DTMF touch tone protocol. I am using the ask method with a :terminator option to receive data from the device calling the server. My stack is as follows
At times, tones never make it into the result returned from the ask method. One example of this can be seen in the below referenced log [1].
The device sends the following DTMF sequence #4* 0015 #5*. However, the ask call returns "#40015#5". I see the below sequence in the log which seems to indicate the first * makes it into the adhearsion stack. However, the ask method does not return until the second * is received.
I did not have trace level logging on when I ran across this, but have since turned on trace logging and hopefully can give you a trace log soon.
[2012-09-08 07:04:24] DEBUG Celluloid: [RECV] Event: DTMF
Privilege: dtmf,all
Channel: SIP/telepacific-00000114
Uniqueid: 1347113036.276
Digit: *
Direction: Received
Begin: Yes
End: No
Event: DTMF
Privilege: dtmf,all
Channel: SIP/telepacific-00000114
Uniqueid: 1347113036.276
Digit: *
Direction: Received
Begin: No
End: Yes
[2012-09-08 07:04:24] DEBUG Celluloid: [RECV] #<RubyAMI::Event name="DTMF", headers={"Privilege"=>"dtmf,all", "Channel"=>"SIP/telepacific-00000114", "Uniqueid"=>"1347113036.276", "Digit"=>"*", "Direction"=>"Received", "Begin"=>"Yes", "End"=>"No"}, text_body=nil, events=nil, action=nil>
[2012-09-08 07:04:24] DEBUG Celluloid: [RECV] #<RubyAMI::Event name="DTMF", headers={"Privilege"=>"dtmf,all", "Channel"=>"SIP/telepacific-00000114", "Uniqueid"=>"1347113036.276", "Digit"=>"*", "Direction"=>"Received", "Begin"=>"No", "End"=>"Yes"}, text_body=nil, events=nil, action=nil>
[2012-09-08 07:04:24] DEBUG Adhearsion::Call: 004e1225-d5ed-4f02-8109-5331a8879bf7: Receiving message: #<Punchblock::Event::Asterisk::AMI::Event name="DTMF", attributes_hash={:privilege=>"dtmf,all", :channel=>"SIP/telepacific-00000114", :uniqueid=>"1347113036.276", :digit=>"*", :direction=>"Received", :begin=>"Yes", :end=>"No"}, target_call_id="004e1225-d5ed-4f02-8109-5331a8879bf7", component_id=nil, target_mixer_name=nil>
[2012-09-08 07:04:24] DEBUG Adhearsion::Call: 004e1225-d5ed-4f02-8109-5331a8879bf7: Receiving message: #<Punchblock::Event::Asterisk::AMI::Event name="DTMF", attributes_hash={:privilege=>"dtmf,all", :channel=>"SIP/telepacific-00000114", :uniqueid=>"1347113036.276", :digit=>"*", :direction=>"Received", :begin=>"No", :end=>"Yes"}, target_call_id="004e1225-d5ed-4f02-8109-5331a8879bf7", component_id=nil, target_mixer_name=nil>