Problem with users barging dial plan with 'Read' function

Does anyone know how to detect when the user has not entered anything and timed out, or entered hash when using the ‘Read’ function?

We have a serious problem with callers barging our dial plan by just pressing hash immediately.

We need the normal operation to happen (goto operator) if they enter no digits and then timeout, but have the audio prompt played again for example if they try to barge the system by just pressing hash without entering any digits.

We know hash is a End-of-input command, but there must be a way of telling the difference as this is a problem for us?!?!

Thanks in advance.

Hi ajl119,

Try *CLI> core show application Read and if you still have problems please the relevant part of your dialplan.

-= Info about application ‘Read’ =-

Read a variable


Reads a #-terminated string of digits a certain number of times from the
user in to the given variable.
filename – file to play before reading digits or tone with option i
maxdigits – maximum acceptable number of digits. Stops reading after
maxdigits have been entered (without requiring the user to
press the ‘#’ key).
Defaults to 0 - no limit - wait for the user press the ‘#’ key.
Any value below 0 means the same. Max accepted value is 255.
option – options are ‘s’ , ‘i’, ‘n’
‘s’ to return immediately if the line is not up,
‘i’ to play filename as an indication tone from your indications.conf
’n’ to read digits even if the line is not up.
attempts – if greater than 1, that many attempts will be made in the
event no data is entered.
timeout – An integer number of seconds to wait for a digit response. If greater
than 0, that value will override the default timeout.

Read should disconnect if the function fails or errors out.