[Asterisk-Users] Changing Asterisk Voicemail Storage Location

Adam Goryachev mailinglists at websitemanagers.com.au
Thu Nov 25 02:03:25 MST 2004


On Thu, 2004-11-25 at 16:22, Java Rockx wrote:
> Can anyone tell me how difficult it would be to change the way asterisk stores/retrieves user
> messages as follows?
> 
> Currently mailboxes are in 
> /var/spool/asterisk/voicemail/{context}
> 
> But I need to store messages in a hash to limit the number of directories per context. All mailbox
> extensions are the user's 10-digit phone number (aka, DID). The parts of a DID are as follows
> So my hashing would look like this
> 
> /var/spool/asterisk/voicemail/{context}/{npa}/{nxx}/{line}
> 
> And in the {line} directory we would have the usual Asterisk files/directories for inbox, etc.
> 
> We're looking at a large number of mailboxes and this would give us a maximum of 10000 mailboxes
> per directory - which plays nice with the Linux file system.

You might look at alternative filesystem formats. "Linux file system" is
not any file system I've heard of. Most likely you are referring to the
filesystem that you get by default when you do an install and just click
next without understanding the option each step of the way.
Specifically, look at reiserfs, it is very good at handling directories
with large number of files, as frequantly seen in mail servers using
maildir format etc...

I'm not sure I understand all the details, but reiserfs should be
equivalent in speed to a DB.... at least, I've frequantly seen it
referred to in that way back when I used to subscribe to their mailing
list.

I suppose you might ask the question, is it faster to parse the mailbox
name in userspace and then look up the correct file, or let the kernel
parse the name, and find the file for you....

Hope this helps you...

Regards,
Adam





More information about the asterisk-users mailing list