>From the CLI/event-socket I want to simulate a dtmf press on an existing channel to make it perform an action as if the caller had pressed the key themselves (specifically they're in a javascript dialplan and listening to a session.streamFile() which is waiting for a dtmf input.)

I've had a play with uuid_send_dtmf but all that seems to do is play the tone on the channel, even with it's undocumented third parameter for from|to|both. The tone is heard, but the action that would have been performed if the caller had pressed doesn't happen.

Is there any way to do this?

I'd really like to keep the call in the javascript dialplan, as breaking them out could get messy, with the other things that are going on.

Cheers,
Fraser