Hi Michael,

Thanks for your answer (quoted hereafter)..

"To answer your initial question: yes, what you are trying to accomplish is definitely possible. However if you want the caller ("A" in your scenario) to press only a single key then you can't use bind_meta_app (BMA). BMA requires two key presses: * and one other DTMF. That's why your scenario requires ** to trigger."

... but i'm already using bind_digit_action :-)

I probably gave too much information and made the problem description unclear.
Sorry about that & let me try to explain again :

Every time the star key is pressed, it will correctly execute the lua script, no problem here.. But

When executing that lua script  :
The first time, the standard freeswitch moh is heard (on the b_leg) when playAndGetDigits is called (on the a_leg).
The 2nd time, my custom freeswitch moh is heard (on the b_leg) when playAndGetDigits is called (on the a_leg).

Here are the instruction which are causing me headaches :

/* Change the moh on the A leg */
api:executeString("uuid_setvar ".. b_leg_uuid .. " hold_music /usr/local/freeswitch/sounds/fr/ca/june/voxService/fr_wait_email.wav");
/* Play and request digit (B leg) */

digit = session:playAndGetDigits(1, 1, 1, 5000, '#', '/usr/local/freeswitch/sounds/
fr/ca/june/voxService/fr_ask_email.wav', '', '\\d+');

I was expecting fr_wait_email.wav to be played every time, but it look like "uuid_setvar <b_leg_uuid> hold_music <custom_wav>" is not taken into account on-the-fly, but only after bind_digit_action is finished.
Is that a normal behaviour ? If yes, what would be the correct way of changing the moh when bind_digit_action is executed ?

Regards,

Julien