Authentication() and Read() applications

Hi,
I have a hard time configuring DTMF on my IPBX.
I’m receiving incoming calls on a SIP trunk and I’d like to allow the caller to dial a PIN code.
When I’m using Authenticate() application it recognize the tones but when I’m using Read() it always fails (nothing entered).
I tried the following combinations:

I also tried staying in local extensions and both Authenticate and Read are working great.
I really could use some help on this.

Thanks,
BR

Code to test:
Authenticate():

exten = login,1,Answer()                         
exten = login,2,Authenticate(1111)
exten = login,n,Goto(2)

Read():

exten = login,1,Answer()                         
exten = login,2,Read(NUMBER,,4)                  
exten = login,n,Gotoif($[ "${LEN(${NUMBER})}" > "4"]?SayNumber(${NUMBER}))
exten = login,n,Goto(2)

If anybody could give me a hint on why authenticate works and read doesn’t.
I’m really out of idea.

Thanks

back for help.
I haven’t figure out why it behaves differently when using read and authentication.
To summarize authentication recognize DTMF tones and read doesn’t.