[asterisk-dev] Voicemail with 's' option isn't really silent

Horwich IT Services (Godwin Stewart) g.stewart at horwits.co.uk
Tue Mar 11 14:44:43 CDT 2008


Hi,

While trying to silence the Voicemail application completely -- ie: do away
not only with the instructions given before the beep but also the 'thank
you' message played back after the caller presses the '#' key, I started
looking at the code of Asterisk 1.4.10 and now 1.4.18.

In apps/app_voicemail.c, I see that the 'silent' flag is parsed by
vm_exec() and then passed along to leave_voicemail().

leave_voicemail(), however, does not pass this flag along to
play_record_review(), so by the time execution reaches
ast_play_and_record_full() and then __ast_play_and_record() in main/app.c,
the 'silent' flag has long since been lost and the 'auth-thankyou' sound is
played back regardless.

I can see the point in playing back the beep in all cases, but is there a
compelling reason why 'auth-thankyou' is played back anyway?

If I were to propose a patch against Asterisk 1.4.18 that passed the
'silent' flag *all* the way down the call stack, thus making the various
applications that call __ast_play_and_record() actually do "what it says on
the tin", would there be any interest in it or am I alone on a crusade here?

Alternatively, should it not be the application ultimately calling
__ast_play_and_record() that takes responsibility for playing back
'auth-thankyou'? This approach certainly seems more logical to me in that
it negates the need to modify function prototypes.

Any thoughts?

-- 
Godwin Stewart - Horwich IT services



More information about the asterisk-dev mailing list