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