DTMF issues in asterisk


i am having in issues in getting the DTMF signalling. asterisk is not getting the correct DTMF . like

* DTMF-relay event received: 1
* DTMF-relay event received: 1
  == CDR updated on SIP/2877004-b5cc2b18
    -- Executing Dial("SIP/2877004-b5cc2b18", "SIP/1119|50") in new stack
Jan 31 13:48:29 NOTICE[17843]: app_dial.c:1076 dial_exec_full: Unable to create channel of type 'SIP' (cause 3 - No route to destination)
  == Everyone is busy/congested at this time (1:0/0/1)
    -- Executing VoiceMail("SIP/2877004-b5cc2b18", "u1119") in new stack
Jan 31 13:48:29 WARNING[17843]: app_voicemail.c:2461 leave_voicemail: No entry in voicemail config file for '1119'

* DTMF-relay event received: 9
    -- SIP/intlno-09597628 answered SIP/1129-b5a02938
* DTMF-relay event received: 0

Jan 31 13:48:35 WARNING[17843]: pbx.c:2424 __ast_pbx_run: Invalid extension '90', but no rule 'i' in context 'Menu'

as above i press  1190 , it gets only first two digits and then transfer this call to 1119 and after doing that it gets the other two digits. which is wrong it should get the four digits like 1190 and transfer it to 1190 instead of getting only two digits first and then get the other ones .. how to solve this issue .

Who is Participating?
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

What DTMF method are you using (inband, sip info, or rfc)?
nocinfospanAuthor Commented:
With that method the digits are transmitted digitally so asterisk cannot read the wrong digits unlike when trying to recognise dtmf tones.

Can you post the section of the asterisk dialplan which waits for you to enter the digits.
Powerful Yet Easy-to-Use Network Monitoring

Identify excessive bandwidth utilization or unexpected application traffic with SolarWinds Bandwidth Analyzer Pack.

I have had problems with Asterisk being over-sensitive to DTMF when it is sent as audio. It can interpret one tone as two so 1190 could become 11190. However, if all the telephones and circuits are SIP and rfc2833 is used throughout then you shouldn't get that problem.

It doesn't make much sense either that your debug output is showing "DTMF-relay event received: 9" *after* it has attempted to dial SIP/1119. That is in the wrong sequence. How did you get it to show those DTMF relay events? I could never find a debug option that showed what DTMF had been received.

Are you keying the DTMF tones after the call has been established or is that what you dial when you first make the call?
I assumed there must be an IVR menu being used. When dialing a number the phone waits and dials the complete number after a preset number of seconds or when a particular key is pressed so it does not look like that is the case.
nocinfospanAuthor Commented:
sorry for late reply because i did'nt receive any email regarding new post to my question.

Any how thats what i am using in my extensions.conf for inbound call to land in

exten => s,1,Wait(3)
exten => s,2,Background(collection)
;exten => s,2,Playback(collection)

;Dial desired Extension
exten => _XXXX,1,Dial(SIP/${EXTEN},50)
;exten => _1XXX,2,Gotoif($[${DIALSTATUS} = CHANUNAVAIL]?6)
;exten => _1XXX,3,Gotoif($[${DIALSTATUS} = CONGESTION]?6)
;exten => _1XXX,4,Gotoif($[${DIALSTATUS} = BUSY]?6)
;exten => _1XXX,5,Gotoif($[${DIALSTATUS} = HANGUP]?6)
exten => _XXXX,2,VoiceMail(u${EXTEN})
;exten => _1XXX,3,HangUp()
;exten => _1XXX,6,VoiceMail(${EXTEN}@voice_test)

;Queue incase of unknown agent
exten => 0,1,Answer
exten => 0,2,Ringing
exten => 0,3,Wait(1)
exten => 0,4,Dial(SIP/7777,50,tT)
exten => 0,5,VoiceMail,u7777
;exten => 0,4,Background(queue-periodic-announce)
;exten => 0,5,Queue(umair|n|||)
exten => 0,6,Hangup

exten => t,1,Answer
exten => t,2,Wait(1)
exten => t,3,Goto(Menu,s,2)
You havent set any timeouts and there are a couple of minor errors in the dialplan. Try this one and see how you get on.

exten => s,1,Wait(2)
exten => s,n,Answer
exten => s,n,Wait(1)
exten => s,n,SetMusicOnHold(default)
exten => s,n,Set(TIMEOUT(digit)=5)
exten => s,n,Set(TIMEOUT(response)=10)
exten => s,n(menu),Background(collection)

exten => _XXXX,1,Dial(SIP/${EXTEN},50)
exten => _XXXX,2,VoiceMail(u${EXTEN})

;Queue incase of unknown agent
exten => 0,1,Wait(1)
exten => 0,n,Dial(SIP/7777,50,tT)
exten => 0,n,Voicemail(u7777)
exten => 0,n,Hangup

exten => t,1,Wait(1)
exten => t,n,Goto(Menu,s,menu)

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
nocinfospanAuthor Commented:
k thanks i will check it now
nocinfospanAuthor Commented:
okie i just tried through VOIP as well through PSTN.

From both if i tried to interrupt the IVR to early by dialing paticular extension then asterisk did'nt get the proper extension or improper extension if i wait let suppose five or seven secs to listen to IVR a little bit and then try to dial some extension it works fine.
Once the IVR starts playing then it should work. There is a 2 second pause, a pickup and then another 1 second pause before the IVR starts playing. You could take these out if you wish if that is stopping you from entering the extension as soon as you want.
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
IP Telephony

From novice to tech pro — start learning today.