-ChangeLogs/ChangeLog-21.11.0-rc2.html
\ No newline at end of file
+ChangeLogs/ChangeLog-21.11.0.html
\ No newline at end of file
-ChangeLogs/ChangeLog-21.11.0-rc2.md
\ No newline at end of file
+ChangeLogs/ChangeLog-21.11.0.md
\ No newline at end of file
+++ /dev/null
-<html><head><title>ChangeLog for asterisk-21.11.0-rc2</title></head><body>
-<h2>Change Log for Release asterisk-21.11.0-rc2</h2>
-<h3>Links:</h3>
-<ul>
-<li><a href="https://downloads.asterisk.org/pub/telephony/asterisk/releases/ChangeLog-21.11.0-rc2.html">Full ChangeLog</a> </li>
-<li><a href="https://github.com/asterisk/asterisk/compare/21.11.0-rc1...21.11.0-rc2">GitHub Diff</a> </li>
-<li><a href="https://downloads.asterisk.org/pub/telephony/asterisk/asterisk-21.11.0-rc2.tar.gz">Tarball</a> </li>
-<li><a href="https://downloads.asterisk.org/pub/telephony/asterisk">Downloads</a> </li>
-</ul>
-<h3>Summary:</h3>
-<ul>
-<li>Commits: 3</li>
-<li>Commit Authors: 1</li>
-<li>Issues Resolved: 3</li>
-<li>Security Advisories Resolved: 0</li>
-</ul>
-<h3>User Notes:</h3>
-<h3>Upgrade Notes:</h3>
-<h3>Developer Notes:</h3>
-<h3>Commit Authors:</h3>
-<ul>
-<li>George Joseph: (3)</li>
-</ul>
-<h2>Issue and Commit Detail:</h2>
-<h3>Closed Issues:</h3>
-<ul>
-<li>1457: [bug]: segmentation fault because of a wrong ari config</li>
-<li>1462: [bug]: chan_websocket isn't handling the "opus" codec correctly.</li>
-<li>1474: [bug]: Media doesn't flow for video conference after res_rtp_asterisk change to stop media flow before DTLS completes</li>
-</ul>
-<h3>Commits By Author:</h3>
-<ul>
-<li>
-<h4>George Joseph (3):</h4>
-</li>
-<li>res_ari: Ensure outbound websocket config has a websocket_client_id.</li>
-<li>chan_websocket: Fix codec validation and add passthrough option.</li>
-<li>res_rtp_asterisk.c: Use rtp->dtls in __rtp_sendto when rtcp mux is used.</li>
-</ul>
-<h3>Commit List:</h3>
-<ul>
-<li>res_rtp_asterisk.c: Use rtp->dtls in __rtp_sendto when rtcp mux is used.</li>
-<li>chan_websocket: Fix codec validation and add passthrough option.</li>
-<li>res_ari: Ensure outbound websocket config has a websocket_client_id.</li>
-</ul>
-<h3>Commit Details:</h3>
-<h4>res_rtp_asterisk.c: Use rtp->dtls in __rtp_sendto when rtcp mux is used.</h4>
-<p>Author: George Joseph
- Date: 2025-09-23</p>
-<p>In __rtp_sendto(), the check for DTLS negotiation completion for rtcp packets
- needs to use the rtp->dtls structure instead of rtp->rtcp->dtls when
- AST_RTP_INSTANCE_RTCP_MUX is set.</p>
-<p>Resolves: #1474</p>
-<h4>chan_websocket: Fix codec validation and add passthrough option.</h4>
-<p>Author: George Joseph
- Date: 2025-09-17</p>
-<ul>
-<li>Fixed an issue in webchan_write() where we weren't detecting equivalent
- codecs properly.</li>
-<li>Added the "p" dialstring option that puts the channel driver in
- "passthrough" mode where it will not attempt to re-frame or re-time
- media coming in over the websocket from the remote app. This can be used
- for any codec but MUST be used for codecs that use packet headers or whose
- data stream can't be broken up on arbitrary byte boundaries. In this case,
- the remote app is fully responsible for correctly framing and timing media
- sent to Asterisk and the MEDIA text commands that could be sent over the
- websocket are disabled. Currently, passthrough mode is automatically set
- for the opus, speex and g729 codecs.</li>
-<li>Now calling ast_set_read_format() after ast_channel_set_rawreadformat() to
- ensure proper translation paths are set up when switching between native
- frames and slin silence frames. This fixes an issue with codec errors
- when transcode_via_sln=yes.</li>
-</ul>
-<p>Resolves: #1462</p>
-<h4>res_ari: Ensure outbound websocket config has a websocket_client_id.</h4>
-<p>Author: George Joseph
- Date: 2025-09-12</p>
-<p>Added a check to outbound_websocket_apply() that makes sure an outbound
- websocket config object in ari.conf has a websocket_client_id parameter.</p>
-<p>Resolves: #1457</p>
-</body></html>
+++ /dev/null
-
-## Change Log for Release asterisk-21.11.0-rc2
-
-### Links:
-
- - [Full ChangeLog](https://downloads.asterisk.org/pub/telephony/asterisk/releases/ChangeLog-21.11.0-rc2.html)
- - [GitHub Diff](https://github.com/asterisk/asterisk/compare/21.11.0-rc1...21.11.0-rc2)
- - [Tarball](https://downloads.asterisk.org/pub/telephony/asterisk/asterisk-21.11.0-rc2.tar.gz)
- - [Downloads](https://downloads.asterisk.org/pub/telephony/asterisk)
-
-### Summary:
-
-- Commits: 3
-- Commit Authors: 1
-- Issues Resolved: 3
-- Security Advisories Resolved: 0
-
-### User Notes:
-
-
-### Upgrade Notes:
-
-
-### Developer Notes:
-
-
-### Commit Authors:
-
-- George Joseph: (3)
-
-## Issue and Commit Detail:
-
-### Closed Issues:
-
- - 1457: [bug]: segmentation fault because of a wrong ari config
- - 1462: [bug]: chan_websocket isn't handling the "opus" codec correctly.
- - 1474: [bug]: Media doesn't flow for video conference after res_rtp_asterisk change to stop media flow before DTLS completes
-
-### Commits By Author:
-
-- #### George Joseph (3):
- - res_ari: Ensure outbound websocket config has a websocket_client_id.
- - chan_websocket: Fix codec validation and add passthrough option.
- - res_rtp_asterisk.c: Use rtp->dtls in __rtp_sendto when rtcp mux is used.
-
-
-### Commit List:
-
-- res_rtp_asterisk.c: Use rtp->dtls in __rtp_sendto when rtcp mux is used.
-- chan_websocket: Fix codec validation and add passthrough option.
-- res_ari: Ensure outbound websocket config has a websocket_client_id.
-
-### Commit Details:
-
-#### res_rtp_asterisk.c: Use rtp->dtls in __rtp_sendto when rtcp mux is used.
- Author: George Joseph
- Date: 2025-09-23
-
- In __rtp_sendto(), the check for DTLS negotiation completion for rtcp packets
- needs to use the rtp->dtls structure instead of rtp->rtcp->dtls when
- AST_RTP_INSTANCE_RTCP_MUX is set.
-
- Resolves: #1474
-
-#### chan_websocket: Fix codec validation and add passthrough option.
- Author: George Joseph
- Date: 2025-09-17
-
- * Fixed an issue in webchan_write() where we weren't detecting equivalent
- codecs properly.
- * Added the "p" dialstring option that puts the channel driver in
- "passthrough" mode where it will not attempt to re-frame or re-time
- media coming in over the websocket from the remote app. This can be used
- for any codec but MUST be used for codecs that use packet headers or whose
- data stream can't be broken up on arbitrary byte boundaries. In this case,
- the remote app is fully responsible for correctly framing and timing media
- sent to Asterisk and the MEDIA text commands that could be sent over the
- websocket are disabled. Currently, passthrough mode is automatically set
- for the opus, speex and g729 codecs.
- * Now calling ast_set_read_format() after ast_channel_set_rawreadformat() to
- ensure proper translation paths are set up when switching between native
- frames and slin silence frames. This fixes an issue with codec errors
- when transcode_via_sln=yes.
-
- Resolves: #1462
-
-#### res_ari: Ensure outbound websocket config has a websocket_client_id.
- Author: George Joseph
- Date: 2025-09-12
-
- Added a check to outbound_websocket_apply() that makes sure an outbound
- websocket config object in ari.conf has a websocket_client_id parameter.
-
- Resolves: #1457
-
-<html><head><title>ChangeLog for asterisk-21.11.0-rc1</title></head><body>
-<h2>Change Log for Release asterisk-21.11.0-rc1</h2>
+<html><head><title>ChangeLog for asterisk-21.11.0</title></head><body>
+<h2>Change Log for Release asterisk-21.11.0</h2>
<h3>Links:</h3>
<ul>
-<li><a href="https://downloads.asterisk.org/pub/telephony/asterisk/releases/ChangeLog-21.11.0-rc1.html">Full ChangeLog</a> </li>
-<li><a href="https://github.com/asterisk/asterisk/compare/21.10.2...21.11.0-rc1">GitHub Diff</a> </li>
-<li><a href="https://downloads.asterisk.org/pub/telephony/asterisk/asterisk-21.11.0-rc1.tar.gz">Tarball</a> </li>
+<li><a href="https://downloads.asterisk.org/pub/telephony/asterisk/releases/ChangeLog-21.11.0.html">Full ChangeLog</a> </li>
+<li><a href="https://github.com/asterisk/asterisk/compare/21.10.2...21.11.0">GitHub Diff</a> </li>
+<li><a href="https://downloads.asterisk.org/pub/telephony/asterisk/asterisk-21.11.0.tar.gz">Tarball</a> </li>
<li><a href="https://downloads.asterisk.org/pub/telephony/asterisk">Downloads</a> </li>
</ul>
<h3>Summary:</h3>
<ul>
-<li>Commits: 51</li>
+<li>Commits: 54</li>
<li>Commit Authors: 22</li>
-<li>Issues Resolved: 37</li>
+<li>Issues Resolved: 40</li>
<li>Security Advisories Resolved: 0</li>
</ul>
<h3>User Notes:</h3>
<li>Allan Nathanson: (1)</li>
<li>Artem Umerov: (1)</li>
<li>Ben Ford: (1)</li>
-<li>George Joseph: (9)</li>
+<li>George Joseph: (12)</li>
<li>Igor Goncharovsky: (2)</li>
<li>Jaco Kroon: (1)</li>
<li>Joe Garlick: (1)</li>
<li>1394: [improvement]: sig_analog: Skip Caller ID spill if Caller ID is disabled</li>
<li>1396: [new-feature]: pbx_builtins: Make tone option for WaitExten configurable</li>
<li>1401: [bug]: app_waitfornoise timeout is always less then configured because of time() usage</li>
+<li>1457: [bug]: segmentation fault because of a wrong ari config</li>
+<li>1462: [bug]: chan_websocket isn't handling the "opus" codec correctly.</li>
+<li>1474: [bug]: Media doesn't flow for video conference after res_rtp_asterisk change to stop media flow before DTLS completes</li>
</ul>
<h3>Commits By Author:</h3>
<ul>
<p>res_rtp_asterisk: Don't send RTP before DTLS has negotiated.</p>
</li>
<li>
-<h4>George Joseph (9):</h4>
+<h4>George Joseph (12):</h4>
</li>
<li>Media over Websocket Channel Driver</li>
<li>app_mixmonitor: Update the documentation concerning the "D" option.</li>
<li>channelstorage_cpp_map_name_id.cc: Refactor iterators for thread-safety.</li>
<li>xmldoc.c: Fix rendering of CLI output.</li>
<li>chan_websocket: Fix buffer overrun when processing TEXT websocket frames.</li>
+<li>chan_websocket: Allow additional URI parameters to be added to the outgoing URI.</li>
+<li>res_ari: Ensure outbound websocket config has a websocket_client_id.</li>
+<li>chan_websocket: Fix codec validation and add passthrough option.</li>
<li>
-<p>chan_websocket: Allow additional URI parameters to be added to the outgoing URI.</p>
+<p>res_rtp_asterisk.c: Use rtp->dtls in __rtp_sendto when rtcp mux is used.</p>
</li>
<li>
<h4>Igor Goncharovsky (2):</h4>
</ul>
<h3>Commit List:</h3>
<ul>
+<li>res_rtp_asterisk.c: Use rtp->dtls in __rtp_sendto when rtcp mux is used.</li>
+<li>chan_websocket: Fix codec validation and add passthrough option.</li>
+<li>res_ari: Ensure outbound websocket config has a websocket_client_id.</li>
<li>chan_websocket.c: Add DTMF messages</li>
<li>app_queue.c: Add new global 'log_unpause_on_reason_change'</li>
<li>app_waitforsilence.c: Use milliseconds to calculate timeout time</li>
<li>res_musiconhold: Appropriately lock channel during start.</li>
</ul>
<h3>Commit Details:</h3>
+<h4>res_rtp_asterisk.c: Use rtp->dtls in __rtp_sendto when rtcp mux is used.</h4>
+<p>Author: George Joseph
+ Date: 2025-09-23</p>
+<p>In __rtp_sendto(), the check for DTLS negotiation completion for rtcp packets
+ needs to use the rtp->dtls structure instead of rtp->rtcp->dtls when
+ AST_RTP_INSTANCE_RTCP_MUX is set.</p>
+<p>Resolves: #1474</p>
+<h4>chan_websocket: Fix codec validation and add passthrough option.</h4>
+<p>Author: George Joseph
+ Date: 2025-09-17</p>
+<ul>
+<li>Fixed an issue in webchan_write() where we weren't detecting equivalent
+ codecs properly.</li>
+<li>Added the "p" dialstring option that puts the channel driver in
+ "passthrough" mode where it will not attempt to re-frame or re-time
+ media coming in over the websocket from the remote app. This can be used
+ for any codec but MUST be used for codecs that use packet headers or whose
+ data stream can't be broken up on arbitrary byte boundaries. In this case,
+ the remote app is fully responsible for correctly framing and timing media
+ sent to Asterisk and the MEDIA text commands that could be sent over the
+ websocket are disabled. Currently, passthrough mode is automatically set
+ for the opus, speex and g729 codecs.</li>
+<li>Now calling ast_set_read_format() after ast_channel_set_rawreadformat() to
+ ensure proper translation paths are set up when switching between native
+ frames and slin silence frames. This fixes an issue with codec errors
+ when transcode_via_sln=yes.</li>
+</ul>
+<p>Resolves: #1462</p>
+<h4>res_ari: Ensure outbound websocket config has a websocket_client_id.</h4>
+<p>Author: George Joseph
+ Date: 2025-09-12</p>
+<p>Added a check to outbound_websocket_apply() that makes sure an outbound
+ websocket config object in ari.conf has a websocket_client_id parameter.</p>
+<p>Resolves: #1457</p>
<h4>chan_websocket.c: Add DTMF messages</h4>
<p>Author: Joe Garlick
Date: 2025-09-04</p>
-## Change Log for Release asterisk-21.11.0-rc1
+## Change Log for Release asterisk-21.11.0
### Links:
- - [Full ChangeLog](https://downloads.asterisk.org/pub/telephony/asterisk/releases/ChangeLog-21.11.0-rc1.html)
- - [GitHub Diff](https://github.com/asterisk/asterisk/compare/21.10.2...21.11.0-rc1)
- - [Tarball](https://downloads.asterisk.org/pub/telephony/asterisk/asterisk-21.11.0-rc1.tar.gz)
+ - [Full ChangeLog](https://downloads.asterisk.org/pub/telephony/asterisk/releases/ChangeLog-21.11.0.html)
+ - [GitHub Diff](https://github.com/asterisk/asterisk/compare/21.10.2...21.11.0)
+ - [Tarball](https://downloads.asterisk.org/pub/telephony/asterisk/asterisk-21.11.0.tar.gz)
- [Downloads](https://downloads.asterisk.org/pub/telephony/asterisk)
### Summary:
-- Commits: 51
+- Commits: 54
- Commit Authors: 22
-- Issues Resolved: 37
+- Issues Resolved: 40
- Security Advisories Resolved: 0
### User Notes:
- Allan Nathanson: (1)
- Artem Umerov: (1)
- Ben Ford: (1)
-- George Joseph: (9)
+- George Joseph: (12)
- Igor Goncharovsky: (2)
- Jaco Kroon: (1)
- Joe Garlick: (1)
- 1394: [improvement]: sig_analog: Skip Caller ID spill if Caller ID is disabled
- 1396: [new-feature]: pbx_builtins: Make tone option for WaitExten configurable
- 1401: [bug]: app_waitfornoise timeout is always less then configured because of time() usage
+ - 1457: [bug]: segmentation fault because of a wrong ari config
+ - 1462: [bug]: chan_websocket isn't handling the "opus" codec correctly.
+ - 1474: [bug]: Media doesn't flow for video conference after res_rtp_asterisk change to stop media flow before DTLS completes
### Commits By Author:
- #### Ben Ford (1):
- res_rtp_asterisk: Don't send RTP before DTLS has negotiated.
-- #### George Joseph (9):
+- #### George Joseph (12):
- Media over Websocket Channel Driver
- app_mixmonitor: Update the documentation concerning the "D" option.
- cdr.c: Set tenantid from party_a->base instead of chan->base.
- xmldoc.c: Fix rendering of CLI output.
- chan_websocket: Fix buffer overrun when processing TEXT websocket frames.
- chan_websocket: Allow additional URI parameters to be added to the outgoing URI.
+ - res_ari: Ensure outbound websocket config has a websocket_client_id.
+ - chan_websocket: Fix codec validation and add passthrough option.
+ - res_rtp_asterisk.c: Use rtp->dtls in __rtp_sendto when rtcp mux is used.
- #### Igor Goncharovsky (2):
- app_waitforsilence.c: Use milliseconds to calculate timeout time
### Commit List:
+- res_rtp_asterisk.c: Use rtp->dtls in __rtp_sendto when rtcp mux is used.
+- chan_websocket: Fix codec validation and add passthrough option.
+- res_ari: Ensure outbound websocket config has a websocket_client_id.
- chan_websocket.c: Add DTMF messages
- app_queue.c: Add new global 'log_unpause_on_reason_change'
- app_waitforsilence.c: Use milliseconds to calculate timeout time
### Commit Details:
+#### res_rtp_asterisk.c: Use rtp->dtls in __rtp_sendto when rtcp mux is used.
+ Author: George Joseph
+ Date: 2025-09-23
+
+ In __rtp_sendto(), the check for DTLS negotiation completion for rtcp packets
+ needs to use the rtp->dtls structure instead of rtp->rtcp->dtls when
+ AST_RTP_INSTANCE_RTCP_MUX is set.
+
+ Resolves: #1474
+
+#### chan_websocket: Fix codec validation and add passthrough option.
+ Author: George Joseph
+ Date: 2025-09-17
+
+ * Fixed an issue in webchan_write() where we weren't detecting equivalent
+ codecs properly.
+ * Added the "p" dialstring option that puts the channel driver in
+ "passthrough" mode where it will not attempt to re-frame or re-time
+ media coming in over the websocket from the remote app. This can be used
+ for any codec but MUST be used for codecs that use packet headers or whose
+ data stream can't be broken up on arbitrary byte boundaries. In this case,
+ the remote app is fully responsible for correctly framing and timing media
+ sent to Asterisk and the MEDIA text commands that could be sent over the
+ websocket are disabled. Currently, passthrough mode is automatically set
+ for the opus, speex and g729 codecs.
+ * Now calling ast_set_read_format() after ast_channel_set_rawreadformat() to
+ ensure proper translation paths are set up when switching between native
+ frames and slin silence frames. This fixes an issue with codec errors
+ when transcode_via_sln=yes.
+
+ Resolves: #1462
+
+#### res_ari: Ensure outbound websocket config has a websocket_client_id.
+ Author: George Joseph
+ Date: 2025-09-12
+
+ Added a check to outbound_websocket_apply() that makes sure an outbound
+ websocket config object in ari.conf has a websocket_client_id parameter.
+
+ Resolves: #1457
+
#### chan_websocket.c: Add DTMF messages
Author: Joe Garlick
Date: 2025-09-04
-<html><head><title>Readme for asterisk-21.11.0-rc2</title></head><body>
+<html><head><title>Readme for asterisk-21.11.0</title></head><body>
<h1>The Asterisk(R) Open Source PBX</h1>
<pre><code>By Mark Spencer <markster@digium.com> and the Asterisk.org developer community.
Copyright (C) 2001-2025 Sangoma Technologies Corporation and other copyright holders.
<p>If you are updating from a previous version of Asterisk, make sure you
read the Change Logs.</p>
<!-- CHANGELOGS (the URL will change based on the location of this README) -->
-<p><a href="ChangeLogs/ChangeLog-21.11.0-rc2.html">Change Logs</a></p>
+<p><a href="ChangeLogs/ChangeLog-21.11.0.html">Change Logs</a></p>
<!-- END-CHANGELOGS -->
<h3>NEW INSTALLATIONS</h3>
read the Change Logs.
<!-- CHANGELOGS (the URL will change based on the location of this README) -->
-[Change Logs](ChangeLogs/ChangeLog-21.11.0-rc2.html)
+[Change Logs](ChangeLogs/ChangeLog-21.11.0.html)
<!-- END-CHANGELOGS -->
### NEW INSTALLATIONS