Michael - Oops, Valid point.
I've tried numerous techniques and discovered the issue, I think.
bind_digit_action doesn't run inline. Instead it queues the action, which doesn't do anything while the channel is in eavesdrop. The bind_meta_app has the option of running inline using the "i" flag, which appears to function as desired.
The other difference is that I can designate any DTMF combination for bind_digit_action. While bind_meta_app only accepts a metakey + single digit. The desired functionality I'm looking for was to use a single digit without metakey.
Dialplan for bind_digit_action (FAILS):
<action application="bind_digit_action" data="my_digits,1,exec:execute_extension,pull_from_voicemail XML default"/>
<action application="digit_action_set_realm" data="my_digits"/>
<action application="eavesdrop" data="${originating_leg_uuid}"/>
Results:
RTP RECV DTMF 1:1600
Digit match binding [exec:execute_extension][pull_from_voicemail XML default]
-------
Dialplan for bind_meta_app (WORKS):
<action application="bind_meta_app" data="1 a i execute_extension::pull_from_voicemail XML det"/>
<action application="eavesdrop" data="${originating_leg_uuid}"/>
Results:
RTP RECV DTMF #:1600
RTP RECV DTMF 1:1600
Processing meta digit '1' [execute_extension::pull_from_voicemail XML det]
EXECUTE sofia/internal/sip:1001@10.0.1.7:60446 execute_extension(pull_from_voicemail XML det)
Processing Outbound Call <1001>->pull_from_voicemail in context det
Malfunction! Need input! Can you throw some logs and config info on
pastebin? I think some folks might be interested in seeing this problem
solved and if you've already started the work I bet others would be willing
to assist.