aboutsummaryrefslogtreecommitdiffstats
path: root/apps
AgeCommit message (Collapse)AuthorFilesLines
2010-12-07Don't create a Local channel if the target extension does not exist.tilghman1-4/+10
(closes issue #18126) Reported by: junky Patches: followme.diff uploaded by junky (license 177) (partially restructured by me to avoid a possible memory leak) git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@297689 f38db490-d61c-443f-a65b-d21fe96a405b
2010-12-02Add "DAHDI" to a couple of app_meetme error messages.russell1-2/+2
This is in response to some questions on IRC. To the user, there was nothing that made it obvious that this error had anything to do with DAHDI not being loaded. git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@297228 f38db490-d61c-443f-a65b-d21fe96a405b
2010-12-01Properly restore backup information file when hanging up during message ↵jpeeler1-0/+10
prepending. ABE-2654 git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@296868 f38db490-d61c-443f-a65b-d21fe96a405b
2010-11-24Handle failures building translation paths more effectively.russell1-1/+10
The problem scenario occurred on a heavily loaded system that was using the codec_dahdi module and exceeded the hardware transcoding capacity. The failure mode at that point was not good. The report came in to us as an Asterisk lock-up. The "core show locks" shows a ton of threads locked up (but no obvious deadlock). Upon deeper investigation, when the system is in this state, the CPU was maxed out. The CPU was being consumed by the Asterisk logger spewing messages on every audio frame for calls set up after transcoder capacity was reached. The purpose of this patch is to make Asterisk handle failures to create a translation path in a more graceful manner. If we can't translate, then the call just needs to be dropped, as it's not going to work. These are the changes: 1) In set_format() of channel.c (which is called by set_read_format() and set_write_format()), it was ignoring if ast_translator_build_path() failed and returned NULL. It now pays attention to that case and returns a result reflecting failure. With this change in place, the bridging code will immediately detect a failure and end the bridge instead of proceeding to try to bridge frames that can't be translated and making channel drivers freak out by sending them frames in a format they weren't expecting. 2) In ast_indicate_data() of channel.c, failure of ast_playtones_start() was ignored. It is now reflected in the return value of the function. This didn't turn out to have any affect on the bug, but seemed like a good change to leave in. 3) In app_dial(), when only sending a call to a single endpoint, it will attempt to do some bridging of its own of early audio. It uses make_compatible() when it's going to do this. However, it ignored failure from make compatible. So, even with the fix from #1, if there was early audio going through app_dial, there would still be a period of invalid frames passing through. After detecting failure here, Dial() exits. ABE-2658 git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@296000 f38db490-d61c-443f-a65b-d21fe96a405b
2010-11-22The channel redirect function (CLI or AMI) hangs up the call instead of ↵rmudgett1-11/+11
redirecting the call. To recreate the problem: 1) Party A calls Party B 2) Invoke CLI "channel redirect" command to redirect channel call leg associated with A. 3) All associated channels are hung up. Note that if the CLI command were done on the channel call leg associated with B it works. This regression was a result of the fix for issue #16946 (https://reviewboard.asterisk.org/r/740/). The regression affects all features that use an async goto to execute the dialplan because of an external event: Channel redirect, AMI redirect, SIP REFER, and FAX detection. The struct ast_channel._softhangup code is a mess. The variable is used for several purposes that do not necessarily result in the call being hung up. I have added doxygen comments to describe how the various _softhangup bits are used. I have corrected all the places where the variable was tested in a non-bit oriented manner. The primary fix is the new AST_CONTROL_END_OF_Q frame. It acts as a weak hangup request so the soft hangup requests that do not normally result in a hangup do not hangup. JIRA SWP-2470 JIRA SWP-2489 (closes issue #18171) Reported by: SantaFox (closes issue #18185) Reported by: kwemheuer (closes issue #18211) Reported by: zahir_koradia (closes issue #18230) Reported by: vmarrone (closes issue #18299) Reported by: mbrevda (closes issue #18322) Reported by: nerbos Review: https://reviewboard.asterisk.org/r/1013/ git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@295790 f38db490-d61c-443f-a65b-d21fe96a405b
2010-11-16Ensure original message duration is preserved when prepending a message.jpeeler1-6/+19
It seems the fix to issue 17103 was a little overzealous and removed the code that backed up the textfile containing the original message duration. This code has now been restored. (related to issue #17103) ABE-2654 git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@295200 f38db490-d61c-443f-a65b-d21fe96a405b
2010-11-12Fix regression causing abort in voicemail after opening a mailbox with no mesgs.jpeeler1-1/+2
In order to be more safe, some error handling code was changed to respect more error conditions including the potential memory allocation failure for deleted and heard message tracking introduced in 293004. However, last_message_index returns -1 for zero messages (perhaps as expected) and was triggering the stricter error checking. Because last_message_index is only called directly in one place, just return 0 from open_mailbox (for file based storage) when no messages are detected unless a real error has occurred. (closes issue #18240) Reported by: leobrown Patches: bug18240.1-6-2.diff.txt uploaded by alecdavis (license 585) Tested by: pabelanger git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@294903 f38db490-d61c-443f-a65b-d21fe96a405b
2010-10-25Fix inprocess_container in voicemail to correctly restrict max messages.jpeeler1-40/+88
The comparison function logic was off, so the number of sessions for a given mailbox were not being incremented properly. This problem caused the maximum number of messages per folder to not be respected when simultaneously leaving multiple voicemails just below the threshold. These problems should be fixed by the above, but just in case: Fixed resequence_mailbox to rely on the actual number of detected number of files in a directory rather than just assuming only 10 messages more than the maximum had been left. Also if more messages than the maximum are deleted they are actually removed now. The second purpose of this commit should have been separated out probably, but is related to the above. Again, if the number of messages in a given voicemail folder exceeds the maximum set limit make sure to allocate enough space for the deleted and heard index tracking array. A few random fixes: There was a forgotten decrement of the inprocess count in imap_store_file. When using IMAP storage, do not look in the directory where file based storage messages may still reside and influence the message count. Ensure to use only the first format in sendmail. ABE-2516 git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@293004 f38db490-d61c-443f-a65b-d21fe96a405b
2010-10-21Record priv-recordintro as sln, not gsmpabelanger1-1/+1
This removes the gsm->sln step when transcoding priv-recordintro. (closes issue #18176) Reported by: pabelanger Patches: chan_sip.diff uploaded by pabelanger (license 224) git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@292411 f38db490-d61c-443f-a65b-d21fe96a405b
2010-10-18Fix improper operator key acceptance and clean up temp recording files.jpeeler1-4/+13
This is a fix for when pressing the operator key after recording an unavailable, busy, name, or temporary message in mailbox options. The operator key should not be accepted here, but should be allowed during the message recording. If the operator key is pressed during ensure the file is saved or deleted as apporopriate. Also, ensure removal of temporary recorded files after an early hang up or when message acceptance confirmation times out. ABE-2518 git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@292223 f38db490-d61c-443f-a65b-d21fe96a405b
2010-10-02When forwarding a message, a prepend means that the filesystem will always ↵tilghman1-12/+6
have a better copy. (closes issue #17803) Reported by: dpetersen Patches: 20100923__issue17803.diff.txt uploaded by tilghman (license 14) Tested by: dpetersen git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@289873 f38db490-d61c-443f-a65b-d21fe96a405b
2010-09-30Fix a crash in app_sms.russell1-0/+6
Since the data being passed to the generator callback is on the stack of the SMS() application, we must ensure that the generator is stopped before the application exits. ABE-2587 git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@289424 f38db490-d61c-443f-a65b-d21fe96a405b
2010-09-20Fix misvalidation of meetme pins in conjunction with the 'a' MeetMe flag.bbryant1-6/+12
When using the 'a' MeetMe flag and having a user and admin pin setup for your conference, using the user pin would gain you admin priviledges. Also, when no user pin was set, an admin pin was, the 'a' MeetMe flag wasn't used, and the user tried to enter a conference then they were still prompted for a pin and forced to hit #. (closes issue #17908) Reported by: kuj Patches: pins_2.patch uploaded by kuj (license 1111) Tested by: kuj Review: [full review board URL with trailing slash] git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@287758 f38db490-d61c-443f-a65b-d21fe96a405b
2010-09-17Blank columns should get set on reload, not ignored.tilghman1-4/+4
(closes issue #16893) Reported by: haakon Patches: 20100818__issue16893.diff.txt uploaded by tilghman (license 14) git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@287386 f38db490-d61c-443f-a65b-d21fe96a405b
2010-09-15whitespace fixjpeeler1-1/+1
git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@286956 f38db490-d61c-443f-a65b-d21fe96a405b
2010-09-15Ensure mailbox is not filled to capacity before doing message forwarding.jpeeler1-5/+29
Specifically, before prompting to record a prepended message the capacity is checked first. If the mailbox is full the extension will be reprompted. ABE-2517 git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@286941 f38db490-d61c-443f-a65b-d21fe96a405b
2010-09-09Transmit silence when reading DTMF in ast_readstring.qwell3-6/+8
Otherwise, you could get issues with DTMF timeouts causing hangups. (closes issue #17370) Reported by: makoto Patches: channel-readstring-silence-generator.patch uploaded by makoto (license 38) git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@285742 f38db490-d61c-443f-a65b-d21fe96a405b
2010-07-29Fix a dsp structure leak occuring when a local channel is put into a meetmejeang1-0/+3
conference, then masquaraded away. ABE-2422 git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@280341 f38db490-d61c-443f-a65b-d21fe96a405b
2010-07-23SIP promiscuous redirect could fail to dial the redirect.rmudgett2-6/+12
The ast_channel was created with one variable to ast_request() but the call to ast_call() that initiates the outgoing call was using a different variable. The two variables are not equivalent if the call_forward string included a channel technology specifier. e.g., SIP/200 git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@279206 f38db490-d61c-443f-a65b-d21fe96a405b
2010-07-20Delete IMAP messages in reverse order, to ensure reordering after each ↵tilghman1-5/+8
expunge does not cause deletion of the wrong message. (closes issue #16350) Reported by: noahisaac Patches: 20100623__issue16350.diff.txt uploaded by tilghman (license 14) git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@278261 f38db490-d61c-443f-a65b-d21fe96a405b
2010-07-16Total analysis time error with SIP and silence suppressionpabelanger1-3/+4
When using app_amd with SIP providers that have silence suppression on, the iTotalTime count increases exponentially. (closes issue #17656) Reported by: juls git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@277182 f38db490-d61c-443f-a65b-d21fe96a405b
2010-07-12Make user removals and traversals thread safe in meetme.jpeeler1-85/+173
Race conditions present in meetme involving the user list where a lack of locking has the potential for a user to be removed during a traversal or as in the case of the reporter after checking if the list is empty could cause a crash. Fixing this was done by convering the userlist to an ao2 container. (closes issue #17390) Reported by: Vince Review: https://reviewboard.asterisk.org/r/746/ git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@275773 f38db490-d61c-443f-a65b-d21fe96a405b
2010-07-09Clear the AST_CDR_FLAG_DIALED flag for channels going into the pbx via the G ↵mnicholson1-0/+5
option in app_dial (closes issue #17592) Reported by: jamicque Patches: G-flag-cdr-fix1.diff uploaded by mnicholson (license 96) Tested by: jamicque, mnicholson git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@275027 f38db490-d61c-443f-a65b-d21fe96a405b
2010-07-06Make get_member_status return QUEUE_NO_MEMBERS instead of ↵mnicholson1-4/+6
QUEUE_NO_REACHABLE_MEMBERS to make joinempty=no work again. This regression was introduced in 273639. Also fixed whitespace. git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@274093 f38db490-d61c-443f-a65b-d21fe96a405b
2010-07-02Fix various typos, reported by Lintiantzafrir1-1/+1
git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@273640 f38db490-d61c-443f-a65b-d21fe96a405b
2010-07-02If all members are paused, the wrong status is indicated.tilghman1-0/+7
(closes issue #17576) Reported by: ramonpeek Patches: diff.txt uploaded by ramonpeek (license 266) Tested by: ramonpeek git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@273639 f38db490-d61c-443f-a65b-d21fe96a405b
2010-07-01Allow admin user to join conference without using admin mode and no user pin.jpeeler1-2/+1
Configuring the conference in meetme.conf like the following: conf => 2345,,6666 did not prompt for pin when used without admin mode. This meant that the conference could not be joined as an admin even if the user knew the correct pin. The original bug report was submitted claiming that the blank user pin should deny entry into the conference. I think a better way to handle this would be with a feature enhancement that used the following syntax: conf => 2345,X,6666 - where X denotes no acceptable pin allowed (closes issue #15704) Reported by: modelnine git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@273474 f38db490-d61c-443f-a65b-d21fe96a405b
2010-07-01Ensure channel placed in meetme in ringing state is properly hung up.jpeeler1-0/+14
An outgoing channel placed in meetme while still ringing which was then hung up would not exit meetme and the channel was not properly destroyed. Specifically checking for this scenario by looking at the appropriate control frames resolves the issue. (closes issue #15871) Reported by: Ivan Patches: meetme_congestion_trunk_v2.patch uploaded by Ivan (license 229) git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@273354 f38db490-d61c-443f-a65b-d21fe96a405b
2010-06-23Send AgentComplete manager events in the event of blind and attended transfers.mnicholson1-0/+29
(closes issue #16819) Reported by: elbriga Patches: app_queue.diff uploaded by elbriga (license 482) git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@272367 f38db490-d61c-443f-a65b-d21fe96a405b
2010-06-23First caller into a dynamic conference now enter pin once.pabelanger1-3/+4
If MeetMe is configured to use dynamic conference numbers, then the first caller (which creates the conference) had to enter the PIN number twice. (closes issue #15878) Reported by: shawkris Patches: issue15878.patch uploaded by pabelanger (license 224) Tested by: pabelanger git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@272255 f38db490-d61c-443f-a65b-d21fe96a405b
2010-06-23Backport part of revision 136715 to fix callerid in voicemail text files ↵tilghman1-2/+3
(IMAP only). (closes issue #16945) Reported by: mneuhauser git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@272147 f38db490-d61c-443f-a65b-d21fe96a405b
2010-05-26Make AgentComplete message more consistent.mmichelson1-1/+2
At times, the "Member" field was not specified during the event. It's there now. (closes issue #15638) Reported by: elbriga Patches: patchAppQueueAgentComplete.diff uploaded by elbriga (license 482) git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@266004 f38db490-d61c-443f-a65b-d21fe96a405b
2010-05-25Don't mark the cdr records of unanswered queue calls with "NOANSWER". This ↵mnicholson1-9/+0
restores the behavior prior to r258670. (closes issue #17334) Reported by: jvandal Patches: queue-cdr-fixes1.diff uploaded by mnicholson (license 96) Tested by: aragon, jvandal git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@265610 f38db490-d61c-443f-a65b-d21fe96a405b
2010-05-21Don't hang up on a queue caller if the file we attempt to play does not exist.mmichelson1-0/+4
This also fixes a documentation mistake in file.h that made my original attempt to correct this problem not work correctly. (closes issue #17061) Reported by: RoadKill git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@265089 f38db490-d61c-443f-a65b-d21fe96a405b
2010-05-19Set quieted flag when receiving a dtmf tone during playback in speechbackground.mnicholson1-0/+1
(closes issue #16966) Reported by: asackheim git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@264334 f38db490-d61c-443f-a65b-d21fe96a405b
2010-05-18Modify directory name reading to be interrupted with operator or pound escape.jpeeler1-0/+15
In the case of accidentally entering the wrong first three letters for the reading, users could be very frustrated if the name listing is very long. This allows interrupting the reading by pressing 0 or #. 0 will attempt to execute a configured operator (o) extension and # will exit and proceed in the dialplan. ABE-2200 git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@263769 f38db490-d61c-443f-a65b-d21fe96a405b
2010-05-12fixes app_meetme dsp errordvossel1-5/+4
We attempted to detect silence after translating a frame from signed linear. This caused a flooding of errors. To resolve this the code to detect silence was moved before the translation. (closes issue #17133) Reported by: jsdyer git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@262662 f38db490-d61c-443f-a65b-d21fe96a405b
2010-05-11Fix issue #17302 a slightly different way (mad props to Qwell)tilghman1-0/+1
git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@262321 f38db490-d61c-443f-a65b-d21fe96a405b
2010-05-06Only allow the operator key to be accepted after leaving a voicemail.jpeeler1-1/+4
Or rather disallow the operator key from being accepted when not offered, such as after finishing a recording from within the mailbox options menu. ABE-2121 SWP-1267 git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@261735 f38db490-d61c-443f-a65b-d21fe96a405b
2010-05-06Revert 261698, code in trunk leads me to believe unadvertised options are ↵jpeeler1-1/+19
supported. git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@261699 f38db490-d61c-443f-a65b-d21fe96a405b
2010-05-06Remove some hidden broken code in the voicemail mailbox options menu.jpeeler1-19/+1
After finishing a recording from within the mailbox options menu, pressing 0 exhibited strange behavior with operator=yes turned on. Pressing 0 was not even advertised as an option and the options from the vm-saveoper prompt: "Press 1 to accept this recording. Otherwise, please continue to hold" did not function correctly. While this of course could be fixed, it didn't really seem to make sense even if it was working properly. ABE-2121 SWP-1267 git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@261698 f38db490-d61c-443f-a65b-d21fe96a405b
2010-05-04Voicemail transfer to operator should occur immediately, not after main menu.jpeeler1-7/+8
There were two scenarios in the advanced options that while using the operator=yes and review=yes options, the transfer occurred only after exiting the main menu (after sending a reply or leaving a message for an extension). Now after the audio is processed for the reply or message the transfer occurs immediately as expected. ABE-2107 ABE-2108 git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@260923 f38db490-d61c-443f-a65b-d21fe96a405b
2010-04-28Do not play goodbye prompt after timeout of message review.jpeeler1-2/+2
ABE-2124 git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@259664 f38db490-d61c-443f-a65b-d21fe96a405b
2010-04-21Fix looping forever when no input received in certain voicemail menu scenarios.jpeeler1-2/+10
Specifically, prompting for an extension (when leaving or forwarding a message) or when prompting for a digit (when saving a message or changing folders). ABE-2122 SWP-1268 git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@258432 f38db490-d61c-443f-a65b-d21fe96a405b
2010-04-20Play correct prompt when voicemail store failure occurs after attempted forward.jpeeler1-29/+55
If a user's mailbox was full and a message was attempted to be forwarded to said box, warnings on the console would indicate failure. However, the played prompt was that of success (vm-msgsaved). Now storage failure is taken into account and the correct prompt (vm-mailboxfull) is played when appropriate. ABE-2123 SWP-1262 git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@258029 f38db490-d61c-443f-a65b-d21fe96a405b
2010-04-19make app_voicemail compile with IMAP_STORAGEjpeeler1-1/+9
git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@257856 f38db490-d61c-443f-a65b-d21fe96a405b
2010-04-16Make the mixmonitor thread process audio frames fasterdhubbard1-5/+6
Mantis issue 17078 reports MixMonitor recordings have shorter durations than the call duration. This was because the mixmonitor thread was not processing frames from the audiohook fast enough. The mixmonitor thread would slowly fall behind the most recent audio frame and when the channel hangs up, the mixmonitor thread would exit without processing the same number of frames as the channel; leaving the mixmonitor recording shorter than actual call duration. This revision fixes this issue by moving the ast_audiohook_trigger_wait() and the subsequent audiohook.status check into the block where the ast_audiohook_read_frame() function returns NULL. (closes issue #17078) Reported by: geoff2010 Patches: dw-M17078.patch uploaded by dhubbard (license 733) Tested by: dhubbard, geoff2010 Review: https://reviewboard.asterisk.org/r/611/ git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@257686 f38db490-d61c-443f-a65b-d21fe96a405b
2010-04-14When forwarding a message, ensure that prepending works correctly.tilghman1-42/+25
This is a regression in 1.4, only. (closes issue #17103) Reported by: mglazer Patches: 20100408__issue17103.diff.txt uploaded by tilghman (license 14) Tested by: tilghman git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@257266 f38db490-d61c-443f-a65b-d21fe96a405b
2010-03-31Ensure line terminators in email are consistent.tilghman1-12/+29
Fixes an issue with certain Mail Transport Agents, where attachments are not interpreted correctly. (closes issue #16557) Reported by: jcovert Patches: 20100308__issue16557__1.4.diff.txt uploaded by tilghman (license 14) 20100308__issue16557__1.6.0.diff.txt uploaded by tilghman (license 14) 20100308__issue16557__trunk.diff.txt uploaded by tilghman (license 14) Tested by: ebroad, zktech Reviewboard: https://reviewboard.asterisk.org/r/544/ git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@255591 f38db490-d61c-443f-a65b-d21fe96a405b
2010-03-31Add documentation clarifying when 't' and 'T' can be used.lmadsen1-2/+4
(closes issue #17021) Reported by: kovzol Tested by: lmadsen, kovzol, davidw, ebroad git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@255503 f38db490-d61c-443f-a65b-d21fe96a405b