If you look at my original post you'll see I tried to do that with the same results: session:execute("conference", argv[1] .. "@default") api = freeswitch.API() confplay = api:execute("conference", argv[1] .. " play /usr/local/freeswitch/sounds/tones/norstar.wav ") What is happening in Lua is because it's not a threadable language you can't do an "execute and forget" on a particular command. So when the conference is run Lua will stop executing at that point. Josh Patten Brazos County Network Engineer 979.361.4676 From: freeswitch-users-bounces@lists.freeswitch.org [mailto:freeswitch-users-bounces@lists.freeswitch.org] On Behalf Of Michael Collins Sent: Wednesday, May 11, 2011 12:48 AM To: FreeSWITCH Users Help Subject: Re: [Freeswitch-users] mod_lua play file into conference On Mon, May 9, 2011 at 11:34 PM, Josh M. Patten <jpatten@co.brazos.tx.us<mailto:jpatten@co.brazos.tx.us>> wrote: It seems the way this could be accomplished is to allow asynchronous execution capabilities in lua. However I don't think this exists. Is there a better way to "execute and forget" the conference app so the script can move on to the next bit of code? Try using an API instead of messing with session:xxx and all that stuff: api = freeswitch.API(); res = api:execute("conference",conf_name .. " play /path/to/file.wav"; conf_name is the name of the conference you are using. If you're not sure what name you have then just start up a conference and then type "conference list" at fs_cli and you'll see the name. You can use channel variables, etc. if the name changes depending on the destination number. -MC