Re: [asterisk-dev] Call unhold/topology change indication order
On Thu, May 12, 2022 at 12:06 PM Fridrich Maximilian wrote: > Hi, > > I think I have found out why the indication order on hold/unhold matters: > > AST_CONTROL_HOLD/UNHOLD only cares about the audio stream and does not > touch > the topology of any other streams. So when Asterisk receives an SDP with > audio > and video and both are sendonly, chan_pjsip indicates AST_CONTROL_HOLD for > the audio stream and AST_CONTROL_STREAM_TOPOLOGY_REQUEST_CHANGE for the > video > stream. > > If AST_CONTROL_HOLD is indicated after > AST_CONTROL_STREAM_TOPOLOGY_REQUEST_CHANGE, it still has "outdated" > topology > information as it only cares about the default audio stream. So after the > stream topology is changed, it is "overwritten" by the outdated topology > from > the hold/unhold indication. > > To resolve the issue, the topology request change needs to check if this is > also a hold/unhold. If it is, there are two option: > > 1. Ensure that it executes after the hold/unhold indication > 2. Ensure that the hold/unhold indication receives the updated topology > > I'm stuck on implementing either of those solutions. I think the place we > need > to work on is in bridge_channel.c:bridge_handle_trip() before the call to > stream_topology_changed(). In bridge_handle_trip() we might still have a > chance > to interact with the other channel(s) in the bridge. > > Does anyone have any idea on how to proceed? > Not off the top of my head. I will try to give this some thought but I don't know if/when I'll really have any thought, it's not something that can really be answered without digging in deeply and refreshing memory on the entire view of everything. -- Joshua C. Colp Asterisk Technical Lead Sangoma Technologies Check us out at www.sangoma.com and www.asterisk.org -- _ -- Bandwidth and Colocation Provided by http://www.api-digital.com -- asterisk-dev mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-dev
[asterisk-dev] Asterisk 19.4.0 Now Available
The Asterisk Development Team would like to announce the release of Asterisk 19.4.0. This release is available for immediate download at https://downloads.asterisk.org/pub/telephony/asterisk The release of Asterisk 19.4.0 resolves several issues reported by the community and would have not been possible without your participation. Thank you! The following issues are resolved in this release: Security bugs fixed in this release: --- * ASTERISK-29476 - res_stir_shaken: Blind SSRF vulnerabilities (Reported by Clint Ruoho) * ASTERISK-29838 - ${SQL_ESC()} not correctly escaping a terminating \ (Reported by Leandro Dardini) * ASTERISK-29872 - res_stir_shaken: Resource exhaustion with large files (Reported by Benjamin Keith Ford) New Features made in this release: --- * ASTERISK-29931 - Option to allow a user to not hear the join sound on enter but everyone else can (Reported by Michael Cargile) * ASTERISK-29968 - func_db: Add a function to return cardinality of keys at prefix (Reported by N A) * ASTERISK-29486 - Hint-like extension value lookup function without device state (Reported by N A) * ASTERISK-29820 - cli: Add command to evaluate a function (Reported by N A) * ASTERISK-29941 - chan_pjsip: Add ability to send flash events (Reported by N A) * ASTERISK-29876 - app_queue: Add music on hold option (Reported by N A) Bugs fixed in this release: --- * ASTERISK-29655 - res_pjsip_session: No video to caller if no camera available (Reported by Michael Auracher) * ASTERISK-29638 - res_pjsip_session: No video after early media (Reported by Michael Auracher) * ASTERISK-28518 - chan_dahdi: Caller ID FSK Erroneously Sent when Picking Up Dahdi Call On Hold (Reported by Josh Alberts) * ASTERISK-30007 - chan_iax2: Prevent crashes due to attempted encryption with missing secrets (Reported by N A) * ASTERISK-29990 - chan_dahdi: adding ring cadences is not idempotent on dahdi restart (Reported by N A) * ASTERISK-29728 - menuselect: Disabled by default modules that are enabled are always recompiled (Reported by N A) * ASTERISK-30002 - app_meetme: Don't erroneously set global variables when channel is NULL (Reported by N A) * ASTERISK-22246 - Asterisk's "T" flag is ignored when used with "r" or "R" flags. (documentation bug) (Reported by Rusty Newton) * ASTERISK-26582 - Asterisk seems to ignore the "n" parameter for "disable console colorization" (Reported by Sebastian Gutierrez) * ASTERISK-29994 - chan_dahdi: Round robin array size is too small for max number of groups (Reported by N A) * ASTERISK-29943 - file.c: seeking to negative file offset is not prevented (Reported by N A) * ASTERISK-29843 - Session timers get removed on UPDATE (Reported by Mark Petersen) * ASTERISK-29842 - Do not change 180 Ringing to 183 Progress even if early_media already enabled (Reported by Mark Petersen) * ASTERISK-29955 - chan_sip: SIP route header is missing on UPDATE (Reported by Mark Petersen) * ASTERISK-29253 - Incorrect bridging on transfer (Reported by Yury Kirsanov) * ASTERISK-29948 - iostream: Infinite TCP timeout writing data (Reported by N A) * ASTERISK-30024 - Failed to sign STIR/SHAKEN payload with functionality not enabled (Reported by Claude Diderich) * ASTERISK-30006 - res_pjsip: UDP transport does not work when async_operations is greater than 1 (Reported by Ross Beer) * ASTERISK-30021 - ast_variable_list_replace_variable uses variable with new keyword (Reported by Jasper Hafkenscheid) * ASTERISK-30015 - pjsip / WebRTC: Chrome creating large number of SDP attributes (Reported by Josh Hogan) * ASTERISK-30023 - cdr_adaptive_odbc: does not support DATETIME database columns (Reported by Gregory Massel) * ASTERISK-26689 - res_pjsip_sdp_rtp: 183 Session in Progress. Disconnecting channel for lack of RTP activity (Reported by Dmitriy Serov) * ASTERISK-29929 - res_pjsip_sdp_rtp: Disconnecting channel for lack of RTP activity in one way sessions (Reported by Boris P. Korzun) * ASTERISK-29411 - Crash in pjsip_msg_find_hdr_by_name (Reported by LA) * ASTERISK-29535 - Segmentation fault in libasteriskpj.so.2 (Reported by Daniel Bonazzi) * ASTERISK-26719 - pbx: Only up to 127 includes in a dialplan context (AST_PBX_MAX_STACK - 1) (Reported by Tzafrir Cohen) * ASTERISK-29986 - build: Asterisk 18.11.0 doesn't compile when wget isn't available (Reported by Stefan Ruijsenaars) * ASTERISK-29988 - REGRESSION: The build process is requiring
[asterisk-dev] Asterisk 18.12.0 Now Available
The Asterisk Development Team would like to announce the release of Asterisk 18.12.0. This release is available for immediate download at https://downloads.asterisk.org/pub/telephony/asterisk The release of Asterisk 18.12.0 resolves several issues reported by the community and would have not been possible without your participation. Thank you! The following issues are resolved in this release: Security bugs fixed in this release: --- * ASTERISK-29476 - res_stir_shaken: Blind SSRF vulnerabilities (Reported by Clint Ruoho) * ASTERISK-29838 - ${SQL_ESC()} not correctly escaping a terminating \ (Reported by Leandro Dardini) * ASTERISK-29872 - res_stir_shaken: Resource exhaustion with large files (Reported by Benjamin Keith Ford) New Features made in this release: --- * ASTERISK-29931 - Option to allow a user to not hear the join sound on enter but everyone else can (Reported by Michael Cargile) * ASTERISK-29968 - func_db: Add a function to return cardinality of keys at prefix (Reported by N A) * ASTERISK-29486 - Hint-like extension value lookup function without device state (Reported by N A) * ASTERISK-29941 - chan_pjsip: Add ability to send flash events (Reported by N A) * ASTERISK-29820 - cli: Add command to evaluate a function (Reported by N A) * ASTERISK-29876 - app_queue: Add music on hold option (Reported by N A) Bugs fixed in this release: --- * ASTERISK-29655 - res_pjsip_session: No video to caller if no camera available (Reported by Michael Auracher) * ASTERISK-29638 - res_pjsip_session: No video after early media (Reported by Michael Auracher) * ASTERISK-28518 - chan_dahdi: Caller ID FSK Erroneously Sent when Picking Up Dahdi Call On Hold (Reported by Josh Alberts) * ASTERISK-29990 - chan_dahdi: adding ring cadences is not idempotent on dahdi restart (Reported by N A) * ASTERISK-30007 - chan_iax2: Prevent crashes due to attempted encryption with missing secrets (Reported by N A) * ASTERISK-29728 - menuselect: Disabled by default modules that are enabled are always recompiled (Reported by N A) * ASTERISK-30002 - app_meetme: Don't erroneously set global variables when channel is NULL (Reported by N A) * ASTERISK-29994 - chan_dahdi: Round robin array size is too small for max number of groups (Reported by N A) * ASTERISK-22246 - Asterisk's "T" flag is ignored when used with "r" or "R" flags. (documentation bug) (Reported by Rusty Newton) * ASTERISK-26582 - Asterisk seems to ignore the "n" parameter for "disable console colorization" (Reported by Sebastian Gutierrez) * ASTERISK-29843 - Session timers get removed on UPDATE (Reported by Mark Petersen) * ASTERISK-29943 - file.c: seeking to negative file offset is not prevented (Reported by N A) * ASTERISK-29955 - chan_sip: SIP route header is missing on UPDATE (Reported by Mark Petersen) * ASTERISK-29842 - Do not change 180 Ringing to 183 Progress even if early_media already enabled (Reported by Mark Petersen) * ASTERISK-29948 - iostream: Infinite TCP timeout writing data (Reported by N A) * ASTERISK-29253 - Incorrect bridging on transfer (Reported by Yury Kirsanov) * ASTERISK-30006 - res_pjsip: UDP transport does not work when async_operations is greater than 1 (Reported by Ross Beer) * ASTERISK-30024 - Failed to sign STIR/SHAKEN payload with functionality not enabled (Reported by Claude Diderich) * ASTERISK-30021 - ast_variable_list_replace_variable uses variable with new keyword (Reported by Jasper Hafkenscheid) * ASTERISK-30023 - cdr_adaptive_odbc: does not support DATETIME database columns (Reported by Gregory Massel) * ASTERISK-30015 - pjsip / WebRTC: Chrome creating large number of SDP attributes (Reported by Josh Hogan) * ASTERISK-26689 - res_pjsip_sdp_rtp: 183 Session in Progress. Disconnecting channel for lack of RTP activity (Reported by Dmitriy Serov) * ASTERISK-29929 - res_pjsip_sdp_rtp: Disconnecting channel for lack of RTP activity in one way sessions (Reported by Boris P. Korzun) * ASTERISK-29411 - Crash in pjsip_msg_find_hdr_by_name (Reported by LA) * ASTERISK-29535 - Segmentation fault in libasteriskpj.so.2 (Reported by Daniel Bonazzi) * ASTERISK-26719 - pbx: Only up to 127 includes in a dialplan context (AST_PBX_MAX_STACK - 1) (Reported by Tzafrir Cohen) * ASTERISK-29986 - build: Asterisk 18.11.0 doesn't compile when wget isn't available (Reported by Stefan Ruijsenaars) * ASTERISK-29988 - REGRESSION: The build process is requiring
[asterisk-dev] Asterisk 16.26.0 Now Available
The Asterisk Development Team would like to announce the release of Asterisk 16.26.0. This release is available for immediate download at https://downloads.asterisk.org/pub/telephony/asterisk The release of Asterisk 16.26.0 resolves several issues reported by the community and would have not been possible without your participation. Thank you! The following issues are resolved in this release: Security bugs fixed in this release: --- * ASTERISK-29476 - res_stir_shaken: Blind SSRF vulnerabilities (Reported by Clint Ruoho) * ASTERISK-29838 - ${SQL_ESC()} not correctly escaping a terminating \ (Reported by Leandro Dardini) * ASTERISK-29872 - res_stir_shaken: Resource exhaustion with large files (Reported by Benjamin Keith Ford) New Features made in this release: --- * ASTERISK-29931 - Option to allow a user to not hear the join sound on enter but everyone else can (Reported by Michael Cargile) * ASTERISK-29968 - func_db: Add a function to return cardinality of keys at prefix (Reported by N A) * ASTERISK-29486 - Hint-like extension value lookup function without device state (Reported by N A) * ASTERISK-29941 - chan_pjsip: Add ability to send flash events (Reported by N A) * ASTERISK-29820 - cli: Add command to evaluate a function (Reported by N A) * ASTERISK-29876 - app_queue: Add music on hold option (Reported by N A) Bugs fixed in this release: --- * ASTERISK-28518 - chan_dahdi: Caller ID FSK Erroneously Sent when Picking Up Dahdi Call On Hold (Reported by Josh Alberts) * ASTERISK-29990 - chan_dahdi: adding ring cadences is not idempotent on dahdi restart (Reported by N A) * ASTERISK-30007 - chan_iax2: Prevent crashes due to attempted encryption with missing secrets (Reported by N A) * ASTERISK-29728 - menuselect: Disabled by default modules that are enabled are always recompiled (Reported by N A) * ASTERISK-30002 - app_meetme: Don't erroneously set global variables when channel is NULL (Reported by N A) * ASTERISK-29994 - chan_dahdi: Round robin array size is too small for max number of groups (Reported by N A) * ASTERISK-22246 - Asterisk's "T" flag is ignored when used with "r" or "R" flags. (documentation bug) (Reported by Rusty Newton) * ASTERISK-26582 - Asterisk seems to ignore the "n" parameter for "disable console colorization" (Reported by Sebastian Gutierrez) * ASTERISK-29843 - Session timers get removed on UPDATE (Reported by Mark Petersen) * ASTERISK-29943 - file.c: seeking to negative file offset is not prevented (Reported by N A) * ASTERISK-29955 - chan_sip: SIP route header is missing on UPDATE (Reported by Mark Petersen) * ASTERISK-29842 - Do not change 180 Ringing to 183 Progress even if early_media already enabled (Reported by Mark Petersen) * ASTERISK-29948 - iostream: Infinite TCP timeout writing data (Reported by N A) * ASTERISK-29253 - Incorrect bridging on transfer (Reported by Yury Kirsanov) * ASTERISK-30024 - Failed to sign STIR/SHAKEN payload with functionality not enabled (Reported by Claude Diderich) * ASTERISK-30006 - res_pjsip: UDP transport does not work when async_operations is greater than 1 (Reported by Ross Beer) * ASTERISK-29655 - res_pjsip_session: No video to caller if no camera available (Reported by Michael Auracher) * ASTERISK-29638 - res_pjsip_session: No video after early media (Reported by Michael Auracher) * ASTERISK-30015 - pjsip / WebRTC: Chrome creating large number of SDP attributes (Reported by Josh Hogan) * ASTERISK-30021 - ast_variable_list_replace_variable uses variable with new keyword (Reported by Jasper Hafkenscheid) * ASTERISK-30023 - cdr_adaptive_odbc: does not support DATETIME database columns (Reported by Gregory Massel) * ASTERISK-29411 - Crash in pjsip_msg_find_hdr_by_name (Reported by LA) * ASTERISK-29535 - Segmentation fault in libasteriskpj.so.2 (Reported by Daniel Bonazzi) * ASTERISK-26719 - pbx: Only up to 127 includes in a dialplan context (AST_PBX_MAX_STACK - 1) (Reported by Tzafrir Cohen) * ASTERISK-29988 - REGRESSION: The build process is requiring xmllint or xmlstarlet ro be installed when it shouldn't (Reported by George Joseph) * ASTERISK-29986 - build: Asterisk 18.11.0 doesn't compile when wget isn't available (Reported by Stefan Ruijsenaars) * ASTERISK-29895 - chan_iax2: Fix misaligned spacing in iax2 show netstats printout (Reported by N A) * ASTERISK-29939 - agi: Fix xmldoc bug with set music (Reported by N A) *