- Feb 04, 2021
-
-
Sean Bright authored
Change-Id: I350939f2220f9e5d44ddf4c8d9a4c99fde4d169a
-
- Jan 27, 2021
-
-
Dan Cropp authored
When a Transfer/REFER is executed, TRANSFERSTATUSPROTOCOL variable is 0 when no protocl specific error SIP example of failure, 3xx-6xx for the SIP error code received This allows applications to perform actions based on the failure reason. ASTERISK-29252 #close Reported-by: Dan Cropp Change-Id: Ia6a94784b4925628af122409cdd733c9f29abfc4
-
- Jan 06, 2021
-
-
Kevin Harwell authored
launch_monitor_thread is responsible for creating and initializing the mixmonitor, and dependent data structures. There was one off nominal path after the datastore gets created that triggers when the channel being monitored is hung up prior to monitor starting itself. If this happened the monitor thread would not "launch", and the mixmonitor object and associated objects are freed, including the underlying datastore data object. However, the datastore itself was not removed from the channel, so when the channel eventually gets destroyed it tries to access the previously freed datastore data and crashes. This patch removes and frees datastore object itself from the channel before freeing the mixmonitor object thus ensuring the channel does not call it when destroyed. ASTERISK-28947 #close Change-Id: Id4f9e958956d62473ed5ff06c98ae3436e839ff8
-
Sean Bright authored
ASTERISK-28992 #close Change-Id: Ia7d608924036139ee2520b840d077762d02668d0
-
- Dec 17, 2020
-
-
Sean Bright authored
The documentation in the wiki says there should be spyee-channel information elements in the ChanSpyStop AMI event. https://wiki.asterisk.org/wiki/x/Xc5uAg However, this is not the case in Asterisk <= 16.10.0 Version. We're using these Spyee* arguments since Asterisk 11.x, so these arguments vanished in Asterisk 12 or higher. For maximum compatibility, we still send the ChanSpyStop event even if we are not able to find any 'Spyee' information. ASTERISK-28883 #close Change-Id: I81ce397a3fd614c094d043ffe5b1b1d76188835f
-
- Dec 01, 2020
-
-
Joshua C. Colp authored
When using this option, answering the channel is deferred until all prompts/greetings have been played and the caller is about to leave their message. ASTERISK-29118 #close Change-Id: I41b9f0428783c0bd697c8c994f906d1e75ce9ddb
-
- Nov 11, 2020
-
-
George Joseph authored
Operations that update queues when shared_lastcall is set lock the queue in question, then have to lock the queues container to find the other queues with the same member. On the other hand, __queues_show (which is called by both the CLI and AMI) does the reverse. It locks the queues container, then iterates over the queues locking each in turn to display them. This creates a deadlock. * Moved queue print logic from __queues_show to a separate function that can be called for a single queue. * Updated __queues_show so it doesn't need to lock or traverse the queues container to show a single queue. * Updated __queues_show to snap a copy of the queues container and iterate over that instead of locking the queues container and iterating over it while locked. This prevents us from having to hold both the container lock and the queue locks at the same time. This also allows us to sort the queue entries. ASTERISK-29155 Change-Id: I78d4dc36728c2d7bc187b97d82673fc77f2bcf41
-
- Nov 03, 2020
-
-
Alexander Traud authored
ASTERISK-29144 Change-Id: I2a72c072083b4492a223c6f9d73d21f4f424db62
-
- Oct 02, 2020
-
-
George Joseph authored
app_confbridge now has the ability to set the estimated bitrate on an SFU bridge. To use it, set a bridge profile's remb_behavior to "force" and set remb_estimated_bitrate to a rate in bits per second. The remb_estimated_bitrate parameter is ignored if remb_behavior is something other than "force". Change-Id: Idce6464ff014a37ea3b82944452e56cc4d75ab0a
-
Sean Bright authored
ASTERISK-26424 #close Change-Id: I797ad0ed302d0b3d2c90543eff5b7207ed08ecf0
-
- Sep 01, 2020
-
-
Kfir Itzhak authored
This fixes a bug introduced mistakenly in ASTERISK-25665: If leave-empty is enabled, a call may sometimes be removed from a queue without recording it as abandoned. This causes Asterisk to not generate an abandon event for that call, and for the queue abandoned counter to be incorrect. ASTERISK-29043 #close Change-Id: I1a71b81df78adff59af587f1d8483cf57df430c7
-
- Aug 25, 2020
-
-
Sean Bright authored
Rather than putting messages into INBOX and then moving them to Urgent later, put them directly in to the Urgent folder. This prevents mailcmd from being skipped. ASTERISK-27273 #close Change-Id: I49934e093290d308506ab8d45a40ef705c5ae4f5
-
Evandro César Arruda authored
This fixes the reseting members lastpause problem when realtime members is being used, the function rt_handle_member_record was forcing the reset members lastpause because it does not exist in realtime ASTERISK-29034 #close Change-Id: Ic9107e4456732a1f78412a32adb2ef87f5da40b5
-
- Aug 24, 2020
-
-
George Joseph authored
The SCOPE_ENTER and SCOPE_EXIT* macros now print debug messages at the same level as the scope level. This allows the same messages to be printed to the debug log when AST_DEVMODE isn't enabled. Also added a few variants of the SCOPE_EXIT macros that will also call ast_log instead of ast_debug to make it easier to use scope tracing and still print error messages. Change-Id: I7fe55f7ec28069919a0fc0b11a82235ce904cc21
-
- Aug 18, 2020
-
-
George Joseph authored
Allow passing a topology from the called channel back to the calling channel. * Added a new function ast_queue_answer() that accepts a stream topology and queues an ANSWER CONTROL frame with it as the data. This allows the called channel to indicate its resolved topology. * Added a new virtual function to the channel tech structure answer_with_stream_topology() that allows the calling channel to receive the called channel's topology. Added ast_raw_answer_with_stream_topology() that invokes that virtual function. * Modified app_dial.c and features.c to grab the topology from the ANSWER frame queued by the answering channel and send it to the calling channel with ast_raw_answer_with_stream_topology(). * Modified frame.c to automatically cleanup the reference to the topology on ANSWER frames. Added a few debugging messages to stream.c. Change-Id: I0115d2ed68d6bae0f87e85abcf16c771bdaf992c
-
- Jul 09, 2020
-
-
Walter Doekes authored
If your queues.conf had _no_ [general] section, they would default to 'yes'. Now, they always default to 'no'. (Actually, commit ed615afb already partially fixed it for shared_lastcall.) ASTERISK-28951 Change-Id: Ic39d8a0202906bc454194368bbfbae62990fe5f6
-
- Jul 08, 2020
-
-
George Joseph authored
Prior to making any modifications to the pjsip infrastructure for ACN, I've added the tracing functions to the existing code. This should make the final commit easier to review, but we can also now run a "before and after" trace. No functional changes were made with this commit. Change-Id: Ia83a1a2687ccb96f2bc8a2a3928a5214c4be775c
-
- Jun 19, 2020
-
-
Joshua C. Colp authored
When stream support was added to Asterisk the stream state was used inconsistently, resulting in odd behavior. This was then standardized to be the state of a stream from the perspective of Asterisk. This change updates the StreamEcho dialplan application to use the correct state, send only, since we are only sending to the endpoint and not expecting them to send us multiple video streams. ASTERISK-28954 Change-Id: I35bfd533ef1184ffe62586b22bbd253c82872a56
-
- Jun 17, 2020
-
-
Walter Doekes authored
Because ring_entry() is not called, outgoing->chan is not touched here either. ASTERISK-28950 ASTERISK-28644 Change-Id: I564613715dfaf45af868251eb75a451f512af90f
-
- Jun 16, 2020
-
-
Walter Doekes authored
Before this changeset, it was possible that a queue member (agent) was called even though they just got out of a call, and wrapuptime seconds hadn't passed yet. This could happen if a member ended a call _between_ a new call attempt and asterisk trying that particular member for a new call. In that case, Asterisk would check the hangup time of the call-before-the-last-call instead of the hangup time of the-last-call. ASTERISK-28952 Change-Id: Ie0cab8f0e8d639c01cba633d4968ba19873d80b3
-
- Jun 10, 2020
-
-
George Joseph authored
When send_events is enabled for a user, we were leaking a reference to the bridge channel in confbridge_manager.c:send_message(). This also caused the bridge snapshot to not be destroyed. Change-Id: I87a7ae9175e3cd29f6d6a8750e0ec5427bd98e97
-
Kevin Harwell authored
This patch fixes a few compile warnings/errors that now occur when using gcc 10+. Also, the Makefile.rules check to turn off partial inlining in gcc versions greater or equal to 8.2.1 had a bug where it only it only checked against versions with at least 3 numbers (ex: 8.2.1 vs 10). This patch now ensures any version above the specified version is correctly compared. Change-Id: I54718496eb0c3ce5bd6d427cd279a29e8d2825f9
-
- May 11, 2020
-
-
traud authored
Ensure that output buffers for the osp_convert_inout function have sufficient space for additional data such as brackets and ports. ASTERISK-28804 Change-Id: Ie54c8241ff0cc653910539c2db00ff2a4869750b
-
- May 06, 2020
-
-
Nathan Bruning authored
Add a new "masquarade" channel event, and use it in app_queue to track unique id's. Testcase is submitted as https://gerrit.asterisk.org/c/testsuite/+/14210 ASTERISK-28829 #close ASTERISK-25844 #close Change-Id: Ifc5f9f9fd70903f3c6e49738d3bc632b085d2df6
-
- Apr 30, 2020
-
-
George Joseph authored
The gcc 10 -Wrestrict option was causing "overlap" errors when snprintf was copying one char[256] structure member to another char[256] member in the same structure. Using ast_alloca instead of declaring the structure inline solves the issue. Here's a link to the "enhancement": https://gcc.gnu.org/legacy-ml/gcc-patches/2019-10/msg00570.html We may follow up with a gcc bug report. Change-Id: Ie0099adcb0a9727bd9aa99e024dd912a67eaf534
-
- Apr 24, 2020
-
-
Alexander Traud authored
Since Asterisk 14, app_fax did not compile at all because Asterisk requires that not malloc but ast_malloc is used everywhere. However, the system headers of SpanDSP use malloc. Because we cannot (and do not need to) change system headers, let us ignore this. ASTERISK-28848 Change-Id: I31f7a6b92a07032c5cef1c16b8901b107fe35546
-
- Apr 20, 2020
-
-
Joshua C. Colp authored
When in a conference bridge it may be necessary to have text messages disabled for specific participants or for all. This change adds a configuration option, "text_messaging", which can be used to enable or disable this on the user profile. By default existing behavior is preserved as it defaults to "yes". ASTERISK-28841 Change-Id: I30b5d9ae6f4803881d1ed9300590d405e392bc13
-
Alexander Traud authored
ASTERISK-28838 Change-Id: I68b78e7e4718be82507247433127ce3992a5ba96
-
- Mar 25, 2020
-
-
Jaco Kroon authored
Users of this should set plugin dahdi.so in their options file. ASTERISK-16676 Change-Id: I6d01ad0a10e9fea477876d0941c3f38aac357e91
-
- Mar 13, 2020
-
-
Joshua C. Colp authored
Given a scenario where MixMonitor was initiated over AMI it was possible for the channel and MixMonitor thread to remain alive past hang up of the channel. This scenario required the AMI initiated MixMonitor to retrieve the channel, a hangup to occur on the channel in another thread, and then for MixMonitor to actually start. If this occurred the MixMonitor thread would remain alive indefinitely and the channel reference would remain. This change ensures that audiohooks are never able to be attached to channels that have been hung up. An additional fix has also been done in app_mixmonitor to properly release the channel reference if this occurs. ASTERISK-28780 Change-Id: I8044c06daa06f0f16607788c596f55623be26f58
-
- Feb 25, 2020
-
-
Walter Doekes authored
Change-Id: Icba97905e331812f129e5966e91a59b104c7a748
-
- Feb 18, 2020
-
-
Sean Bright authored
The optional synchronization behavior created in 64906c4c is now the default for MixMonitor. * Add a new flag 'n' that allows for this behavior to be turned off * Add a notice when the 'S' option is used indicating that it is no longer necessary Change-Id: I158987c475cda4e1ff1256dd0daccdd99df568b4
-
- Feb 17, 2020
-
-
Sean Bright authored
When opening a file for writing, Asterisk silently converts filenames ending with 'wav49' to 'WAV.' We aren't taking that in to account when setting the MIXMONITOR_FILENAME variable in MixMonitor. * If the user wants to write to a wav49 file, make sure that it is reflected properly in MIXMONITOR_FILENAME. * Add a note to the documentation describing this behavior. * Add a note in main/file.c indicating that app_mixmonitor needs to be changed if the logic in build_filename was changed. ASTERISK-24798 #close Reported by: xrobau Change-Id: I384691ce624eb55c80a125b9ca206d2d691c574c
-
- Jan 16, 2020
-
-
Sean Bright authored
* The MailboxExists dialplan application was deprecated on 2006-09-26 in Asterisk 1.6.0 (commit ec83b111) * The MAILBOX_EXISTS dialplan function was deprecated on 2011-12-06 in Asterisk 11.0.0 (commit fd64bb66) Change-Id: I71cfc9d7b9217a37b802f4cc6ef2d57900b7398f
-
Sean Bright authored
In af90afd9, Japanese language support was added to app_voicemail and main/say.c, but the leading whitespace is not consistent with Asterisk coding guidelines. This patch fixes that. Whitespace only, no functional change. ASTERISK~23324 Reported by: Kevin McCoy Change-Id: I72c725f5930084673749bd7c9cc426a987f08e87
-
- Jan 15, 2020
-
-
Sean Bright authored
ast_store_realtime() is not NULL tolerant, so we need to initialize the field values we pass to it to the empty string to avoid a crash. ASTERISK-23739 #close Reported by: Stas Kobzar Change-Id: I756c5dd0299c77f4274368f7c99eb0464367466c
-
- Jan 14, 2020
-
-
Sean Bright authored
If voicemail.conf exists but is empty, the config parsing process will default a number of global variables to non-zero values. On the other hand, if voicemail.conf is missing (arguably semantically equivalent to an empty file), this process is skipped and the globals are defaulted to 0. Set the globals to the same values they would be set to if a configuration were present. This allows voicemail configuration to be done completely by Realtime without the need to create an empty voicemail.conf file. ASTERISK-27622 #close Reported by: Jim Van Meggelen Change-Id: Id907d280f310f12e542ca527e6a025432b9fb409
-
Seán C McCord authored
This commit adds support for [AudioSocket]( https://wiki.asterisk.org/wiki/display/AST/AudioSocket), a very simple bidirectional audio streaming protocol. There are both channel and application interfaces. A description of the protocol can be found on the above referenced GitHub page. A short talk about the reasons and implementation can be found on [YouTube](https://www.youtube.com/watch?v=tjduXbZZEgI), from CommCon 2019. ARI support has also been added via the existing "externalMedia" ARI functionality. The UUID is specified using the arbitrary "data" field. ASTERISK-28484 #close Change-Id: Ie866e6c4fa13178ec76f2a6971ad3590a3a588b5
-
- Jan 12, 2020
-
-
Sean Bright authored
The QueueMemberPause AMI event includes two fields that return the reason a member was paused. * In release branches, deprecate Reason in favor of PausedReason. * In master, remove the Reason field entirely. ASTERISK-28349 #close Reported by: Niksa Baldun Change-Id: I01da58f2b0ab927baeee754870f62b51b7b3d296
-
- Jan 09, 2020
-
-
Corey Farrell authored
Additionally alter the warning to mention that it was "beep" which could not be streamed to give admins a better clue about what the warning means. ASTERISK-28682 Change-Id: If5aed21226a173117ed17589f44826dd1ba6576e
-