NOTE: I tested this on Centos and I wasn't able to reproduce it. So it looks like a windows problem or it might be that since I got one error when trying to compile FreeSWITCH on windows I tried to fix it with the fix on this jira bug report http://jira.freeswitch.org/browse/FSBUILD-296?focusedCommentId=20921&page=co... so maybe that is the problem. (I am using Flite for TTS) -- I have a macro (phrase) file that is set up like this. <macro name="test_tts"> <input pattern="(.*)"> <match> <action function="speak-text" data="*Please enter the extension then press the pound key.*"/> <action function="*play-file*" data="ivr/ivr-to_repeat_these_options.wav"/> <action function="play-file" data="ivr/ivr-please.wav"/> <action function="play-file" data="voicemail/vm-press.wav"/> <action function="play-file" data="digits/9.wav"/> <action function="play-file" data="silence_stream://2000"/> </match> </input> </macro> Then when I use this phrase file in the play_and_get_digits application, something like this. <action application="play_and_get_digits" data="1 4 3 7000 # phrase:test_tts phrase:test_play_file \d+"/> If I try to enter a number on the phone for example "234#" what happens here is that if it is in the middle of playing the *speak-text *part of the phrase file then it will just return "2" and stop right away (as if he is done) if "234#" is pressed when the *play-file* part of phrase file is playing then it will work as it should work (returning 234). Yitzchok