I am experiencing a delay waiting for the system to respond in a lua script that is using playAndGetDigits. I press a key while the voice is still speaking, and it continues to speak for a few seconds before moving to the part of the script for the particular keypress. Also, related: sometimes it speaks the "invalid" message even though the key pressed is a valid one, and then immediately after speaking the invalid message, it continues with the processing for the key that was pressed. So I know I didn't press an invalid key. -- session:execute('flush_dtmf'); session:flushDigits() local digits = session:playAndGetDigits(1, 1, 3, 2000, "#", "phrase:play_submit_rerecord:1:2:3", invalid, "\\d{1}") if ( digits == "1") then ETC here is the phrase: <macro name="play_submit_rerecord"> <input pattern="^([0-9#*]):([0-9#*]):([0-9#*])$"> <match> <action function="speak-text" data="To listen to your dictation, press $1, To submit your dictation , press $2, To discard your dictation and start over, press $3."/> </match> </input> </macro> Is the speak-text just too cpu intensive and causing it to be slow to respond to the DTMF? Any help would be appreciated... thanks!