# Asterisk release 20.7.0

**URL:** <https://community.asterisk.org/t/asterisk-release-20-7-0/101626>\
**Category:** Asterisk News\
**Created:** [March 18, 2024, 1:22pm UTC](https://community.asterisk.org/t/asterisk-release-20-7-0/101626 "2024-03-18T13:22:10Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![asteriskteam](https://sea1.discourse-cdn.com/asterisk/user_avatar/community.asterisk.org/asteriskteam/32/1845_2.png) [@asteriskteam](https://community.asterisk.org/u/asteriskteam)\
**Post date:** [March 18, 2024, 1:22pm UTC](https://community.asterisk.org/t/asterisk-release-20-7-0/101626/1 "2024-03-18T13:22:10Z")

</div>

The Asterisk Development Team would like to announce  
the release of asterisk-20.7.0.

The release artifacts are available for immediate download at

> **[Release Asterisk Release 20.7.0 · asterisk/asterisk](https://github.com/asterisk/asterisk/releases/tag/20.7.0)**
>
> The Asterisk Development Team would like to announce
> the release of asterisk-20.7.0.
> The release artifacts are available for immediate download at
> https://github.com/asterisk/asterisk/releases/tag/...

and

> **[Index of /pub/telephony/asterisk/](https://downloads.asterisk.org/pub/telephony/asterisk/)**

Repository: [GitHub - asterisk/asterisk: The official Asterisk Project repository.](https://github.com/asterisk/asterisk)  
Tag: 20.7.0

This release resolves issues reported by the community  
and would have not been possible without your participation.

Thank You!

# Change Log for Release asterisk-20.7.0

## Links:

- [Full ChangeLog](https://downloads.asterisk.org/pub/telephony/asterisk/releases/ChangeLog-20.7.0.md)
- [GitHub Diff](https://github.com/asterisk/asterisk/compare/20.6.0...20.7.0)
- [Tarball](https://downloads.asterisk.org/pub/telephony/asterisk/asterisk-20.7.0.tar.gz)
- [Downloads](https://downloads.asterisk.org/pub/telephony/asterisk)

## Summary:

- res\_pjsip\_stir\_shaken.c: Add checks for missing parameters
- app\_dial: Add dial time for progress/ringing.
- app\_voicemail: Properly reinitialize config after unit tests.
- app\_queue.c : fix “queue add member” usage string
- app\_voicemail: Allow preventing mark messages as urgent.
- res\_pjsip: Use consistent type for boolean columns.
- attestation\_config.c: Use ast\_free instead of ast\_std\_free
- Makefile: Add stir\_shaken/cache to directories created on install
- Stir/Shaken Refactor
- alembic: Synchronize alembic heads between supported branches.
- translate.c: implement new direct comp table mode
- README.md: Removed outdated link
- strings.h: Ensure ast\_str\_buffer(…) returns a 0 terminated string.
- res\_rtp\_asterisk.c: Correct coefficient in MOS calculation.
- dsp.c: Fix and improve potentially inaccurate log message.
- pjsip show channelstats: Prevent possible segfault when faxing
- Reduce startup/shutdown verbose logging
- configure: Rerun bootstrap on modern platform.
- Upgrade bundled pjproject to 2.14.
- app\_speech\_utils.c: Allow partial speech results.
- utils: Make behavior of ast\_strsep\* match strsep.
- app\_chanspy: Add ‘D’ option for dual-channel audio
- app\_if: Fix next priority calculation.
- res\_pjsip\_t38.c: Permit IPv6 SDP connection addresses.
- BuildSystem: Bump autotools versions on OpenBSD.
- main/utils: Simplify the FreeBSD ast\_get\_tid() handling
- res\_pjsip\_session.c: Correctly format SDP connection addresses.
- rtp\_engine.c: Correct sample rate typo for L16/44100.
- manager.c: Fix erroneous reloads in UpdateConfig.
- res\_calendar\_icalendar: Print iCalendar error on parsing failure.
- app\_confbridge: Don’t emit warnings on valid configurations.
- app\_voicemail: add NoOp alembic script to maintain sync
- chan\_dahdi: Allow MWI to be manually toggled on channels.
- chan\_rtp.c: MulticastRTP missing refcount without codec option
- chan\_rtp.c: Change MulticastRTP nameing to avoid memory leak
- func\_frame\_trace: Add CLI command to dump frame queue.

## User Notes:

- 
### app\_dial: Add dial time for progress/ringing.

The timeout argument to Dial now allows  
specifying the maximum amount of time to dial if  
early media is not received.

- 
### app\_voicemail: Allow preventing mark messages as urgent.

The leaveurgent mailbox option can now be used to  
control whether callers may leave messages marked as ‘Urgent’.

- 
### Stir/Shaken Refactor

Asterisk’s stir-shaken feature has been refactored to  
correct interoperability, RFC compliance, and performance issues.  
See [STIR-SHAKEN - Asterisk Documentation](https://docs.asterisk.org/Deployment/STIR-SHAKEN) for more  
information.

- 
### Upgrade bundled pjproject to 2.14.

Bundled pjproject has been upgraded to 2.14. For more  
information on what all is included in this change, check out the  
pjproject Github page: [Releases · pjsip/pjproject · GitHub](https://github.com/pjsip/pjproject/releases)

- 
### app\_speech\_utils.c: Allow partial speech results.

The SpeechBackground dialplan application now supports a ‘p’  
option that will return partial results from speech engines that  
provide them when a timeout occurs.

- 
### app\_chanspy: Add ‘D’ option for dual-channel audio

The ChanSpy application now accepts the ‘D’ option which  
will interleave the spied audio within the outgoing frames. The  
purpose of this is to allow the audio to be read as a Dual channel  
stream with separate incoming and outgoing audio. Setting both the  
‘o’ option and the ‘D’ option and results in the ‘D’ option being  
ignored.

- 
### chan\_dahdi: Allow MWI to be manually toggled on channels.

The ‘dahdi set mwi’ now allows MWI on channels  
to be manually toggled if needed for troubleshooting.  
Resolves: #440

## Upgrade Notes:

- 
### Stir/Shaken Refactor
The stir-shaken refactor is a breaking change but since  
it’s not working now we don’t think it matters. The  
stir\_shaken.conf file has changed significantly which means that  
existing ones WILL need to be changed. The stir\_shaken.conf.sample  
file in configs/samples/ has quite a bit more information. This is  
also an ABI breaking change since some of the existing objects  
needed to be changed or removed, and new ones added. Additionally,  
if res\_stir\_shaken is enabled in menuselect, you’ll need to either  
have the development package for libjwt v1.15.3 installed or use  
the --with-libjwt-bundled option with ./configure.

## Closed Issues:

- #46: [bug]: Stir/Shaken: Wrong CID used when looking up certificates
- #351: [improvement]: Refactor res\_stir\_shaken to use libjwt
- #406: [improvement]: pjsip: Upgrade bundled version to pjproject 2.14
- #440: [new-feature]: chan\_dahdi: Allow manually toggling MWI on channels
- #492: [improvement]: res\_calendar\_icalendar: Print icalendar error if available on parsing failure
- #527: [bug]: app\_voicemail\_odbc no longer working after removal of macrocontext.
- #529: [bug]: MulticastRTP without selected codec leeds to “FRACK!, Failed assertion bad magic number 0x0 for object” after ~30 calls
- #533: [improvement]: channel.c, func\_frame\_trace.c: Improve debuggability of channel frame queue
- #551: [bug]: manager: UpdateConfig triggers reload with “Reload: no”
- #560: [bug]: EndIf() causes next priority to be skipped
- #565: [bug]: Application Read() returns immediately
- #569: [improvement]: Add option to interleave input and output frames on spied channel
- #572: [improvement]: Copy partial speech results when Asterisk is ready to move on but the speech backend is not
- #582: [improvement]: Reduce unneeded logging during startup and shutdown
- #586: [bug]: The “restrict” keyword used in chan\_iax2.c isn’t supported in older gcc versions
- #588: [new-feature]: app\_dial: Allow Dial to be aborted if early media is not received
- #592: [bug]: In certain circumstances, “pjsip show channelstats” can segfault when a fax session is active
- #595: [improvement]: dsp.c: Fix and improve confusing warning message.
- #597: [bug]: wrong MOS calculation
- #601: [new-feature]: translate.c: implement new direct comp table mode (PR #585)
- #619: [new-feature]: app\_voicemail: Allow preventing callers from marking messages as urgent
- #629: [bug]: app\_voicemail: Multiple executions of unit tests cause segfault
- #634: [bug]: make install doesn’t create the stir\_shaken cache directory
- #636: [bug]: Possible SEGV in res\_stir\_shaken due to wrong free function
- #645: [bug]: Occasional SEGV in res\_pjsip\_stir\_shaken.c

---

<div class="post-metadata">

**Author:** ![gjoseph](https://sea1.discourse-cdn.com/asterisk/user_avatar/community.asterisk.org/gjoseph/32/1690_2.png) [@gjoseph](https://community.asterisk.org/u/gjoseph)\
**Post date:** [March 18, 2024, 1:27pm UTC](https://community.asterisk.org/t/asterisk-release-20-7-0/101626/2 "2024-03-18T13:27:07Z")

</div>

Closed on March 18, 2024, 1:27pm UTC



---

<div class="post-metadata">

**Author:** ![gjoseph](https://sea1.discourse-cdn.com/asterisk/user_avatar/community.asterisk.org/gjoseph/32/1690_2.png) [@gjoseph](https://community.asterisk.org/u/gjoseph)\
**Post date:** [March 18, 2024, 1:28pm UTC](https://community.asterisk.org/t/asterisk-release-20-7-0/101626/3 "2024-03-18T13:28:46Z")

</div>

Pinned globally on March 18, 2024, 1:28pm UTC



---

<div class="post-metadata">

**Author:** ![gjoseph](https://sea1.discourse-cdn.com/asterisk/user_avatar/community.asterisk.org/gjoseph/32/1690_2.png) [@gjoseph](https://community.asterisk.org/u/gjoseph)\
**Post date:** [May 16, 2024, 12:54pm UTC](https://community.asterisk.org/t/asterisk-release-20-7-0/101626/4 "2024-05-16T12:54:49Z")

</div>

Unpinned on May 16, 2024, 12:54pm UTC


