[Home]

Summary:ASTERISK-01252: app_Read does not always work
Reporter:lancey (lancey)Labels:
Date Opened:2004-03-20 16:00:58.000-0600Date Closed:2011-06-07 14:04:54
Priority:MajorRegression?No
Status:Closed/CompleteComponents:Core/General
Versions:Frequency of
Occurrence
Related
Issues:
Environment:Attachments:
Description:If called from some extension more than once consecutive, Read() does not wait for user input and says "User entered ''":
exten => 111, 1, Read(var1)
exten => 111, 2, Read(var2)
exten => 111, 3, Hangup()

I called the extension twice, that's what i get:
   -- Executing Read("SIP/2001-e808", "var1") in new stack
   -- User entered '123'
   -- Executing Read("SIP/2001-e808", "var2") in new stack
   -- User entered '456'
   -- Executing Hangup("SIP/2001-e808", "") in new stack
 == Spawn extension (sip, 111, 3) exited non-zero on 'SIP/2001-e808'
   -- Executing Read("SIP/2001-68a1", "var1") in new stack
   -- User entered ''
   -- Executing Read("SIP/2001-68a1", "var2") in new stack
   -- User entered '123'
   -- Executing Hangup("SIP/2001-68a1", "") in new stack
 == Spawn extension (sip, 111, 3) exited non-zero on 'SIP/2001-68a1'

If i call the extension again 60 secs after last call, it works just fine.

****** ADDITIONAL INFORMATION ******

i suspect app_getdata does not clean something, or some timer is not reset, dunno exactly. I'm looking into this now, but if someone has some clear idea what it might be, please tell me.
Comments:By: lancey (lancey) 2004-03-20 16:23:02.000-0600

The problem seems to be related to the # pound key used to terminate the reading.
I'm testing with ATA-186, so when i call 111, i press # to make it dial right now and not wait.
First time, it gets the extension called and works.
Next time, when i dial 111#, the extenion gets called, and # is transferred to it as I have pressed it after i dialled the extension!
The # seems to remain on the buffer, this might be an ATA-186 bug :(

By: lancey (lancey) 2004-03-20 16:29:57.000-0600

The problem is represantable using ATA-186 as client, with X-Lite there are no problems.
This is caused by me hitting the '#' to make the ATA dial it right now and not wait. ATA seems to pass the # also. I don't know why.
But this still doesn't explain why it wokrs the first time.

By: Mark Spencer (markster) 2004-03-20 16:51:32.000-0600

The ATA ends its call with "#" but sometimes the DTMF also makes it into the stream.  This is a known issue with the cisco and is NOT a bug in Asterisk.