From 7bb900bb4d4c9d380a60e77f4eaf1847454b1a1d Mon Sep 17 00:00:00 2001 From: Asterisk Development Team Date: Wed, 15 Oct 2025 16:20:52 +0000 Subject: [PATCH] Update for 20.16.0 --- .version | 2 +- CHANGES.html | 2 +- CHANGES.md | 2 +- ChangeLogs/ChangeLog-20.16.0-rc2.html | 81 ---------------- ChangeLogs/ChangeLog-20.16.0-rc2.md | 95 ------------------- ...0.16.0-rc1.html => ChangeLog-20.16.0.html} | 63 ++++++++++-- ...og-20.16.0-rc1.md => ChangeLog-20.16.0.md} | 66 +++++++++++-- README.html | 4 +- README.md | 2 +- 9 files changed, 117 insertions(+), 200 deletions(-) delete mode 100644 ChangeLogs/ChangeLog-20.16.0-rc2.html delete mode 100644 ChangeLogs/ChangeLog-20.16.0-rc2.md rename ChangeLogs/{ChangeLog-20.16.0-rc1.html => ChangeLog-20.16.0.html} (94%) rename ChangeLogs/{ChangeLog-20.16.0-rc1.md => ChangeLog-20.16.0.md} (94%) diff --git a/.version b/.version index d3793cd5f6..8ce7030825 100644 --- a/.version +++ b/.version @@ -1 +1 @@ -20.16.0-rc2 +20.16.0 diff --git a/CHANGES.html b/CHANGES.html index b2ccf25ade..452f7ebc32 120000 --- a/CHANGES.html +++ b/CHANGES.html @@ -1 +1 @@ -ChangeLogs/ChangeLog-20.16.0-rc2.html \ No newline at end of file +ChangeLogs/ChangeLog-20.16.0.html \ No newline at end of file diff --git a/CHANGES.md b/CHANGES.md index a42f7cb690..7c09216341 120000 --- a/CHANGES.md +++ b/CHANGES.md @@ -1 +1 @@ -ChangeLogs/ChangeLog-20.16.0-rc2.md \ No newline at end of file +ChangeLogs/ChangeLog-20.16.0.md \ No newline at end of file diff --git a/ChangeLogs/ChangeLog-20.16.0-rc2.html b/ChangeLogs/ChangeLog-20.16.0-rc2.html deleted file mode 100644 index e78fc2e946..0000000000 --- a/ChangeLogs/ChangeLog-20.16.0-rc2.html +++ /dev/null @@ -1,81 +0,0 @@ -ChangeLog for asterisk-20.16.0-rc2 -

Change Log for Release asterisk-20.16.0-rc2

-

Links:

- -

Summary:

- -

User Notes:

-

Upgrade Notes:

-

Developer Notes:

-

Commit Authors:

- -

Issue and Commit Detail:

-

Closed Issues:

- -

Commits By Author:

- -

Commit List:

- -

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

- -

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

- diff --git a/ChangeLogs/ChangeLog-20.16.0-rc2.md b/ChangeLogs/ChangeLog-20.16.0-rc2.md deleted file mode 100644 index d32e76a270..0000000000 --- a/ChangeLogs/ChangeLog-20.16.0-rc2.md +++ /dev/null @@ -1,95 +0,0 @@ - -## Change Log for Release asterisk-20.16.0-rc2 - -### Links: - - - [Full ChangeLog](https://downloads.asterisk.org/pub/telephony/asterisk/releases/ChangeLog-20.16.0-rc2.html) - - [GitHub Diff](https://github.com/asterisk/asterisk/compare/20.16.0-rc1...20.16.0-rc2) - - [Tarball](https://downloads.asterisk.org/pub/telephony/asterisk/asterisk-20.16.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 - diff --git a/ChangeLogs/ChangeLog-20.16.0-rc1.html b/ChangeLogs/ChangeLog-20.16.0.html similarity index 94% rename from ChangeLogs/ChangeLog-20.16.0-rc1.html rename to ChangeLogs/ChangeLog-20.16.0.html index 2c8027219e..a46c051775 100644 --- a/ChangeLogs/ChangeLog-20.16.0-rc1.html +++ b/ChangeLogs/ChangeLog-20.16.0.html @@ -1,17 +1,17 @@ -ChangeLog for asterisk-20.16.0-rc1 -

Change Log for Release asterisk-20.16.0-rc1

+ChangeLog for asterisk-20.16.0 +

Change Log for Release asterisk-20.16.0

Links:

Summary:

User Notes:

@@ -124,7 +124,7 @@
  • Allan Nathanson: (1)
  • Artem Umerov: (1)
  • Ben Ford: (1)
  • -
  • George Joseph: (9)
  • +
  • George Joseph: (12)
  • Igor Goncharovsky: (2)
  • Jaco Kroon: (1)
  • Joe Garlick: (1)
  • @@ -182,6 +182,9 @@
  • 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:

    Commit List:

    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

    + +

    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

    diff --git a/ChangeLogs/ChangeLog-20.16.0-rc1.md b/ChangeLogs/ChangeLog-20.16.0.md similarity index 94% rename from ChangeLogs/ChangeLog-20.16.0-rc1.md rename to ChangeLogs/ChangeLog-20.16.0.md index c339175845..75e29bdab3 100644 --- a/ChangeLogs/ChangeLog-20.16.0-rc1.md +++ b/ChangeLogs/ChangeLog-20.16.0.md @@ -1,18 +1,18 @@ -## Change Log for Release asterisk-20.16.0-rc1 +## Change Log for Release asterisk-20.16.0 ### Links: - - [Full ChangeLog](https://downloads.asterisk.org/pub/telephony/asterisk/releases/ChangeLog-20.16.0-rc1.html) - - [GitHub Diff](https://github.com/asterisk/asterisk/compare/20.15.2...20.16.0-rc1) - - [Tarball](https://downloads.asterisk.org/pub/telephony/asterisk/asterisk-20.16.0-rc1.tar.gz) + - [Full ChangeLog](https://downloads.asterisk.org/pub/telephony/asterisk/releases/ChangeLog-20.16.0.html) + - [GitHub Diff](https://github.com/asterisk/asterisk/compare/20.15.2...20.16.0) + - [Tarball](https://downloads.asterisk.org/pub/telephony/asterisk/asterisk-20.16.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: @@ -113,7 +113,7 @@ - Allan Nathanson: (1) - Artem Umerov: (1) - Ben Ford: (1) -- George Joseph: (9) +- George Joseph: (12) - Igor Goncharovsky: (2) - Jaco Kroon: (1) - Joe Garlick: (1) @@ -172,6 +172,9 @@ - 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: @@ -192,7 +195,7 @@ - #### 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. @@ -202,6 +205,9 @@ - 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 @@ -273,6 +279,9 @@ ### 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 @@ -321,6 +330,47 @@ ### 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 diff --git a/README.html b/README.html index 1a14364554..fa42748b50 100644 --- a/README.html +++ b/README.html @@ -1,4 +1,4 @@ -Readme for asterisk-20.16.0-rc2 +Readme for asterisk-20.16.0

    The Asterisk(R) Open Source PBX

    By Mark Spencer <markster@digium.com> and the Asterisk.org developer community.
     Copyright (C) 2001-2025 Sangoma Technologies Corporation and other copyright holders.
    @@ -37,7 +37,7 @@ hardware.

    If you are updating from a previous version of Asterisk, make sure you read the Change Logs.

    -

    Change Logs

    +

    Change Logs

    NEW INSTALLATIONS

    diff --git a/README.md b/README.md index a635c1cab2..965ee460c6 100644 --- a/README.md +++ b/README.md @@ -55,7 +55,7 @@ If you are updating from a previous version of Asterisk, make sure you read the Change Logs. -[Change Logs](ChangeLogs/ChangeLog-20.16.0-rc2.html) +[Change Logs](ChangeLogs/ChangeLog-20.16.0.html) ### NEW INSTALLATIONS -- 2.47.3