5 seconds pause after dtmf

Hello. I have problem with dtmf on Asterisk (version 10.4.0).
When I use Read(speech,1) in dial plan, there appears 5 seconds pause after I dial digit on the phone. But I don’t need this pause.

[Oct 21 13:57:43] DTMF[16117]: channel.c:4136 __ast_read: DTMF begin ‘1’ received on SIP/server1-00000027
[Oct 24 13:57:43] DTMF[16117]: channel.c:4140 __ast_read: DTMF begin ignored ‘1’ on SIP/server1-00000027

and then in 5 seconds:

[Oct 21 13:57:48] DTMF[16117]: channel.c:4051 __ast_read: DTMF end ‘1’ received on SIP/server1-00000027, duration 5000 ms

There is no such version of Asterisk.

The trace suggests that you held the key down for 5 seconds.

You are going to have to tell us a lot more about your configuration, so that we can understand what is actually detecting the DTMF (that assumes you didn’t really hold the key down for 5 seconds).

asterisk -v

u-Law coding table test complete.
u-Law tandem transcoding test complete.
a-Law coding tables test complete.
a-Law tandem transcoding test complete.
Asterisk 10.4.0, Copyright © 1999 - 2012 Digium, Inc. and others.
Created by Mark Spencer markster@digium.com

For test I left only two strings in dialplan:

exten => 999,1,Answer
exten => 999,2,Read(opt,speech,1)
exten => 999,3,NoOp(${opt})

Result was same, 5 seconds before NoOp.
I don’t held button 5 seconds, just click on the button.

I was probably wrong about the version. It’s an obsolete version that doesn’t normally appear here. Current supported versions are 1.8.x and 11.x.

DTMF handling is done by the channel driver, so it the channel driver, and everything upstream of it that you need to tell us about.