Summary: | ASTERISK-06878: [branch][post 1.4] Allow caller to dial 1-9 while leaving voicemail | ||
Reporter: | Mitch Sharp (bluecrow76) | Labels: | |
Date Opened: | 2006-05-01 17:05:40 | Date Closed: | 2008-01-09 12:30:22.000-0600 |
Priority: | Major | Regression? | No |
Status: | Closed/Complete | Components: | Applications/app_voicemail |
Versions: | Frequency of Occurrence | ||
Related Issues: | |||
Environment: | Attachments: | ( 0) 20071207__bug7063.diff.txt ( 1) app_voicemail.c.patch.vm1-9 ( 2) app_voicemail.v2.patch ( 3) app_voicemail.v3.asterisk-1.4.11.patch ( 4) app_voicemail.v3.svn-trunk.patch | |
Description: | Currently, app_voicemail will allow you to fall out to the o and a extension by pressing 0 and * respectively while leaving a voicemail. This patch allows the user to press 1-9 and falls out to the extensions vm1-vm9 based on the number pressed. It uses the same logic that existed in app_voicemail.c for the a and o extensions. The patch was created on 1.2.7.1, but patches svn 24053 just fine. When the user presses 0-9 or *, app_voicemail sets the channel variable VMMAILBOX to the vmu->mailbox. We created this patch to allow users to say "I am currently away from my desk, press 1 to reach my cell phone or 0 for the operator," as well as any other scenarios we/you can think of. The application will set VMMAILBOX to the mailbox that was being accessed so the dialplan can handle the logic of dealing with what cell phone number to dial, or whatever action needs to be taken. | ||
Comments: | By: Clod Patry (junky) 2006-05-01 18:23:08 You need a disclaimer for this patch could be reviewed. By: Leif Madsen (lmadsen) 2006-05-02 22:43:01 Should we actually be going to an extension called vm1-vm9? This same kind of logic exists in the Dial() application (and I'm sure a couple others). Here is a description from Dial(): d - Allow the calling user to dial a 1 digit extension while waiting for a call to be answered. Exit to that extension if it exists in the current context, or the context defined in the EXITCONTEXT variable, if it exists. I'm thinking to keep usage consistant, use this 'd' option in the Voicemail() application then maybe read the contents of the VMEXITCONTEXT variable? Other than that, the logic seems sound to me. By: Mitch Sharp (bluecrow76) 2006-05-03 07:47:54 Very good idea blitzrage. I'll start working on that. I will be sending in a disclaimer to Digium today. By: Leif Madsen (lmadsen) 2006-05-03 09:11:06 Excellent! By: BJ Weschke (bweschke) 2006-05-03 09:53:17 bluecrow76: blitzrage's suggestion is a good one, and I think that we do need to check for the existence of the extension in the requested context before we set ourselves up to go to that something that doesn't exist and let the pbx switching infrastructure try to handle the consequences of that. By: Jeffrey C. Ollie (jcollie) 2006-05-19 14:40:50 This patch doesn't allow for 1-9 to be hit when the message is actually being recorded... Also, i've been tracking this patch in branch "asterisk/team/jcollie/bug7063". By: Serge Vecher (serge-v) 2006-06-05 20:11:41 bluecrow: please update your patch that takes jcollie's concerns into consideration ... Thanks. By: Tilghman Lesher (tilghman) 2006-06-22 11:41:58 Reminder: we need an update here. By: dimitripietro (dimitripietro) 2006-07-01 01:25:12 I would really like to see this patch adapted for 1.2.9.1. It's a very interresting function By: Tilghman Lesher (tilghman) 2006-07-01 10:46:53 dimitripietro: I'm afraid that's out of the question. This is a new feature, and new features are not permitted in any release version, only in the development version. By: Mitch Sharp (bluecrow76) 2006-07-20 14:36:43 I would like to get some feedback. I took a look at the code to add this feature while leaving a message as well. Numbers 1, 2, and 3 are already taken by other features while leaving a voicemail (because the function that is used it also used for other recording features of app_voicemail), which leaves 4-9 available. There is a switch statement that has left 4-9 open for future features (like this one). My question is how many of those 6 keys should we use here and how many should we leave open for other future features? Another option would be to use double digits for the out, but I haven't really looked into it that hard yet. I await opinions from the wise ones out there! I will also post this to the asterisk-dev list. By: Nic Bellamy (nic_bellamy) 2006-08-14 21:39:14 I'd like to see this move forward, so am pasting in my -dev list email here: --- What about the possibility of using an exit context, much like you can with queues: if the number dialed exists as a VoiceMail app option, it handles it, otherwise it looks it up in the exit context, and if it exists (or matches, eg. allowing dialling of extensions or whatever), jumps to it. Not that I'm a wise one, but it sounds good to me, as you'd then have single/multiple digit options, all configurable from the dialplan. --- By: jmls (jmls) 2006-10-31 11:19:44.000-0600 are we going to move this forward ? By: Jason Parker (jparker) 2006-11-21 10:34:50.000-0600 What is the status of the disclaimer on this? Was it sent in? By: Serge Vecher (serge-v) 2007-01-09 13:08:56.000-0600 ok, last request for update before we close this report ... By: Mitch Sharp (bluecrow76) 2007-01-09 13:36:55.000-0600 I sent the disclaimer in quite a while ago... don't remember the exact date, but it's probably been at least two months by now. By: Serge Vecher (serge-v) 2007-01-09 13:45:58.000-0600 bluecrow76: thanks. Please update the patch to the latest trunk too... By: Serge Vecher (serge-v) 2007-02-21 14:54:36.000-0600 ping By: Mitch Sharp (bluecrow76) 2007-02-26 13:00:58.000-0600 Ack Any update on the disclaimer status? I sent it in quite a while ago. Do I need to send another? I don't have time to work on this right away but will try to spend some time on it in the next few weeks. By: Tilghman Lesher (tilghman) 2007-08-27 15:45:38 bluecrow76: the disclaimer process has now been changed to where you can "sign" a disclaimer online. If you have time in the next week or so, you can update your patch to trunk and agree to the disclaimer via the file upload process. Sorry for the past confusion; this new method should make the problem of knowing who has a disclaimer much easier to work with in the future. By: Michiel van Baak (mvanbaak) 2007-09-23 04:35:52 Any update on the license ? By: Mitch Sharp (bluecrow76) 2007-09-23 10:40:03 Will try to get things updated this week. By: Daniel Lynes (dlynes) 2007-09-24 10:43:21 bluecrow76: great idea; I've been using the '0' feature to double for this, so that it goes to the cellphone instead of the operator; I hope you get it approved for 1.4 By: Paul Hales (paulh) 2007-10-01 21:55:47 This patch would be great - we had someone looking for an extra option or two the other day... By: Mitch Sharp (bluecrow76) 2007-10-04 12:27:28 FYI: I'm working on this today. I just figured out how to extend the number pressing into the recording of the message itself. Keep your fingers crossed and I should have a patch this afternoon. By: Mitch Sharp (bluecrow76) 2007-10-04 17:14:24 I just uploaded app_voicemail.v2.patch. This patch creates the 'd' option as suggested by blitzrage. I'm still working on adding the VMEXITCONTEXT variable and extending accepting the keypresses into the recording of the message and not just the playing of the greeting. I am having to do a bit of work on play_record_review. It'll be late next week before I get another chance to dive back into it. I'm not a fluent C programmer, so please, any optimization or style suggestions would be welcome! By: Mitch Sharp (bluecrow76) 2007-10-05 11:37:29 I just finished getting the transfer to work during the greeting and while recording. Right now it just dumps straight to the extension when the digit is pressed. Would anyone like to see it ask if they want to send the message they've recorded and then jump? Would anyone like it to play a beep or say transfer after the digit is pressed and before jumping to the extension? I'm thinking a config file option for the beep or transfer would be handy, or another switch option to enable/disable it. I'm of the opinion that if you want it to say something to the user before the extension does something, play the sound file of your choice from the extension. Any thoughts? By: Mitch Sharp (bluecrow76) 2007-10-05 12:37:29 The complete patch (v3) has just been uploaded. It supports the VMEXITCONTEXT, the Voicemail application d option and leaving the application from listening to the greeting or recording a message. The v3 patch for 1-9 jumps straight to the extension and does not give options for sending a partially recorded message. The 1.4.11 patch has been tested on our office server today and have had no issues. The svn patch has not been tested. I applied the 1.4.11 patch to SVN and had 3 out of 20 hunks fail: File to patch: apps/app_voicemail.c patching file apps/app_voicemail.c Hunk #1 succeeded at 243 with fuzz 2 (offset 44 lines). Hunk #3 succeeded at 657 (offset 282 lines). Hunk #4 FAILED at 735. Hunk ASTERISK-1 succeeded at 2721 (offset -68 lines). Hunk ASTERISK-2 succeeded at 3145 (offset 275 lines). Hunk ASTERISK-3 succeeded at 2896 (offset -71 lines). Hunk ASTERISK-4 FAILED at 3045. Hunk ASTERISK-5 succeeded at 3487 with fuzz 2 (offset 296 lines). Hunk ASTERISK-6 succeeded at 3148 (offset -71 lines). Hunk ASTERISK-7 succeeded at 6508 (offset 526 lines). Hunk ASTERISK-8 succeeded at 5925 (offset -71 lines). Hunk ASTERISK-9 succeeded at 6533 (offset 526 lines). Hunk ASTERISK-10 succeeded at 5975 (offset -71 lines). Hunk ASTERISK-11 succeeded at 6680 with fuzz 1 (offset 520 lines). Hunk ASTERISK-12 FAILED at 7535. Hunk ASTERISK-13 succeeded at 8498 (offset 260 lines). Hunk ASTERISK-14 succeeded at 8770 (offset 520 lines). Hunk ASTERISK-15 succeeded at 8574 (offset 260 lines). Hunk ASTERISK-16 succeeded at 8850 with fuzz 1 (offset 520 lines). 3 out of 20 hunks FAILED -- saving rejects to file apps/app_voicemail.c.rej The failed hunks were due to some changes in the IMAP lines and removal of deprecated options. By: Mitch Sharp (bluecrow76) 2007-11-09 17:08:39.000-0600 Has anyone tried the new patch? By: Tilghman Lesher (tilghman) 2007-12-07 16:55:11.000-0600 I'm going to suggest a slightly simpler way of doing this, which also allows arbitrary length extensions to be entered while listening to a voicemail greeting. It's also a much simpler patch. By: Mitch Sharp (bluecrow76) 2007-12-07 17:12:31.000-0600 That's a great idea... and your code looks much better than mine! I won't have an opportunity to test it until next week. Does your code allow the extension to be entered while leaving a message? By: Tilghman Lesher (tilghman) 2007-12-07 23:05:11.000-0600 It allows the extension to be entered during the playback of the greeting, same as the use of the '*' or '0' keys, to go to the 'a' or 'o' extension, respectively. For obvious reasons, extensions cannot start with '*' or '0' if either of those capabilities are turned on in voicemail.conf. Also, extensions cannot start with '#', because that DTMF is used to skip the greeting. By: Tilghman Lesher (tilghman) 2007-12-24 21:14:36.000-0600 bluecrow76: have you had an opportunity to test this and ensure that it works for you yet? Or anyone else? By: Digium Subversion (svnbot) 2008-01-08 17:48:03.000-0600 Repository: asterisk Revision: 97305 U trunk/apps/app_voicemail.c ------------------------------------------------------------------------ r97305 | tilghman | 2008-01-08 17:48:02 -0600 (Tue, 08 Jan 2008) | 6 lines Add a new flag 'd' (with optional context) permitting any extension within that context to be entered as a new extension during the playback of a voicemail greeting. Patch inspired by bluecrow76, by tilghman. (Closes issue ASTERISK-6878) ------------------------------------------------------------------------ http://svn.digium.com/view/asterisk?view=rev&revision=97305 By: Digium Subversion (svnbot) 2008-01-09 12:30:22.000-0600 Repository: asterisk Revision: 97556 _U team/murf/bug11210/ U team/murf/bug11210/apps/app_meetme.c U team/murf/bug11210/apps/app_queue.c U team/murf/bug11210/apps/app_voicemail.c U team/murf/bug11210/channels/Makefile U team/murf/bug11210/channels/chan_gtalk.c U team/murf/bug11210/channels/chan_oss.c U team/murf/bug11210/channels/chan_zap.c A team/murf/bug11210/channels/console_board.c U team/murf/bug11210/channels/console_gui.c U team/murf/bug11210/channels/console_video.c U team/murf/bug11210/channels/console_video.h U team/murf/bug11210/codecs/codec_zap.c A team/murf/bug11210/images/font.png U team/murf/bug11210/images/kpad2.jpg U team/murf/bug11210/main/asterisk.c U team/murf/bug11210/main/cli.c U team/murf/bug11210/main/editline/readline.c U team/murf/bug11210/res/res_features.c ------------------------------------------------------------------------ r97556 | murf | 2008-01-09 12:30:19 -0600 (Wed, 09 Jan 2008) | 245 lines Merged revisions 97280-97282,97303,97305,97307,97309,97364-97365,97389-97390,97421,97449,97451,97488,97490,97495,97530-97533 via svnmerge from https://origsvn.digium.com/svn/asterisk/trunk ................ r97280 | rizzo | 2008-01-08 16:09:44 -0700 (Tue, 08 Jan 2008) | 11 lines add support for textareas, used for various dialog windows on the gui. The main code to implement the textarea is in console_board.c, and uses a simple png image with the font, blitting characters on the designated areas of the main screen. Additionally we provide some annotations in the image used as a skin to indicate which areas are used for text messages. (images will be committed separately). At the moment the dialog area is only used to display a running counter, just as a proof of concept. ................ r97281 | rizzo | 2008-01-08 16:11:25 -0700 (Tue, 08 Jan 2008) | 5 lines add a font suitable for use with the console GUI. The background of this particular image is transparent so we can preserve the original background when we draw strings. ................ r97282 | rizzo | 2008-01-08 16:14:48 -0700 (Tue, 08 Jan 2008) | 6 lines Add the annotation for the textarea used for messages, and also change the background from white to something different to show that we can make use of fonts with transparent background. ................ r97303 | rizzo | 2008-01-08 16:35:05 -0700 (Tue, 08 Jan 2008) | 4 lines add copyright (most of this code was written by Marta Carbone), remove some unused code, add/clarify some comments. ................ r97305 | tilghman | 2008-01-08 16:51:51 -0700 (Tue, 08 Jan 2008) | 6 lines Add a new flag 'd' (with optional context) permitting any extension within that context to be entered as a new extension during the playback of a voicemail greeting. Patch inspired by bluecrow76, by tilghman. (Closes issue ASTERISK-6878) ................ r97307 | mmichelson | 2008-01-08 16:56:24 -0700 (Tue, 08 Jan 2008) | 13 lines Merged revisions 97304 via svnmerge from https://origsvn.digium.com/svn/asterisk/branches/1.4 ........ r97304 | mmichelson | 2008-01-08 17:49:11 -0600 (Tue, 08 Jan 2008) | 5 lines Part 1 of N of adding doxygen comments to app_queue. I picked some of the most common functions used (which also happen to be some the biggest/ugliest functions too) to document first. I'm pretty new to doxygen so criticism is welcome. ........ ................ r97309 | mmichelson | 2008-01-08 17:18:15 -0700 (Tue, 08 Jan 2008) | 11 lines Merged revisions 97308 via svnmerge from https://origsvn.digium.com/svn/asterisk/branches/1.4 ........ r97308 | mmichelson | 2008-01-08 18:17:40 -0600 (Tue, 08 Jan 2008) | 3 lines use the etval doxygen command properly ........ ................ r97364 | tilghman | 2008-01-08 17:51:59 -0700 (Tue, 08 Jan 2008) | 13 lines Merged revisions 97350 via svnmerge from https://origsvn.digium.com/svn/asterisk/branches/1.4 ........ r97350 | tilghman | 2008-01-08 18:44:14 -0600 (Tue, 08 Jan 2008) | 5 lines Allow filename completion on zero-length modules, remove a memory leak, remove a file descriptor leak, and make filename completion thread-safe. Patched and tested by tilghman. (Closes issue ASTERISK-11153) ........ ................ r97365 | tilghman | 2008-01-08 17:58:22 -0700 (Tue, 08 Jan 2008) | 2 lines New option in trunk, needs strdupa to be safe, too ................ r97389 | rizzo | 2008-01-09 05:13:32 -0700 (Wed, 09 Jan 2008) | 4 lines make get_video_desc() return the active console if passed a null argument (channel). ................ r97390 | rizzo | 2008-01-09 05:23:18 -0700 (Wed, 09 Jan 2008) | 7 lines implement the "console startgui" and "console stopgui" commands so you can start and stop the gui even outside of a call. This is convenient for testing, and also for using the keypad to pick up a call, and to dial a number (the latter not yet implemented, but should be close). ................ r97421 | kpfleming | 2008-01-09 08:31:56 -0700 (Wed, 09 Jan 2008) | 10 lines Merged revisions 97410 via svnmerge from https://origsvn.digium.com/svn/asterisk/branches/1.4 ........ r97410 | kpfleming | 2008-01-09 09:26:23 -0600 (Wed, 09 Jan 2008) | 2 lines add error number output to ioctl failure messages to help with debugging ........ ................ r97449 | kpfleming | 2008-01-09 08:45:34 -0700 (Wed, 09 Jan 2008) | 10 lines Merged revisions 97448 via svnmerge from https://origsvn.digium.com/svn/asterisk/branches/1.4 ........ r97448 | kpfleming | 2008-01-09 09:43:19 -0600 (Wed, 09 Jan 2008) | 2 lines pass the right variable to get an error string... oops ........ ................ r97451 | file | 2008-01-09 09:13:24 -0700 (Wed, 09 Jan 2008) | 14 lines Merged revisions 97450 via svnmerge from https://origsvn.digium.com/svn/asterisk/branches/1.4 ........ r97450 | file | 2008-01-09 12:11:17 -0400 (Wed, 09 Jan 2008) | 6 lines Don't do conferencing totally in Zaptel if Monitor is running on the channel. (closes issue ASTERISK-11179) Reported by: BigJimmy Patches: patch-meetmerec uploaded by BigJimmy (license 371) ........ ................ r97488 | rizzo | 2008-01-09 09:44:20 -0700 (Wed, 09 Jan 2008) | 8 lines Implement keyboard handling, and use it to enter a number to dial in the 'message' area under the keypad. Now you can make calls using the keypad as a regular phone (or the keyboard for chars not present on the keypad) ................ r97490 | phsultan | 2008-01-09 09:59:09 -0700 (Wed, 09 Jan 2008) | 15 lines Merged revisions 97489 via svnmerge from https://origsvn.digium.com/svn/asterisk/branches/1.4 ........ r97489 | phsultan | 2008-01-09 17:44:24 +0100 (Wed, 09 Jan 2008) | 7 lines Set the caller id within the gtalk_alloc function. As underlined in issue ASTERISK-10070 by Josh, we need to prevent a possible memory leak. We only set the name part of the caller id, the number part is not relevant when dealing with JIDs. Closes issue ASTERISK-11037. ........ ................ r97495 | kpfleming | 2008-01-09 10:30:13 -0700 (Wed, 09 Jan 2008) | 10 lines Merged revisions 97491 via svnmerge from https://origsvn.digium.com/svn/asterisk/branches/1.4 ........ r97491 | kpfleming | 2008-01-09 11:21:14 -0600 (Wed, 09 Jan 2008) | 2 lines report the same message whether Zaptel does not have transcoder support loaded or no transcoders were found ........ ................ r97530 | rizzo | 2008-01-09 11:03:40 -0700 (Wed, 09 Jan 2008) | 11 lines Two changes: - support scrolling of message window; - simplify the code for creating a message window, and try it using a second one in the top of the keypad (where we echo the dialed number). The 'skin' that supports these two windows will be committed separately. ................ r97531 | russell | 2008-01-09 11:04:14 -0700 (Wed, 09 Jan 2008) | 10 lines Merged revisions 97529 via svnmerge from https://origsvn.digium.com/svn/asterisk/branches/1.4 ........ r97529 | russell | 2008-01-09 12:02:08 -0600 (Wed, 09 Jan 2008) | 2 lines Fix saying the parking space number to the caller doing the parking ... ........ ................ r97532 | rizzo | 2008-01-09 11:04:17 -0700 (Wed, 09 Jan 2008) | 4 lines add annotations for the two message windows we use. ................ r97533 | rizzo | 2008-01-09 11:12:44 -0700 (Wed, 09 Jan 2008) | 3 lines remove a wrong 'const' ................ ------------------------------------------------------------------------ http://svn.digium.com/view/asterisk?view=rev&revision=97556 |