[asterisk-users] Voicemail argument size limit

Donald Stahl don at calis.blacksun.org
Mon Nov 13 12:27:19 MST 2006


I'm trying to implement a voicemail distribution list using asterisk and I've 
hit a bump. I've got an agi script that parses voicemail.conf and generates a 
list of voicemail boxes to use as an argument to the voicemail() function.

The problem is that the argument exceeds 256 characters (100 mailboxes * 5 
characters per mailbox [& + 4 digit mailbox] = 500+ characters) and asterisk 
seems to trunk there resulting in only the first 50 people getting the 
voicemail.

I've searched for a solution on the lists and through google to no avail.

Can this be fixed with a simple buffer size change in a couple of places or am 
I going to run into dependencies everywhere? Going through the code it looks 
like char[256]'s in a number of places that could be causing the problem but I 
haven't had the time to go through the code in any depth.

This is asterisk 1.2.12.1 although I am going to be upgrading to the latest 
version shortly.

If there is a limit then is this documented anywhere? Should a function that 
gets an argument of 500 characters simply truncate or should it simply return 
an error that the input is too long so as to avoid operating on partial data?

I've already considered a number of workarounds including copying the 
messages right from the file system but the only way to get things like 
email notification is to use the function. Is there a copy function that I 
could use in a loop that would also notify anyone with an email 
notifcation set up?

Any help or guidance would be appreciated.

Thanks in advance,
-Don


More information about the asterisk-users mailing list