[asterisk-bugs] [Asterisk 0011837]: Patch: ability to sent to multiple recipients.
noreply at bugs.digium.com
noreply at bugs.digium.com
Mon Feb 4 15:25:27 CST 2008
A NOTE has been added to this issue.
======================================================================
http://bugs.digium.com/view.php?id=11837
======================================================================
Reported By: travishein
Assigned To:
======================================================================
Project: Asterisk
Issue ID: 11837
Category: Applications/app_voicemail
Reproducibility: N/A
Severity: feature
Priority: normal
Status: feedback
Asterisk Version: 1.4.17
SVN Branch (only for SVN checkouts, not tarball releases): N/A
SVN Revision (number only!):
Disclaimer on File?: N/A
Request Review:
======================================================================
Date Submitted: 01-24-2008 11:47 CST
Last Modified: 02-04-2008 15:25 CST
======================================================================
Summary: Patch: ability to sent to multiple recipients.
Description:
for the menu option 3 (advanced), 5 (leave voice message to a recipient)
we came across the need to allow a user to be able to enter more than one
extension to send a message to (instead of the leave a message for just one
extension at a time as the current implementation was).
To make this work the logic is now
1- user presses 3, 5 to get to the leave voicemail prompt.
2- the existing prompt to enter the extension is played.
3- the user enters the extension for which to send the voicemail to
4- (NEW): the system play a message :press 1 to send message, press 2 to
add another recipient.
if user presses 2 on this new prompt, the system returns to the step 3,
to prompt and process of entering the extension.
if the user presses 1 on this new prompt, the system continues to the
"please say your message" as it used to before.
5- system plays the please say your message when finished hang up.
prompt.
6- user sais their message, and hangs up, or preses pound key.
In order to realize this, we changed input gathering function so that the
char[] buffer that stores the target recipient is larger, as long as the
max receiver string. The operation of adding more recipients now builds the
delimited recipient string that leave_voicemail() understands and expects,
mainly
extension at context&extension at context
There is also boundary checking so that if the user tries to enter more
exensions than is room in the char[] array, the system will play a (new)
vm-forward-multiple-too-many message to indicate the user is attempting to
forward the message to too many recipients.
So in addition to the attached patch file, there are two new sound audio
prompts that the system must find in the sound prompts folder, so that it
can of course play these when needed.
vm-forward-multiple : "Press 1 to enter an send message, press 2 add
another recipient"
vm-forward-multiple-too-many : when the user has attempted to enter too
many exensions to leave a message to.
======================================================================
----------------------------------------------------------------------
putnopvut - 02-04-08 15:25
----------------------------------------------------------------------
I've looked a bit further at the existing code, and it appears that this
could actually be implemented a lot more easily than it is done here.
forward_message already supports leaving a voicemail for multiple
recipients by separating the extensions with a * key. Right now, the code
explicitly handles the case of forwarding a message but does not allow for
leaving a message for multiple recipients in the same way via
VoiceMailMain. I was looking at SVN revision 102354 earlier and found the
section beginning on line 4401 (line numbers may be slightly different in
different revisions). The line is "if(flag==1) {". Inside this block of
code, a single mailbox string is made and then leave_voicemail is called.
This could be modified to remove strings off the "extensions" list that was
created earlier in the function and then call leave_voicemail with all
these extensions with '&' placed between them.
Issue History
Date Modified Username Field Change
======================================================================
02-04-08 15:25 putnopvut Note Added: 0081691
======================================================================
More information about the asterisk-bugs
mailing list