[asterisk-dev] Voicemail redisign

Kristian Kielhofner kris at krisk.org
Wed Nov 1 10:11:50 MST 2006


Matt O'Gorman wrote:
> I realize this has come up several times and thought of in different
> ways.  Recently in getting all of the fun fun imap code working I
> have been thinking all this ifdef and statically defined options etc
> is the wrong way to do things.  I think with one fairly well done
> chunk of code the rest of imap could be rewritten very simply. First
> we need a generic storage api so main/storage  This would not take to
> much work as the majority of work is already there inside of
> app_voicemail.  Then we abstract each storage type into
> store/store_local, store/store_odbc, store/store_imap.  also shouldnt
> be too difficult to move this code out of app_voicemail. Then
> app_voicemail is just a handler for voicemail users and a loader of
> the default config file. voicemailmain and voicemail dialplan
> applications would just point to macros like this in your dial plan
> 

..dialplan code snipped..

> etc etc obviously not everyone will want to change to this new way of
> doing voicemail menus as it will tend to be pages of dialplan,
> probably a good bit shorter in ael.  But I think we could give out a
> good set of defaults and people could do tweaks here and there.  As
> well as making it easier for people to develop more storage methods
> for asterisk voicemail and making the world a generally better place.
> 
> 
> what do you guys think?
> 
> Mog
> 

Mog,

	Great idea here.  I know of several people that have discussed this 
before and just never got around to it...

	Even with "pages and pages" of dialplan or AEL2, how hard would it be 
to do this with an #include and Macros:

#include /etc/asterisk/apps/voicemail

exten => 1000,1,Macro(voicemail-main,${CALLERIDNUM}@default)

exten => 100,1,Macro(voicemail,${EXTEN}@default,u)

	Looks good to me!

	I suppose one thing that should still be handled by apps is the actual 
message playback, etc.  We already have VMAuthenticate, why not add 
VMPlayback (like ControlPlayback only it accepts msg/mailbox/context 
arguments)?  Perhaps ControlPlayback is enough (when supplemented by 
some dialplan-fu)?  How would this affect voicemail.conf?

--
Kristian Kielhofner


More information about the asterisk-dev mailing list