asterisk

The official Asterisk Project repository.

OTHER License

Stars
1.9K

Bot releases are visible (Hide)

asterisk - Asterisk Release 21.2.0-rc1

Published by asterisk-org-access-app[bot] 8 months ago

The Asterisk Development Team would like to announce
release candidate 1 of asterisk-21.2.0.

The release artifacts are available for immediate download at
https://github.com/asterisk/asterisk/releases/tag/21.2.0-rc1
and
https://downloads.asterisk.org/pub/telephony/asterisk

Repository: https://github.com/asterisk/asterisk
Tag: 21.2.0-rc1

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

Thank You!

Change Log for Release asterisk-21.2.0-rc1

Links:

Summary:

  • 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
  • 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.
  • res_pjsip_outbound_registration.c: Add User-Agent header override
  • 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_odbc: remove macrocontext from voicemail_messages table
  • 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 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: https://github.com/pjsip/pjproject/releases

  • res_pjsip_outbound_registration.c: Add User-Agent header override

    PJSIP outbound registrations now support a per-registration
    User-Agent header

  • 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.

  • app_voicemail_odbc: remove macrocontext from voicemail_messages table

    The fix requires removing the macrocontext column from the
    voicemail_messages table in the voicemail database via alembic upgrade.

  • 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.

  • app_voicemail_odbc: remove macrocontext from voicemail_messages table

    The fix requires that the voicemail database be upgraded via
    alembic. Upgrading to the latest voicemail database via alembic will
    remove the macrocontext column from the voicemail_messages table.

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
  • #515: [improvement]: Implement option to override User-Agent-Header on a per-registration basis
  • #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
asterisk - Asterisk Release 20.7.0-rc1

Published by asterisk-org-access-app[bot] 8 months ago

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

The release artifacts are available for immediate download at
https://github.com/asterisk/asterisk/releases/tag/20.7.0-rc1
and
https://downloads.asterisk.org/pub/telephony/asterisk

Repository: https://github.com/asterisk/asterisk
Tag: 20.7.0-rc1

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-rc1

Links:

Summary:

  • 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 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: 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
asterisk - Asterisk Release 18.22.0-rc1

Published by asterisk-org-access-app[bot] 8 months ago

The Asterisk Development Team would like to announce
release candidate 1 of asterisk-18.22.0.

The release artifacts are available for immediate download at
https://github.com/asterisk/asterisk/releases/tag/18.22.0-rc1
and
https://downloads.asterisk.org/pub/telephony/asterisk

Repository: https://github.com/asterisk/asterisk
Tag: 18.22.0-rc1

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

Thank You!

Change Log for Release asterisk-18.22.0-rc1

Links:

Summary:

  • 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 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: 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
asterisk - Asterisk Release certified-18.9-cert8-rc2

Published by asterisk-org-access-app[bot] 8 months ago

The Asterisk Development Team would like to announce
release candidate 2 of Certified asterisk-18.9-cert8.

The release artifacts are available for immediate download at
https://github.com/asterisk/asterisk/releases/tag/certified-18.9-cert8-rc2
and
https://downloads.asterisk.org/pub/telephony/certified-asterisk

Repository: https://github.com/asterisk/asterisk
Tag: certified-18.9-cert8-rc2

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

Thank You!

Change Log for Release asterisk-certified-18.9-cert8-rc2

Links:

Summary:

  • Rename dialplan_functions.xml to dialplan_functions_doc.xml
  • openssl: Supress deprecation warnings from OpenSSL 3.0

User Notes:

Upgrade Notes:

Closed Issues:

None

asterisk - Asterisk Release certified-18.9-cert8-rc1

Published by asterisk-org-access-app[bot] 8 months ago

The Asterisk Development Team would like to announce
release candidate 1 of Certified asterisk-18.9-cert8.

The release artifacts are available for immediate download at
https://github.com/asterisk/asterisk/releases/tag/certified-18.9-cert8-rc1
and
https://downloads.asterisk.org/pub/telephony/certified-asterisk

Repository: https://github.com/asterisk/asterisk
Tag: certified-18.9-cert8-rc1

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

Thank You!

Change Log for Release asterisk-certified-18.9-cert8-rc1

Links:

Summary:

  • .github: Add force_cherry_pick option to Releaser
  • .github: Remove start_version from Releaser
  • app_chanspy: Add 'D' option for dual-channel audio
  • .github: Update github-script to v7 and fix a rest bug
  • manager.c: Fix regression due to using wrong free function.
  • doc: Remove obsolete CHANGES-staging directrory
  • MergeApproved.yml: Remove unneeded concurrency
  • SECURITY.md: Update with correct documentation URL
  • chan_pjsip: Add PJSIPHangup dialplan app and manager action
  • Remove files that are no longer updated
  • res_speech: allow speech to translate input channel
  • .github: PRSubmitActions: Fix adding reviewers to PR
  • .github: New PR Submit workflows
  • .github: New PR Submit workflows
  • res_stasis: signal when new command is queued
  • logger.h: Add ability to change the prefix on SCOPE_TRACE output
  • .github: Fix job prereqs in PROpenedUpdated
  • .github: Block PR tests until approved
  • Add libjwt to third-party
  • res_pjsip: update qualify_timeout documentation with DNS note
  • lock.c: Separate DETECT_DEADLOCKS from DEBUG_THREADS
  • cel: add publish user event helper
  • file.c: Add ability to search custom dir for sounds
  • make_buildopts_h, et. al. Allow adding all cflags to buildopts.h
  • func_periodic_hook: Add hangup step to avoid timeout
  • func_periodic_hook: Don't truncate channel name
  • safe_asterisk: Change directory permissions to 755
  • variables: Add additional variable dialplan functions.
  • ari-stubs: Fix more local anchor references
  • ari-stubs: Fix more local anchor references
  • ari-stubs: Fix broken documentation anchors
  • rest-api: Updates for new documentation site
  • .github: Update workflow-application-token-action to v2
  • app_voicemail: Fix for loop declarations
  • download_externals: Fix a few version related issues
  • Remove .lastclean and .version from source control
  • .github: Use generic releaser
  • manager: Tolerate stasis messages with no channel snapshot.
  • audiohook: Unlock channel in mute if no audiohooks present.
  • app_queue: Add support for applying caller priority change immediately.
  • .github: Fix cherry-pick reminder issues
  • app.h: Move declaration of ast_getdata_result before its first use
  • doc: Remove obsolete CHANGES-staging and UPGRADE-staging
  • res_geolocation: Ensure required 'location_info' is present.
  • Adds manager actions to allow move/remove/forward individual messages in a par..
  • app_voicemail: add CLI commands for message manipulation
  • .github: Minor tweak to Asterisk Releaser
  • .github: Suppress cherry-pick reminder for some situations
  • Cleanup deleted files

User Notes:

  • 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_pjsip: Add PJSIPHangup dialplan app and manager action

    A new dialplan app PJSIPHangup and AMI action allows you
    to hang up an unanswered incoming PJSIP call with a specific SIP
    response code in the 400 -> 699 range.

  • res_speech: allow speech to translate input channel

    res_speech now supports translation of an input channel
    to a format supported by the speech provider, provided a translation
    path is available between the source format and provider capabilites.

  • res_stasis: signal when new command is queued

    Call setup times should be significantly improved
    when using ARI.

  • lock.c: Separate DETECT_DEADLOCKS from DEBUG_THREADS

    You no longer need to select DEBUG_THREADS to use
    DETECT_DEADLOCKS. This removes a significant amount of overhead
    if you just want to detect possible deadlocks vs needing full
    lock tracing.

  • file.c: Add ability to search custom dir for sounds

    A new option "sounds_search_custom_dir" has been added to
    asterisk.conf that allows asterisk to search
    AST_DATA_DIR/sounds/custom for sounds files before searching the
    standard AST_DATA_DIR/sounds/ directory.

  • make_buildopts_h, et. al. Allow adding all cflags to buildopts.h

    The "Build Options" entry in the "core show settings"
    CLI command has been renamed to "ABI related Build Options" and
    a new entry named "All Build Options" has been added that shows
    both breaking and non-breaking options.

  • variables: Add additional variable dialplan functions.

    Four new dialplan functions have been added.
    GLOBAL_DELETE and DELETE have been added which allows
    the deletion of global and channel variables.
    GLOBAL_EXISTS and VARIABLE_EXISTS have been added
    which checks whether a global or channel variable has
    been set.

  • app_queue: Add support for applying caller priority change immediately.

    The 'queue priority caller' CLI command and
    'QueueChangePriorityCaller' AMI action now have an 'immediate'
    argument which allows the caller priority change to be reflected
    immediately, causing the position of a caller to move within the
    queue depending on the priorities of the other callers.

  • Adds manager actions to allow move/remove/forward individual messages in a par..

    The following manager actions have been added
    VoicemailBoxSummary - Generate message list for a given mailbox
    VoicemailRemove - Remove a message from a mailbox folder
    VoicemailMove - Move a message from one folder to another within a mailbox
    VoicemailForward - Copy a message from one folder in one mailbox
    to another folder in another or the same mailbox.

  • app_voicemail: add CLI commands for message manipulation

    The following CLI commands have been added to app_voicemail
    voicemail show mailbox
    Show contents of mailbox @
    voicemail remove <from_folder>
    Remove message from <from_folder> in mailbox @
    voicemail move <from_folder> <to_folder>
    Move message in mailbox & from <from_folder> to <to_folder>
    voicemail forward <from_mailbox> <from_context> <from_folder> <to_mailbox> <to_context> <to_folder>
    Forward message in mailbox @ <from_folder> to
    mailbox @ <to_folder>

Upgrade Notes:

Closed Issues:

  • #129: [bug]: res_speech_aeap: Crash due to NULL format on setup
  • #170: [improvement]: app_voicemail - add CLI commands to manipulate messages
  • #181: [improvement]: app_voicemail - add manager actions to display and manipulate messages
  • #200: [bug]: Regression: In app.h an enum is used before its declaration.
  • #202: [improvement]: app_queue: Add support for immediately applying queue caller priority change
  • #233: [bug]: Deadlock with MixMonitorMute AMI action
  • #263: [bug]: download_externals doesn't always handle versions correctly
  • #275: [bug]:Asterisk make now requires ASTCFLAGS='-std=gnu99 -Wdeclaration-after-statement'
  • #289: [new-feature]: Add support for deleting channel and global variables
  • #315: [improvement]: Search /var/lib/asterisk/sounds/custom for sound files before /var/lib/asterisk/sounds/
  • #316: [bug]: Privilege Escalation in Astrisk's Group permissions.
  • #319: [bug]: func_periodic_hook truncates long channel names when setting EncodedChannel
  • #321: [bug]: Performance suffers unnecessarily when debugging deadlocks
  • #325: [bug]: hangup after beep to avoid waiting for timeout
  • #330: [improvement]: Add cel user event helper function
  • #349: [improvement]: Add libjwt to third-party
  • #352: [bug]: Update qualify_timeout documentation to include DNS note
  • #360: [improvement]: Update documentation for CHANGES/UPGRADE files
  • #362: [improvement]: Speed up ARI command processing
  • #513: [bug]: manager.c: Crash due to regression using wrong free function when built with MALLOC_DEBUG
  • #569: [improvement]: Add option to interleave input and output frames on spied channel
asterisk - Asterisk Release 21.1.0

Published by asterisk-org-access-app[bot] 9 months ago

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

The release artifacts are available for immediate download at
https://github.com/asterisk/asterisk/releases/tag/21.1.0
and
https://downloads.asterisk.org/pub/telephony/asterisk

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

Thank You!

Change Log for Release asterisk-21.1.0

Links:

Summary:

  • logger: Fix linking regression.
  • Revert "core & res_pjsip: Improve topology change handling."
  • menuselect: Use more specific error message.
  • res_pjsip_nat: Fix potential use of uninitialized transport details
  • app_if: Fix faulty EndIf branching.
  • manager.c: Fix regression due to using wrong free function.
  • doc: Remove obsolete CHANGES-staging and UPGRADE-staging directories
  • config_options.c: Fix truncation of option descriptions.
  • manager.c: Improve clarity of "manager show connected".
  • make_xml_documentation: Really collect LOCAL_MOD_SUBDIRS documentation.
  • general: Fix broken links.
  • MergeApproved.yml: Remove unneeded concurrency
  • app_dial: Add option "j" to preserve initial stream topology of caller
  • pbx_config.c: Don't crash when unloading module.
  • ast_coredumper: Increase reliability
  • logger.c: Move LOG_GROUP documentation to dedicated XML file.
  • res_odbc.c: Allow concurrent access to request odbc connections
  • res_pjsip_header_funcs.c: Check URI parameter length before copying.
  • config.c: Log #exec include failures.
  • make_xml_documentation: Properly handle absolute LOCAL_MOD_SUBDIRS.
  • app_voicemail.c: Completely resequence mailbox folders.
  • sig_analog: Fix channel leak when mwimonitor is enabled.
  • res_rtp_asterisk.c: Update for OpenSSL 3+.
  • alembic: Update list of TLS methods available on ps_transports.
  • func_channel: Expose previously unsettable options.
  • app.c: Allow ampersands in playback lists to be escaped.
  • uri.c: Simplify ast_uri_make_host_with_port()
  • func_curl.c: Remove CURLOPT() plaintext documentation.
  • res_http_websocket.c: Set hostname on client for certificate validation.
  • live_ast: Add astcachedir to generated asterisk.conf.
  • SECURITY.md: Update with correct documentation URL
  • func_lock: Add missing see-also refs to documentation.
  • app_followme.c: Grab reference on nativeformats before using it
  • configs: Improve documentation for bandwidth in iax.conf.
  • logger: Add channel-based filtering.
  • chan_iax2.c: Don't send unsanitized data to the logger.
  • codec_ilbc: Disable system ilbc if version >= 3.0.0
  • resource_channels.c: Explicit codec request when creating UnicastRTP.
  • doc: Update IP Quality of Service links.
  • chan_pjsip: Add PJSIPHangup dialplan app and manager action
  • chan_iax2.c: Ensure all IEs are displayed when dumping frame contents.
  • chan_dahdi: Warn if nonexistent cadence is requested.
  • stasis: Update the snapshot after setting the redirect
  • ari: Provide the caller ID RDNIS for the channels
  • main/utils: Implement ast_get_tid() for OpenBSD
  • res_rtp_asterisk.c: Fix runtime issue with LibreSSL
  • app_directory: Add ADSI support to Directory.
  • core_local: Fix local channel parsing with slashes.
  • Remove files that are no longer updated
  • app_voicemail: Add AMI event for mailbox PIN changes.
  • app_queue.c: Emit unpause reason with PauseQueueMember event.
  • bridge_simple: Suppress unchanged topology change requests
  • res_pjsip: Include cipher limit in config error message.
  • res_speech: allow speech to translate input channel
  • res_rtp_asterisk.c: Fix memory leak in ephemeral certificate creation.
  • res_pjsip_dtmf_info.c: Add 'INFO' to Allow header.
  • api.wiki.mustache: Fix indentation in generated markdown
  • pjsip_configuration.c: Disable DTLS renegotiation if WebRTC is enabled.
  • configs: Fix typo in pjsip.conf.sample.
  • res_pjsip_exten_state,res_pjsip_mwi: Allow unload on shutdown
  • res_pjsip: Expanding PJSIP endpoint ID and relevant resource length to 255 characters
  • .github: PRSubmitActions: Fix adding reviewers to PR
  • .github: New PR Submit workflows
  • .github: New PR Submit workflows
  • res_stasis: signal when new command is queued
  • ari/stasis: Indicate progress before playback on a bridge
  • func_curl.c: Ensure channel is locked when manipulating datastores.
  • .github: Fix job prereqs in PROpenedUpdated
  • .github: Block PR tests until approved
  • .github: Use generic releaser
  • logger.h: Add ability to change the prefix on SCOPE_TRACE output
  • Add libjwt to third-party
  • res_pjsip: update qualify_timeout documentation with DNS note
  • chan_dahdi: Clarify scope of callgroup/pickupgroup.
  • func_json: Fix crashes for some types
  • res_speech_aeap: add aeap error handling
  • app_voicemail: Disable ADSI if unavailable.
  • codec_builtin: Use multiples of 20 for maximum_ms
  • lock.c: Separate DETECT_DEADLOCKS from DEBUG_THREADS
  • asterisk.c: Use the euid's home directory to read/write cli history
  • res_pjsip_transport_websocket: Prevent transport from being destroyed before message finishes.
  • cel: add publish user event helper
  • chan_console: Fix deadlock caused by unclean thread exit.
  • file.c: Add ability to search custom dir for sounds
  • chan_iax2: Improve authentication debugging.
  • res_rtp_asterisk: fix wrong counter management in ioqueue objects
  • res_pjsip_pubsub: Add body_type to test_handler for unit tests
  • make_buildopts_h, et. al. Allow adding all cflags to buildopts.h
  • func_periodic_hook: Add hangup step to avoid timeout
  • res_stasis_recording.c: Save recording state when unmuted.
  • res_speech_aeap: check for null format on response
  • func_periodic_hook: Don't truncate channel name
  • safe_asterisk: Change directory permissions to 755
  • chan_rtp: Implement RTP glue for UnicastRTP channels
  • app_queue: periodic announcement configurable start time.
  • variables: Add additional variable dialplan functions.
  • Restore CHANGES and UPGRADE.txt to allow cherry-picks to work

User Notes:

  • app_dial: Add option "j" to preserve initial stream topology of caller

    The option "j" is now available for the Dial application which
    uses the initial stream topology of the caller to create the outgoing
    channels.

  • logger: Add channel-based filtering.

    The console log can now be filtered by
    channels or groups of channels, using the
    logger filter CLI commands.

  • chan_pjsip: Add PJSIPHangup dialplan app and manager action

    A new dialplan app PJSIPHangup and AMI action allows you
    to hang up an unanswered incoming PJSIP call with a specific SIP
    response code in the 400 -> 699 range.

  • app_voicemail: Add AMI event for mailbox PIN changes.

    The VoicemailPasswordChange event is
    now emitted whenever a mailbox password is updated,
    containing the mailbox information and the new
    password.
    Resolves: #398

  • res_speech: allow speech to translate input channel

    res_speech now supports translation of an input channel
    to a format supported by the speech provider, provided a translation
    path is available between the source format and provider capabilites.

  • res_pjsip: Expanding PJSIP endpoint ID and relevant resource length to 255 characters

    With this update, the PJSIP realm lengths have been extended
    to support up to 255 characters.

  • res_stasis: signal when new command is queued

    Call setup times should be significantly improved
    when using ARI.

  • lock.c: Separate DETECT_DEADLOCKS from DEBUG_THREADS

    You no longer need to select DEBUG_THREADS to use
    DETECT_DEADLOCKS. This removes a significant amount of overhead
    if you just want to detect possible deadlocks vs needing full
    lock tracing.

  • file.c: Add ability to search custom dir for sounds

    A new option "sounds_search_custom_dir" has been added to
    asterisk.conf that allows asterisk to search
    AST_DATA_DIR/sounds/custom for sounds files before searching the
    standard AST_DATA_DIR/sounds/ directory.

  • make_buildopts_h, et. al. Allow adding all cflags to buildopts.h

    The "Build Options" entry in the "core show settings"
    CLI command has been renamed to "ABI related Build Options" and
    a new entry named "All Build Options" has been added that shows
    both breaking and non-breaking options.

  • chan_rtp: Implement RTP glue for UnicastRTP channels

    The dial string option 'g' was added to the UnicastRTP channel
    which enables RTP glue and therefore native RTP bridges with those
    channels.

  • app_queue: periodic announcement configurable start time.

    Introduce a new queue configuration option called
    'periodic-announce-startdelay' which will vary the normal (historic)
    behavior of starting the periodic announcement cycle at
    periodic-announce-frequency seconds after entering the queue to start
    the periodic announcement cycle at period-announce-startdelay seconds
    after joining the queue. The default behavior if this config option is
    not set remains unchanged.
    Signed-off-by: Jaco Kroon [email protected]

  • variables: Add additional variable dialplan functions.

    Four new dialplan functions have been added.
    GLOBAL_DELETE and DELETE have been added which allows
    the deletion of global and channel variables.
    GLOBAL_EXISTS and VARIABLE_EXISTS have been added
    which checks whether a global or channel variable has
    been set.

Upgrade Notes:

  • app.c: Allow ampersands in playback lists to be escaped.

    Ampersands in URLs passed to the Playback(),
    Background(), SpeechBackground(), Read(), Authenticate(), or
    Queue() applications as filename arguments can now be escaped by
    single quoting the filename. Additionally, this is also possible when
    using the CONFBRIDGE dialplan function, or configuring various
    features in confbridge.conf and queues.conf.

  • pjsip_configuration.c: Disable DTLS renegotiation if WebRTC is enabled.

    The dtls_rekey will be disabled if webrtc support is
    requested on an endpoint. A warning will also be emitted.

  • res_pjsip: Expanding PJSIP endpoint ID and relevant resource length to 255 characters

    As part of this update, the maximum allowable length
    for PJSIP endpoints and relevant resources has been increased from
    40 to 255 characters. To take advantage of this enhancement, it is
    recommended to run the necessary procedures (e.g., Alembic) to
    update your schemas.

Closed Issues:

  • #84: [bug]: codec_ilbc: Fails to build with ilbc version 3.0.4
  • #129: [bug]: res_speech_aeap: Crash due to NULL format on setup
  • #242: [new-feature]: logger: Allow filtering logs in CLI by channel
  • #248: [bug]: core_local: Local channels cannot have slashes in the destination
  • #260: [bug]: maxptime must be changed to multiples of 20
  • #286: [improvement]: chan_iax2: Improve authentication debugging
  • #289: [new-feature]: Add support for deleting channel and global variables
  • #294: [improvement]: chan_dahdi: Improve call pickup documentation
  • #298: [improvement]: chan_rtp: Implement RTP glue
  • #301: [bug]: Number of ICE TURN threads continually growing
  • #303: [bug]: SpeechBackground never exits
  • #308: [bug]: chan_console: Deadlock when hanging up console channels
  • #315: [improvement]: Search /var/lib/asterisk/sounds/custom for sound files before /var/lib/asterisk/sounds/
  • #316: [bug]: Privilege Escalation in Astrisk's Group permissions.
  • #319: [bug]: func_periodic_hook truncates long channel names when setting EncodedChannel
  • #321: [bug]: Performance suffers unnecessarily when debugging deadlocks
  • #325: [bug]: hangup after beep to avoid waiting for timeout
  • #330: [improvement]: Add cel user event helper function
  • #335: [bug]: res_pjsip_pubsub: The bad_event unit test causes a SEGV in build_resource_tree
  • #337: [bug]: asterisk.c: The CLI history file is written to the wrong directory in some cases
  • #341: [bug]: app_if.c : nested EndIf incorrectly exits parent If
  • #345: [improvement]: Increase pj_sip Realm Size to 255 Characters for Improved Functionality
  • #349: [improvement]: Add libjwt to third-party
  • #352: [bug]: Update qualify_timeout documentation to include DNS note
  • #354: [improvement]: app_voicemail: Disable ADSI if unavailable on a line
  • #356: [new-feature]: app_directory: Add ADSI support.
  • #360: [improvement]: Update documentation for CHANGES/UPGRADE files
  • #362: [improvement]: Speed up ARI command processing
  • #379: [bug]: Orphaned taskprocessors cause shutdown delays
  • #384: [bug]: Unnecessary re-INVITE after answer
  • #388: [bug]: Crash in app_followme.c due to not acquiring a reference to nativeformats
  • #396: [improvement]: res_pjsip: Specify max ciphers allowed if too many provided
  • #398: [new-feature]: app_voicemail: Add AMI event for password change
  • #409: [improvement]: chan_dahdi: Emit warning if specifying nonexistent cadence
  • #423: [improvement]: func_lock: Add missing see-also refs
  • #425: [improvement]: configs: Improve documentation for bandwidth in iax.conf.sample
  • #428: [bug]: cli: Output is truncated from "config show help"
  • #430: [bug]: Fix broken links
  • #442: [bug]: func_channel: Some channel options are not settable
  • #445: [bug]: ast_coredumper isn't figuring out file locations properly in all cases
  • #458: [bug]: Memory leak in chan_dahdi when mwimonitor=yes on FXO
  • #462: [new-feature]: app_dial: Add new option to preserve initial stream topology of caller
  • #465: [improvement]: Change res_odbc connection pool request logic to not lock around blocking operations
  • #482: [improvement]: manager.c: Improve clarity of "manager show connected" output
  • #509: [bug]: res_pjsip: Crash when looking up transport state in use
  • #513: [bug]: manager.c: Crash due to regression using wrong free function when built with MALLOC_DEBUG
  • #520: [improvement]: menuselect: Use more specific error message.
  • #530: [bug]: bridge_channel.c: Stream topology change amplification with multiple layers of Local channels
  • #539: [bug]: Existence of logger.xml causes linking failure
asterisk - Asterisk Release 20.6.0

Published by asterisk-org-access-app[bot] 9 months ago

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

The release artifacts are available for immediate download at
https://github.com/asterisk/asterisk/releases/tag/20.6.0
and
https://downloads.asterisk.org/pub/telephony/asterisk

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.6.0

Links:

Summary:

  • logger: Fix linking regression.
  • Revert "core & res_pjsip: Improve topology change handling."
  • menuselect: Use more specific error message.
  • res_pjsip_nat: Fix potential use of uninitialized transport details
  • app_if: Fix faulty EndIf branching.
  • manager.c: Fix regression due to using wrong free function.
  • config_options.c: Fix truncation of option descriptions.
  • manager.c: Improve clarity of "manager show connected".
  • make_xml_documentation: Really collect LOCAL_MOD_SUBDIRS documentation.
  • general: Fix broken links.
  • MergeApproved.yml: Remove unneeded concurrency
  • app_dial: Add option "j" to preserve initial stream topology of caller
  • ast_coredumper: Increase reliability
  • logger.c: Move LOG_GROUP documentation to dedicated XML file.
  • res_odbc.c: Allow concurrent access to request odbc connections
  • res_pjsip_header_funcs.c: Check URI parameter length before copying.
  • config.c: Log #exec include failures.
  • make_xml_documentation: Properly handle absolute LOCAL_MOD_SUBDIRS.
  • app_voicemail.c: Completely resequence mailbox folders.
  • sig_analog: Fix channel leak when mwimonitor is enabled.
  • res_rtp_asterisk.c: Update for OpenSSL 3+.
  • alembic: Update list of TLS methods available on ps_transports.
  • func_channel: Expose previously unsettable options.
  • app.c: Allow ampersands in playback lists to be escaped.
  • uri.c: Simplify ast_uri_make_host_with_port()
  • func_curl.c: Remove CURLOPT() plaintext documentation.
  • res_http_websocket.c: Set hostname on client for certificate validation.
  • live_ast: Add astcachedir to generated asterisk.conf.
  • SECURITY.md: Update with correct documentation URL
  • func_lock: Add missing see-also refs to documentation.
  • app_followme.c: Grab reference on nativeformats before using it
  • configs: Improve documentation for bandwidth in iax.conf.
  • logger: Add channel-based filtering.
  • chan_iax2.c: Don't send unsanitized data to the logger.
  • codec_ilbc: Disable system ilbc if version >= 3.0.0
  • resource_channels.c: Explicit codec request when creating UnicastRTP.
  • doc: Update IP Quality of Service links.
  • chan_pjsip: Add PJSIPHangup dialplan app and manager action
  • chan_iax2.c: Ensure all IEs are displayed when dumping frame contents.
  • chan_dahdi: Warn if nonexistent cadence is requested.
  • stasis: Update the snapshot after setting the redirect
  • ari: Provide the caller ID RDNIS for the channels
  • main/utils: Implement ast_get_tid() for OpenBSD
  • res_rtp_asterisk.c: Fix runtime issue with LibreSSL
  • app_directory: Add ADSI support to Directory.
  • core_local: Fix local channel parsing with slashes.
  • Remove files that are no longer updated
  • app_voicemail: Add AMI event for mailbox PIN changes.
  • app_queue.c: Emit unpause reason with PauseQueueMember event.
  • bridge_simple: Suppress unchanged topology change requests
  • res_pjsip: Include cipher limit in config error message.
  • res_speech: allow speech to translate input channel
  • res_rtp_asterisk.c: Fix memory leak in ephemeral certificate creation.
  • res_pjsip_dtmf_info.c: Add 'INFO' to Allow header.
  • api.wiki.mustache: Fix indentation in generated markdown
  • pjsip_configuration.c: Disable DTLS renegotiation if WebRTC is enabled.
  • configs: Fix typo in pjsip.conf.sample.
  • res_pjsip_exten_state,res_pjsip_mwi: Allow unload on shutdown
  • res_pjsip: Expanding PJSIP endpoint ID and relevant resource length to 255 characters
  • .github: PRSubmitActions: Fix adding reviewers to PR
  • .github: New PR Submit workflows
  • .github: New PR Submit workflows
  • res_stasis: signal when new command is queued
  • ari/stasis: Indicate progress before playback on a bridge
  • func_curl.c: Ensure channel is locked when manipulating datastores.
  • .github: Fix job prereqs in PROpenedUpdated
  • .github: Block PR tests until approved
  • Update config.yml
  • logger.h: Add ability to change the prefix on SCOPE_TRACE output
  • Add libjwt to third-party
  • res_pjsip: update qualify_timeout documentation with DNS note
  • chan_dahdi: Clarify scope of callgroup/pickupgroup.
  • func_json: Fix crashes for some types
  • res_speech_aeap: add aeap error handling
  • app_voicemail: Disable ADSI if unavailable.
  • codec_builtin: Use multiples of 20 for maximum_ms
  • lock.c: Separate DETECT_DEADLOCKS from DEBUG_THREADS
  • asterisk.c: Use the euid's home directory to read/write cli history
  • res_pjsip_transport_websocket: Prevent transport from being destroyed before message finishes.
  • cel: add publish user event helper
  • chan_console: Fix deadlock caused by unclean thread exit.
  • file.c: Add ability to search custom dir for sounds
  • chan_iax2: Improve authentication debugging.
  • res_rtp_asterisk: fix wrong counter management in ioqueue objects
  • make_buildopts_h, et. al. Allow adding all cflags to buildopts.h
  • func_periodic_hook: Add hangup step to avoid timeout
  • res_stasis_recording.c: Save recording state when unmuted.
  • res_speech_aeap: check for null format on response
  • func_periodic_hook: Don't truncate channel name
  • safe_asterisk: Change directory permissions to 755
  • chan_rtp: Implement RTP glue for UnicastRTP channels
  • app_queue: periodic announcement configurable start time.
  • variables: Add additional variable dialplan functions.
  • Restore CHANGES and UPGRADE.txt to allow cherry-picks to work

User Notes:

  • app_dial: Add option "j" to preserve initial stream topology of caller

    The option "j" is now available for the Dial application which
    uses the initial stream topology of the caller to create the outgoing
    channels.

  • logger: Add channel-based filtering.

    The console log can now be filtered by
    channels or groups of channels, using the
    logger filter CLI commands.

  • chan_pjsip: Add PJSIPHangup dialplan app and manager action

    A new dialplan app PJSIPHangup and AMI action allows you
    to hang up an unanswered incoming PJSIP call with a specific SIP
    response code in the 400 -> 699 range.

  • app_voicemail: Add AMI event for mailbox PIN changes.

    The VoicemailPasswordChange event is
    now emitted whenever a mailbox password is updated,
    containing the mailbox information and the new
    password.
    Resolves: #398

  • res_speech: allow speech to translate input channel

    res_speech now supports translation of an input channel
    to a format supported by the speech provider, provided a translation
    path is available between the source format and provider capabilites.

  • res_pjsip: Expanding PJSIP endpoint ID and relevant resource length to 255 characters

    With this update, the PJSIP realm lengths have been extended
    to support up to 255 characters.

  • res_stasis: signal when new command is queued

    Call setup times should be significantly improved
    when using ARI.

  • lock.c: Separate DETECT_DEADLOCKS from DEBUG_THREADS

    You no longer need to select DEBUG_THREADS to use
    DETECT_DEADLOCKS. This removes a significant amount of overhead
    if you just want to detect possible deadlocks vs needing full
    lock tracing.

  • file.c: Add ability to search custom dir for sounds

    A new option "sounds_search_custom_dir" has been added to
    asterisk.conf that allows asterisk to search
    AST_DATA_DIR/sounds/custom for sounds files before searching the
    standard AST_DATA_DIR/sounds/ directory.

  • make_buildopts_h, et. al. Allow adding all cflags to buildopts.h

    The "Build Options" entry in the "core show settings"
    CLI command has been renamed to "ABI related Build Options" and
    a new entry named "All Build Options" has been added that shows
    both breaking and non-breaking options.

  • chan_rtp: Implement RTP glue for UnicastRTP channels

    The dial string option 'g' was added to the UnicastRTP channel
    which enables RTP glue and therefore native RTP bridges with those
    channels.

  • app_queue: periodic announcement configurable start time.

    Introduce a new queue configuration option called
    'periodic-announce-startdelay' which will vary the normal (historic)
    behavior of starting the periodic announcement cycle at
    periodic-announce-frequency seconds after entering the queue to start
    the periodic announcement cycle at period-announce-startdelay seconds
    after joining the queue. The default behavior if this config option is
    not set remains unchanged.
    Signed-off-by: Jaco Kroon [email protected]

  • variables: Add additional variable dialplan functions.

    Four new dialplan functions have been added.
    GLOBAL_DELETE and DELETE have been added which allows
    the deletion of global and channel variables.
    GLOBAL_EXISTS and VARIABLE_EXISTS have been added
    which checks whether a global or channel variable has
    been set.

Upgrade Notes:

  • app.c: Allow ampersands in playback lists to be escaped.

    Ampersands in URLs passed to the Playback(),
    Background(), SpeechBackground(), Read(), Authenticate(), or
    Queue() applications as filename arguments can now be escaped by
    single quoting the filename. Additionally, this is also possible when
    using the CONFBRIDGE dialplan function, or configuring various
    features in confbridge.conf and queues.conf.

  • pjsip_configuration.c: Disable DTLS renegotiation if WebRTC is enabled.

    The dtls_rekey will be disabled if webrtc support is
    requested on an endpoint. A warning will also be emitted.

  • res_pjsip: Expanding PJSIP endpoint ID and relevant resource length to 255 characters

    As part of this update, the maximum allowable length
    for PJSIP endpoints and relevant resources has been increased from
    40 to 255 characters. To take advantage of this enhancement, it is
    recommended to run the necessary procedures (e.g., Alembic) to
    update your schemas.

Closed Issues:

  • #84: [bug]: codec_ilbc: Fails to build with ilbc version 3.0.4
  • #129: [bug]: res_speech_aeap: Crash due to NULL format on setup
  • #242: [new-feature]: logger: Allow filtering logs in CLI by channel
  • #248: [bug]: core_local: Local channels cannot have slashes in the destination
  • #260: [bug]: maxptime must be changed to multiples of 20
  • #286: [improvement]: chan_iax2: Improve authentication debugging
  • #289: [new-feature]: Add support for deleting channel and global variables
  • #294: [improvement]: chan_dahdi: Improve call pickup documentation
  • #298: [improvement]: chan_rtp: Implement RTP glue
  • #301: [bug]: Number of ICE TURN threads continually growing
  • #303: [bug]: SpeechBackground never exits
  • #308: [bug]: chan_console: Deadlock when hanging up console channels
  • #315: [improvement]: Search /var/lib/asterisk/sounds/custom for sound files before /var/lib/asterisk/sounds/
  • #316: [bug]: Privilege Escalation in Astrisk's Group permissions.
  • #319: [bug]: func_periodic_hook truncates long channel names when setting EncodedChannel
  • #321: [bug]: Performance suffers unnecessarily when debugging deadlocks
  • #325: [bug]: hangup after beep to avoid waiting for timeout
  • #330: [improvement]: Add cel user event helper function
  • #337: [bug]: asterisk.c: The CLI history file is written to the wrong directory in some cases
  • #341: [bug]: app_if.c : nested EndIf incorrectly exits parent If
  • #345: [improvement]: Increase pj_sip Realm Size to 255 Characters for Improved Functionality
  • #349: [improvement]: Add libjwt to third-party
  • #352: [bug]: Update qualify_timeout documentation to include DNS note
  • #354: [improvement]: app_voicemail: Disable ADSI if unavailable on a line
  • #356: [new-feature]: app_directory: Add ADSI support.
  • #360: [improvement]: Update documentation for CHANGES/UPGRADE files
  • #362: [improvement]: Speed up ARI command processing
  • #379: [bug]: Orphaned taskprocessors cause shutdown delays
  • #384: [bug]: Unnecessary re-INVITE after answer
  • #388: [bug]: Crash in app_followme.c due to not acquiring a reference to nativeformats
  • #396: [improvement]: res_pjsip: Specify max ciphers allowed if too many provided
  • #398: [new-feature]: app_voicemail: Add AMI event for password change
  • #409: [improvement]: chan_dahdi: Emit warning if specifying nonexistent cadence
  • #423: [improvement]: func_lock: Add missing see-also refs
  • #425: [improvement]: configs: Improve documentation for bandwidth in iax.conf.sample
  • #428: [bug]: cli: Output is truncated from "config show help"
  • #430: [bug]: Fix broken links
  • #442: [bug]: func_channel: Some channel options are not settable
  • #445: [bug]: ast_coredumper isn't figuring out file locations properly in all cases
  • #458: [bug]: Memory leak in chan_dahdi when mwimonitor=yes on FXO
  • #462: [new-feature]: app_dial: Add new option to preserve initial stream topology of caller
  • #465: [improvement]: Change res_odbc connection pool request logic to not lock around blocking operations
  • #482: [improvement]: manager.c: Improve clarity of "manager show connected" output
  • #509: [bug]: res_pjsip: Crash when looking up transport state in use
  • #513: [bug]: manager.c: Crash due to regression using wrong free function when built with MALLOC_DEBUG
  • #520: [improvement]: menuselect: Use more specific error message.
  • #530: [bug]: bridge_channel.c: Stream topology change amplification with multiple layers of Local channels
  • #539: [bug]: Existence of logger.xml causes linking failure
asterisk - Asterisk Release 18.21.0

Published by asterisk-org-access-app[bot] 9 months ago

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

The release artifacts are available for immediate download at
https://github.com/asterisk/asterisk/releases/tag/18.21.0
and
https://downloads.asterisk.org/pub/telephony/asterisk

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

Thank You!

Change Log for Release asterisk-18.21.0

Links:

Summary:

  • logger: Fix linking regression.
  • Revert "core & res_pjsip: Improve topology change handling."
  • menuselect: Use more specific error message.
  • res_pjsip_nat: Fix potential use of uninitialized transport details
  • app_if: Fix faulty EndIf branching.
  • manager.c: Fix regression due to using wrong free function.
  • config_options.c: Fix truncation of option descriptions.
  • manager.c: Improve clarity of "manager show connected".
  • make_xml_documentation: Really collect LOCAL_MOD_SUBDIRS documentation.
  • general: Fix broken links.
  • MergeApproved.yml: Remove unneeded concurrency
  • app_dial: Add option "j" to preserve initial stream topology of caller
  • ast_coredumper: Increase reliability
  • logger.c: Move LOG_GROUP documentation to dedicated XML file.
  • res_odbc.c: Allow concurrent access to request odbc connections
  • res_pjsip_header_funcs.c: Check URI parameter length before copying.
  • config.c: Log #exec include failures.
  • make_xml_documentation: Properly handle absolute LOCAL_MOD_SUBDIRS.
  • app_voicemail.c: Completely resequence mailbox folders.
  • sig_analog: Fix channel leak when mwimonitor is enabled.
  • res_rtp_asterisk.c: Update for OpenSSL 3+.
  • alembic: Update list of TLS methods available on ps_transports.
  • func_channel: Expose previously unsettable options.
  • app.c: Allow ampersands in playback lists to be escaped.
  • uri.c: Simplify ast_uri_make_host_with_port()
  • func_curl.c: Remove CURLOPT() plaintext documentation.
  • res_http_websocket.c: Set hostname on client for certificate validation.
  • live_ast: Add astcachedir to generated asterisk.conf.
  • SECURITY.md: Update with correct documentation URL
  • func_lock: Add missing see-also refs to documentation.
  • app_followme.c: Grab reference on nativeformats before using it
  • configs: Improve documentation for bandwidth in iax.conf.
  • logger: Add channel-based filtering.
  • chan_iax2.c: Don't send unsanitized data to the logger.
  • codec_ilbc: Disable system ilbc if version >= 3.0.0
  • resource_channels.c: Explicit codec request when creating UnicastRTP.
  • doc: Update IP Quality of Service links.
  • chan_pjsip: Add PJSIPHangup dialplan app and manager action
  • chan_iax2.c: Ensure all IEs are displayed when dumping frame contents.
  • chan_dahdi: Warn if nonexistent cadence is requested.
  • stasis: Update the snapshot after setting the redirect
  • ari: Provide the caller ID RDNIS for the channels
  • main/utils: Implement ast_get_tid() for OpenBSD
  • res_rtp_asterisk.c: Fix runtime issue with LibreSSL
  • app_directory: Add ADSI support to Directory.
  • core_local: Fix local channel parsing with slashes.
  • Remove files that are no longer updated
  • app_voicemail: Add AMI event for mailbox PIN changes.
  • app_queue.c: Emit unpause reason with PauseQueueMember event.
  • bridge_simple: Suppress unchanged topology change requests
  • res_pjsip: Include cipher limit in config error message.
  • res_speech: allow speech to translate input channel
  • res_rtp_asterisk.c: Fix memory leak in ephemeral certificate creation.
  • res_pjsip_dtmf_info.c: Add 'INFO' to Allow header.
  • api.wiki.mustache: Fix indentation in generated markdown
  • pjsip_configuration.c: Disable DTLS renegotiation if WebRTC is enabled.
  • configs: Fix typo in pjsip.conf.sample.
  • res_pjsip_exten_state,res_pjsip_mwi: Allow unload on shutdown
  • res_pjsip: Expanding PJSIP endpoint ID and relevant resource length to 255 characters
  • .github: PRSubmitActions: Fix adding reviewers to PR
  • .github: New PR Submit workflows
  • .github: New PR Submit workflows
  • res_stasis: signal when new command is queued
  • ari/stasis: Indicate progress before playback on a bridge
  • func_curl.c: Ensure channel is locked when manipulating datastores.
  • .github: Fix job prereqs in PROpenedUpdated
  • .github: Block PR tests until approved
  • logger.h: Add ability to change the prefix on SCOPE_TRACE output
  • Add libjwt to third-party
  • res_pjsip: update qualify_timeout documentation with DNS note
  • chan_dahdi: Clarify scope of callgroup/pickupgroup.
  • func_json: Fix crashes for some types
  • res_speech_aeap: add aeap error handling
  • app_voicemail: Disable ADSI if unavailable.
  • codec_builtin: Use multiples of 20 for maximum_ms
  • lock.c: Separate DETECT_DEADLOCKS from DEBUG_THREADS
  • asterisk.c: Use the euid's home directory to read/write cli history
  • res_pjsip_transport_websocket: Prevent transport from being destroyed before message finishes.
  • cel: add publish user event helper
  • chan_console: Fix deadlock caused by unclean thread exit.
  • file.c: Add ability to search custom dir for sounds
  • chan_iax2: Improve authentication debugging.
  • res_rtp_asterisk: fix wrong counter management in ioqueue objects
  • make_buildopts_h, et. al. Allow adding all cflags to buildopts.h
  • func_periodic_hook: Add hangup step to avoid timeout
  • res_stasis_recording.c: Save recording state when unmuted.
  • res_speech_aeap: check for null format on response
  • func_periodic_hook: Don't truncate channel name
  • safe_asterisk: Change directory permissions to 755
  • chan_rtp: Implement RTP glue for UnicastRTP channels
  • app_queue: periodic announcement configurable start time.
  • variables: Add additional variable dialplan functions.
  • Restore CHANGES and UPGRADE.txt to allow cherry-picks to work

User Notes:

  • app_dial: Add option "j" to preserve initial stream topology of caller

    The option "j" is now available for the Dial application which
    uses the initial stream topology of the caller to create the outgoing
    channels.

  • logger: Add channel-based filtering.

    The console log can now be filtered by
    channels or groups of channels, using the
    logger filter CLI commands.

  • chan_pjsip: Add PJSIPHangup dialplan app and manager action

    A new dialplan app PJSIPHangup and AMI action allows you
    to hang up an unanswered incoming PJSIP call with a specific SIP
    response code in the 400 -> 699 range.

  • app_voicemail: Add AMI event for mailbox PIN changes.

    The VoicemailPasswordChange event is
    now emitted whenever a mailbox password is updated,
    containing the mailbox information and the new
    password.
    Resolves: #398

  • res_speech: allow speech to translate input channel

    res_speech now supports translation of an input channel
    to a format supported by the speech provider, provided a translation
    path is available between the source format and provider capabilites.

  • res_pjsip: Expanding PJSIP endpoint ID and relevant resource length to 255 characters

    With this update, the PJSIP realm lengths have been extended
    to support up to 255 characters.

  • res_stasis: signal when new command is queued

    Call setup times should be significantly improved
    when using ARI.

  • lock.c: Separate DETECT_DEADLOCKS from DEBUG_THREADS

    You no longer need to select DEBUG_THREADS to use
    DETECT_DEADLOCKS. This removes a significant amount of overhead
    if you just want to detect possible deadlocks vs needing full
    lock tracing.

  • file.c: Add ability to search custom dir for sounds

    A new option "sounds_search_custom_dir" has been added to
    asterisk.conf that allows asterisk to search
    AST_DATA_DIR/sounds/custom for sounds files before searching the
    standard AST_DATA_DIR/sounds/ directory.

  • make_buildopts_h, et. al. Allow adding all cflags to buildopts.h

    The "Build Options" entry in the "core show settings"
    CLI command has been renamed to "ABI related Build Options" and
    a new entry named "All Build Options" has been added that shows
    both breaking and non-breaking options.

  • chan_rtp: Implement RTP glue for UnicastRTP channels

    The dial string option 'g' was added to the UnicastRTP channel
    which enables RTP glue and therefore native RTP bridges with those
    channels.

  • app_queue: periodic announcement configurable start time.

    Introduce a new queue configuration option called
    'periodic-announce-startdelay' which will vary the normal (historic)
    behavior of starting the periodic announcement cycle at
    periodic-announce-frequency seconds after entering the queue to start
    the periodic announcement cycle at period-announce-startdelay seconds
    after joining the queue. The default behavior if this config option is
    not set remains unchanged.
    Signed-off-by: Jaco Kroon [email protected]

  • variables: Add additional variable dialplan functions.

    Four new dialplan functions have been added.
    GLOBAL_DELETE and DELETE have been added which allows
    the deletion of global and channel variables.
    GLOBAL_EXISTS and VARIABLE_EXISTS have been added
    which checks whether a global or channel variable has
    been set.

Upgrade Notes:

  • app.c: Allow ampersands in playback lists to be escaped.

    Ampersands in URLs passed to the Playback(),
    Background(), SpeechBackground(), Read(), Authenticate(), or
    Queue() applications as filename arguments can now be escaped by
    single quoting the filename. Additionally, this is also possible when
    using the CONFBRIDGE dialplan function, or configuring various
    features in confbridge.conf and queues.conf.

  • pjsip_configuration.c: Disable DTLS renegotiation if WebRTC is enabled.

    The dtls_rekey will be disabled if webrtc support is
    requested on an endpoint. A warning will also be emitted.

  • res_pjsip: Expanding PJSIP endpoint ID and relevant resource length to 255 characters

    As part of this update, the maximum allowable length
    for PJSIP endpoints and relevant resources has been increased from
    40 to 255 characters. To take advantage of this enhancement, it is
    recommended to run the necessary procedures (e.g., Alembic) to
    update your schemas.

Closed Issues:

  • #84: [bug]: codec_ilbc: Fails to build with ilbc version 3.0.4
  • #129: [bug]: res_speech_aeap: Crash due to NULL format on setup
  • #242: [new-feature]: logger: Allow filtering logs in CLI by channel
  • #248: [bug]: core_local: Local channels cannot have slashes in the destination
  • #260: [bug]: maxptime must be changed to multiples of 20
  • #286: [improvement]: chan_iax2: Improve authentication debugging
  • #289: [new-feature]: Add support for deleting channel and global variables
  • #294: [improvement]: chan_dahdi: Improve call pickup documentation
  • #298: [improvement]: chan_rtp: Implement RTP glue
  • #301: [bug]: Number of ICE TURN threads continually growing
  • #303: [bug]: SpeechBackground never exits
  • #308: [bug]: chan_console: Deadlock when hanging up console channels
  • #315: [improvement]: Search /var/lib/asterisk/sounds/custom for sound files before /var/lib/asterisk/sounds/
  • #316: [bug]: Privilege Escalation in Astrisk's Group permissions.
  • #319: [bug]: func_periodic_hook truncates long channel names when setting EncodedChannel
  • #321: [bug]: Performance suffers unnecessarily when debugging deadlocks
  • #325: [bug]: hangup after beep to avoid waiting for timeout
  • #330: [improvement]: Add cel user event helper function
  • #337: [bug]: asterisk.c: The CLI history file is written to the wrong directory in some cases
  • #341: [bug]: app_if.c : nested EndIf incorrectly exits parent If
  • #345: [improvement]: Increase pj_sip Realm Size to 255 Characters for Improved Functionality
  • #349: [improvement]: Add libjwt to third-party
  • #352: [bug]: Update qualify_timeout documentation to include DNS note
  • #354: [improvement]: app_voicemail: Disable ADSI if unavailable on a line
  • #356: [new-feature]: app_directory: Add ADSI support.
  • #360: [improvement]: Update documentation for CHANGES/UPGRADE files
  • #362: [improvement]: Speed up ARI command processing
  • #379: [bug]: Orphaned taskprocessors cause shutdown delays
  • #384: [bug]: Unnecessary re-INVITE after answer
  • #388: [bug]: Crash in app_followme.c due to not acquiring a reference to nativeformats
  • #396: [improvement]: res_pjsip: Specify max ciphers allowed if too many provided
  • #398: [new-feature]: app_voicemail: Add AMI event for password change
  • #409: [improvement]: chan_dahdi: Emit warning if specifying nonexistent cadence
  • #423: [improvement]: func_lock: Add missing see-also refs
  • #425: [improvement]: configs: Improve documentation for bandwidth in iax.conf.sample
  • #428: [bug]: cli: Output is truncated from "config show help"
  • #430: [bug]: Fix broken links
  • #442: [bug]: func_channel: Some channel options are not settable
  • #445: [bug]: ast_coredumper isn't figuring out file locations properly in all cases
  • #458: [bug]: Memory leak in chan_dahdi when mwimonitor=yes on FXO
  • #462: [new-feature]: app_dial: Add new option to preserve initial stream topology of caller
  • #465: [improvement]: Change res_odbc connection pool request logic to not lock around blocking operations
  • #482: [improvement]: manager.c: Improve clarity of "manager show connected" output
  • #509: [bug]: res_pjsip: Crash when looking up transport state in use
  • #513: [bug]: manager.c: Crash due to regression using wrong free function when built with MALLOC_DEBUG
  • #520: [improvement]: menuselect: Use more specific error message.
  • #530: [bug]: bridge_channel.c: Stream topology change amplification with multiple layers of Local channels
  • #539: [bug]: Existence of logger.xml causes linking failure
asterisk - Asterisk Release 21.1.0-rc2

Published by asterisk-org-access-app[bot] 9 months ago

The Asterisk Development Team would like to announce
release candidate 2 of asterisk-21.1.0.

The release artifacts are available for immediate download at
https://github.com/asterisk/asterisk/releases/tag/21.1.0-rc2
and
https://downloads.asterisk.org/pub/telephony/asterisk

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

Thank You!

Change Log for Release asterisk-21.1.0-rc2

Links:

Summary:

  • logger: Fix linking regression.

User Notes:

Upgrade Notes:

Closed Issues:

  • #539: [bug]: Existence of logger.xml causes linking failure
asterisk - Asterisk Release 20.6.0-rc2

Published by asterisk-org-access-app[bot] 9 months ago

The Asterisk Development Team would like to announce
release candidate 2 of asterisk-20.6.0.

The release artifacts are available for immediate download at
https://github.com/asterisk/asterisk/releases/tag/20.6.0-rc2
and
https://downloads.asterisk.org/pub/telephony/asterisk

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.6.0-rc2

Links:

Summary:

  • logger: Fix linking regression.

User Notes:

Upgrade Notes:

Closed Issues:

  • #539: [bug]: Existence of logger.xml causes linking failure
asterisk - Asterisk Release 18.21.0-rc2

Published by asterisk-org-access-app[bot] 9 months ago

The Asterisk Development Team would like to announce
release candidate 2 of asterisk-18.21.0.

The release artifacts are available for immediate download at
https://github.com/asterisk/asterisk/releases/tag/18.21.0-rc2
and
https://downloads.asterisk.org/pub/telephony/asterisk

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

Thank You!

Change Log for Release asterisk-18.21.0-rc2

Links:

Summary:

  • logger: Fix linking regression.

User Notes:

Upgrade Notes:

Closed Issues:

  • #539: [bug]: Existence of logger.xml causes linking failure
asterisk - Asterisk Release 21.1.0-rc1

Published by asterisk-org-access-app[bot] 9 months ago

The Asterisk Development Team would like to announce
release candidate 1 of asterisk-21.1.0.

The release artifacts are available for immediate download at
https://github.com/asterisk/asterisk/releases/tag/21.1.0-rc1
and
https://downloads.asterisk.org/pub/telephony/asterisk

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

Thank You!

Change Log for Release asterisk-21.1.0-rc1

Links:

Summary:

  • Revert "core & res_pjsip: Improve topology change handling."
  • menuselect: Use more specific error message.
  • res_pjsip_nat: Fix potential use of uninitialized transport details
  • app_if: Fix faulty EndIf branching.
  • manager.c: Fix regression due to using wrong free function.
  • doc: Remove obsolete CHANGES-staging and UPGRADE-staging directories
  • config_options.c: Fix truncation of option descriptions.
  • manager.c: Improve clarity of "manager show connected".
  • make_xml_documentation: Really collect LOCAL_MOD_SUBDIRS documentation.
  • general: Fix broken links.
  • MergeApproved.yml: Remove unneeded concurrency
  • app_dial: Add option "j" to preserve initial stream topology of caller
  • pbx_config.c: Don't crash when unloading module.
  • ast_coredumper: Increase reliability
  • logger.c: Move LOG_GROUP documentation to dedicated XML file.
  • res_odbc.c: Allow concurrent access to request odbc connections
  • res_pjsip_header_funcs.c: Check URI parameter length before copying.
  • config.c: Log #exec include failures.
  • make_xml_documentation: Properly handle absolute LOCAL_MOD_SUBDIRS.
  • app_voicemail.c: Completely resequence mailbox folders.
  • sig_analog: Fix channel leak when mwimonitor is enabled.
  • res_rtp_asterisk.c: Update for OpenSSL 3+.
  • alembic: Update list of TLS methods available on ps_transports.
  • func_channel: Expose previously unsettable options.
  • app.c: Allow ampersands in playback lists to be escaped.
  • uri.c: Simplify ast_uri_make_host_with_port()
  • func_curl.c: Remove CURLOPT() plaintext documentation.
  • res_http_websocket.c: Set hostname on client for certificate validation.
  • live_ast: Add astcachedir to generated asterisk.conf.
  • SECURITY.md: Update with correct documentation URL
  • func_lock: Add missing see-also refs to documentation.
  • app_followme.c: Grab reference on nativeformats before using it
  • configs: Improve documentation for bandwidth in iax.conf.
  • logger: Add channel-based filtering.
  • chan_iax2.c: Don't send unsanitized data to the logger.
  • codec_ilbc: Disable system ilbc if version >= 3.0.0
  • resource_channels.c: Explicit codec request when creating UnicastRTP.
  • doc: Update IP Quality of Service links.
  • chan_pjsip: Add PJSIPHangup dialplan app and manager action
  • chan_iax2.c: Ensure all IEs are displayed when dumping frame contents.
  • chan_dahdi: Warn if nonexistent cadence is requested.
  • stasis: Update the snapshot after setting the redirect
  • ari: Provide the caller ID RDNIS for the channels
  • main/utils: Implement ast_get_tid() for OpenBSD
  • res_rtp_asterisk.c: Fix runtime issue with LibreSSL
  • app_directory: Add ADSI support to Directory.
  • core_local: Fix local channel parsing with slashes.
  • Remove files that are no longer updated
  • app_voicemail: Add AMI event for mailbox PIN changes.
  • app_queue.c: Emit unpause reason with PauseQueueMember event.
  • bridge_simple: Suppress unchanged topology change requests
  • res_pjsip: Include cipher limit in config error message.
  • res_speech: allow speech to translate input channel
  • res_rtp_asterisk.c: Fix memory leak in ephemeral certificate creation.
  • res_pjsip_dtmf_info.c: Add 'INFO' to Allow header.
  • api.wiki.mustache: Fix indentation in generated markdown
  • pjsip_configuration.c: Disable DTLS renegotiation if WebRTC is enabled.
  • configs: Fix typo in pjsip.conf.sample.
  • res_pjsip_exten_state,res_pjsip_mwi: Allow unload on shutdown
  • res_pjsip: Expanding PJSIP endpoint ID and relevant resource length to 255 characters
  • .github: PRSubmitActions: Fix adding reviewers to PR
  • .github: New PR Submit workflows
  • .github: New PR Submit workflows
  • res_stasis: signal when new command is queued
  • ari/stasis: Indicate progress before playback on a bridge
  • func_curl.c: Ensure channel is locked when manipulating datastores.
  • .github: Fix job prereqs in PROpenedUpdated
  • .github: Block PR tests until approved
  • .github: Use generic releaser
  • logger.h: Add ability to change the prefix on SCOPE_TRACE output
  • Add libjwt to third-party
  • res_pjsip: update qualify_timeout documentation with DNS note
  • chan_dahdi: Clarify scope of callgroup/pickupgroup.
  • func_json: Fix crashes for some types
  • res_speech_aeap: add aeap error handling
  • app_voicemail: Disable ADSI if unavailable.
  • codec_builtin: Use multiples of 20 for maximum_ms
  • lock.c: Separate DETECT_DEADLOCKS from DEBUG_THREADS
  • asterisk.c: Use the euid's home directory to read/write cli history
  • res_pjsip_transport_websocket: Prevent transport from being destroyed before message finishes.
  • cel: add publish user event helper
  • chan_console: Fix deadlock caused by unclean thread exit.
  • file.c: Add ability to search custom dir for sounds
  • chan_iax2: Improve authentication debugging.
  • res_rtp_asterisk: fix wrong counter management in ioqueue objects
  • res_pjsip_pubsub: Add body_type to test_handler for unit tests
  • make_buildopts_h, et. al. Allow adding all cflags to buildopts.h
  • func_periodic_hook: Add hangup step to avoid timeout
  • res_stasis_recording.c: Save recording state when unmuted.
  • res_speech_aeap: check for null format on response
  • func_periodic_hook: Don't truncate channel name
  • safe_asterisk: Change directory permissions to 755
  • chan_rtp: Implement RTP glue for UnicastRTP channels
  • app_queue: periodic announcement configurable start time.
  • variables: Add additional variable dialplan functions.
  • Restore CHANGES and UPGRADE.txt to allow cherry-picks to work

User Notes:

  • app_dial: Add option "j" to preserve initial stream topology of caller

    The option "j" is now available for the Dial application which
    uses the initial stream topology of the caller to create the outgoing
    channels.

  • logger: Add channel-based filtering.

    The console log can now be filtered by
    channels or groups of channels, using the
    logger filter CLI commands.

  • chan_pjsip: Add PJSIPHangup dialplan app and manager action

    A new dialplan app PJSIPHangup and AMI action allows you
    to hang up an unanswered incoming PJSIP call with a specific SIP
    response code in the 400 -> 699 range.

  • app_voicemail: Add AMI event for mailbox PIN changes.

    The VoicemailPasswordChange event is
    now emitted whenever a mailbox password is updated,
    containing the mailbox information and the new
    password.
    Resolves: #398

  • res_speech: allow speech to translate input channel

    res_speech now supports translation of an input channel
    to a format supported by the speech provider, provided a translation
    path is available between the source format and provider capabilites.

  • res_pjsip: Expanding PJSIP endpoint ID and relevant resource length to 255 characters

    With this update, the PJSIP realm lengths have been extended
    to support up to 255 characters.

  • res_stasis: signal when new command is queued

    Call setup times should be significantly improved
    when using ARI.

  • lock.c: Separate DETECT_DEADLOCKS from DEBUG_THREADS

    You no longer need to select DEBUG_THREADS to use
    DETECT_DEADLOCKS. This removes a significant amount of overhead
    if you just want to detect possible deadlocks vs needing full
    lock tracing.

  • file.c: Add ability to search custom dir for sounds

    A new option "sounds_search_custom_dir" has been added to
    asterisk.conf that allows asterisk to search
    AST_DATA_DIR/sounds/custom for sounds files before searching the
    standard AST_DATA_DIR/sounds/ directory.

  • make_buildopts_h, et. al. Allow adding all cflags to buildopts.h

    The "Build Options" entry in the "core show settings"
    CLI command has been renamed to "ABI related Build Options" and
    a new entry named "All Build Options" has been added that shows
    both breaking and non-breaking options.

  • chan_rtp: Implement RTP glue for UnicastRTP channels

    The dial string option 'g' was added to the UnicastRTP channel
    which enables RTP glue and therefore native RTP bridges with those
    channels.

  • app_queue: periodic announcement configurable start time.

    Introduce a new queue configuration option called
    'periodic-announce-startdelay' which will vary the normal (historic)
    behavior of starting the periodic announcement cycle at
    periodic-announce-frequency seconds after entering the queue to start
    the periodic announcement cycle at period-announce-startdelay seconds
    after joining the queue. The default behavior if this config option is
    not set remains unchanged.
    Signed-off-by: Jaco Kroon [email protected]

  • variables: Add additional variable dialplan functions.

    Four new dialplan functions have been added.
    GLOBAL_DELETE and DELETE have been added which allows
    the deletion of global and channel variables.
    GLOBAL_EXISTS and VARIABLE_EXISTS have been added
    which checks whether a global or channel variable has
    been set.

Upgrade Notes:

  • app.c: Allow ampersands in playback lists to be escaped.

    Ampersands in URLs passed to the Playback(),
    Background(), SpeechBackground(), Read(), Authenticate(), or
    Queue() applications as filename arguments can now be escaped by
    single quoting the filename. Additionally, this is also possible when
    using the CONFBRIDGE dialplan function, or configuring various
    features in confbridge.conf and queues.conf.

  • pjsip_configuration.c: Disable DTLS renegotiation if WebRTC is enabled.

    The dtls_rekey will be disabled if webrtc support is
    requested on an endpoint. A warning will also be emitted.

  • res_pjsip: Expanding PJSIP endpoint ID and relevant resource length to 255 characters

    As part of this update, the maximum allowable length
    for PJSIP endpoints and relevant resources has been increased from
    40 to 255 characters. To take advantage of this enhancement, it is
    recommended to run the necessary procedures (e.g., Alembic) to
    update your schemas.

Closed Issues:

  • #84: [bug]: codec_ilbc: Fails to build with ilbc version 3.0.4
  • #129: [bug]: res_speech_aeap: Crash due to NULL format on setup
  • #242: [new-feature]: logger: Allow filtering logs in CLI by channel
  • #248: [bug]: core_local: Local channels cannot have slashes in the destination
  • #260: [bug]: maxptime must be changed to multiples of 20
  • #286: [improvement]: chan_iax2: Improve authentication debugging
  • #289: [new-feature]: Add support for deleting channel and global variables
  • #294: [improvement]: chan_dahdi: Improve call pickup documentation
  • #298: [improvement]: chan_rtp: Implement RTP glue
  • #301: [bug]: Number of ICE TURN threads continually growing
  • #303: [bug]: SpeechBackground never exits
  • #308: [bug]: chan_console: Deadlock when hanging up console channels
  • #315: [improvement]: Search /var/lib/asterisk/sounds/custom for sound files before /var/lib/asterisk/sounds/
  • #316: [bug]: Privilege Escalation in Astrisk's Group permissions.
  • #319: [bug]: func_periodic_hook truncates long channel names when setting EncodedChannel
  • #321: [bug]: Performance suffers unnecessarily when debugging deadlocks
  • #325: [bug]: hangup after beep to avoid waiting for timeout
  • #330: [improvement]: Add cel user event helper function
  • #335: [bug]: res_pjsip_pubsub: The bad_event unit test causes a SEGV in build_resource_tree
  • #337: [bug]: asterisk.c: The CLI history file is written to the wrong directory in some cases
  • #341: [bug]: app_if.c : nested EndIf incorrectly exits parent If
  • #345: [improvement]: Increase pj_sip Realm Size to 255 Characters for Improved Functionality
  • #349: [improvement]: Add libjwt to third-party
  • #352: [bug]: Update qualify_timeout documentation to include DNS note
  • #354: [improvement]: app_voicemail: Disable ADSI if unavailable on a line
  • #356: [new-feature]: app_directory: Add ADSI support.
  • #360: [improvement]: Update documentation for CHANGES/UPGRADE files
  • #362: [improvement]: Speed up ARI command processing
  • #379: [bug]: Orphaned taskprocessors cause shutdown delays
  • #384: [bug]: Unnecessary re-INVITE after answer
  • #388: [bug]: Crash in app_followme.c due to not acquiring a reference to nativeformats
  • #396: [improvement]: res_pjsip: Specify max ciphers allowed if too many provided
  • #398: [new-feature]: app_voicemail: Add AMI event for password change
  • #409: [improvement]: chan_dahdi: Emit warning if specifying nonexistent cadence
  • #423: [improvement]: func_lock: Add missing see-also refs
  • #425: [improvement]: configs: Improve documentation for bandwidth in iax.conf.sample
  • #428: [bug]: cli: Output is truncated from "config show help"
  • #430: [bug]: Fix broken links
  • #442: [bug]: func_channel: Some channel options are not settable
  • #445: [bug]: ast_coredumper isn't figuring out file locations properly in all cases
  • #458: [bug]: Memory leak in chan_dahdi when mwimonitor=yes on FXO
  • #462: [new-feature]: app_dial: Add new option to preserve initial stream topology of caller
  • #465: [improvement]: Change res_odbc connection pool request logic to not lock around blocking operations
  • #482: [improvement]: manager.c: Improve clarity of "manager show connected" output
  • #509: [bug]: res_pjsip: Crash when looking up transport state in use
  • #513: [bug]: manager.c: Crash due to regression using wrong free function when built with MALLOC_DEBUG
  • #520: [improvement]: menuselect: Use more specific error message.
  • #530: [bug]: bridge_channel.c: Stream topology change amplification with multiple layers of Local channels
asterisk - Asterisk Release 20.6.0-rc1

Published by asterisk-org-access-app[bot] 9 months ago

The Asterisk Development Team would like to announce
release candidate 1 of asterisk-20.6.0.

The release artifacts are available for immediate download at
https://github.com/asterisk/asterisk/releases/tag/20.6.0-rc1
and
https://downloads.asterisk.org/pub/telephony/asterisk

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.6.0-rc1

Links:

Summary:

  • Revert "core & res_pjsip: Improve topology change handling."
  • menuselect: Use more specific error message.
  • res_pjsip_nat: Fix potential use of uninitialized transport details
  • app_if: Fix faulty EndIf branching.
  • manager.c: Fix regression due to using wrong free function.
  • config_options.c: Fix truncation of option descriptions.
  • manager.c: Improve clarity of "manager show connected".
  • make_xml_documentation: Really collect LOCAL_MOD_SUBDIRS documentation.
  • general: Fix broken links.
  • MergeApproved.yml: Remove unneeded concurrency
  • app_dial: Add option "j" to preserve initial stream topology of caller
  • ast_coredumper: Increase reliability
  • logger.c: Move LOG_GROUP documentation to dedicated XML file.
  • res_odbc.c: Allow concurrent access to request odbc connections
  • res_pjsip_header_funcs.c: Check URI parameter length before copying.
  • config.c: Log #exec include failures.
  • make_xml_documentation: Properly handle absolute LOCAL_MOD_SUBDIRS.
  • app_voicemail.c: Completely resequence mailbox folders.
  • sig_analog: Fix channel leak when mwimonitor is enabled.
  • res_rtp_asterisk.c: Update for OpenSSL 3+.
  • alembic: Update list of TLS methods available on ps_transports.
  • func_channel: Expose previously unsettable options.
  • app.c: Allow ampersands in playback lists to be escaped.
  • uri.c: Simplify ast_uri_make_host_with_port()
  • func_curl.c: Remove CURLOPT() plaintext documentation.
  • res_http_websocket.c: Set hostname on client for certificate validation.
  • live_ast: Add astcachedir to generated asterisk.conf.
  • SECURITY.md: Update with correct documentation URL
  • func_lock: Add missing see-also refs to documentation.
  • app_followme.c: Grab reference on nativeformats before using it
  • configs: Improve documentation for bandwidth in iax.conf.
  • logger: Add channel-based filtering.
  • chan_iax2.c: Don't send unsanitized data to the logger.
  • codec_ilbc: Disable system ilbc if version >= 3.0.0
  • resource_channels.c: Explicit codec request when creating UnicastRTP.
  • doc: Update IP Quality of Service links.
  • chan_pjsip: Add PJSIPHangup dialplan app and manager action
  • chan_iax2.c: Ensure all IEs are displayed when dumping frame contents.
  • chan_dahdi: Warn if nonexistent cadence is requested.
  • stasis: Update the snapshot after setting the redirect
  • ari: Provide the caller ID RDNIS for the channels
  • main/utils: Implement ast_get_tid() for OpenBSD
  • res_rtp_asterisk.c: Fix runtime issue with LibreSSL
  • app_directory: Add ADSI support to Directory.
  • core_local: Fix local channel parsing with slashes.
  • Remove files that are no longer updated
  • app_voicemail: Add AMI event for mailbox PIN changes.
  • app_queue.c: Emit unpause reason with PauseQueueMember event.
  • bridge_simple: Suppress unchanged topology change requests
  • res_pjsip: Include cipher limit in config error message.
  • res_speech: allow speech to translate input channel
  • res_rtp_asterisk.c: Fix memory leak in ephemeral certificate creation.
  • res_pjsip_dtmf_info.c: Add 'INFO' to Allow header.
  • api.wiki.mustache: Fix indentation in generated markdown
  • pjsip_configuration.c: Disable DTLS renegotiation if WebRTC is enabled.
  • configs: Fix typo in pjsip.conf.sample.
  • res_pjsip_exten_state,res_pjsip_mwi: Allow unload on shutdown
  • res_pjsip: Expanding PJSIP endpoint ID and relevant resource length to 255 characters
  • .github: PRSubmitActions: Fix adding reviewers to PR
  • .github: New PR Submit workflows
  • .github: New PR Submit workflows
  • res_stasis: signal when new command is queued
  • ari/stasis: Indicate progress before playback on a bridge
  • func_curl.c: Ensure channel is locked when manipulating datastores.
  • .github: Fix job prereqs in PROpenedUpdated
  • .github: Block PR tests until approved
  • Update config.yml
  • logger.h: Add ability to change the prefix on SCOPE_TRACE output
  • Add libjwt to third-party
  • res_pjsip: update qualify_timeout documentation with DNS note
  • chan_dahdi: Clarify scope of callgroup/pickupgroup.
  • func_json: Fix crashes for some types
  • res_speech_aeap: add aeap error handling
  • app_voicemail: Disable ADSI if unavailable.
  • codec_builtin: Use multiples of 20 for maximum_ms
  • lock.c: Separate DETECT_DEADLOCKS from DEBUG_THREADS
  • asterisk.c: Use the euid's home directory to read/write cli history
  • res_pjsip_transport_websocket: Prevent transport from being destroyed before message finishes.
  • cel: add publish user event helper
  • chan_console: Fix deadlock caused by unclean thread exit.
  • file.c: Add ability to search custom dir for sounds
  • chan_iax2: Improve authentication debugging.
  • res_rtp_asterisk: fix wrong counter management in ioqueue objects
  • make_buildopts_h, et. al. Allow adding all cflags to buildopts.h
  • func_periodic_hook: Add hangup step to avoid timeout
  • res_stasis_recording.c: Save recording state when unmuted.
  • res_speech_aeap: check for null format on response
  • func_periodic_hook: Don't truncate channel name
  • safe_asterisk: Change directory permissions to 755
  • chan_rtp: Implement RTP glue for UnicastRTP channels
  • app_queue: periodic announcement configurable start time.
  • variables: Add additional variable dialplan functions.
  • Restore CHANGES and UPGRADE.txt to allow cherry-picks to work

User Notes:

  • app_dial: Add option "j" to preserve initial stream topology of caller

    The option "j" is now available for the Dial application which
    uses the initial stream topology of the caller to create the outgoing
    channels.

  • logger: Add channel-based filtering.

    The console log can now be filtered by
    channels or groups of channels, using the
    logger filter CLI commands.

  • chan_pjsip: Add PJSIPHangup dialplan app and manager action

    A new dialplan app PJSIPHangup and AMI action allows you
    to hang up an unanswered incoming PJSIP call with a specific SIP
    response code in the 400 -> 699 range.

  • app_voicemail: Add AMI event for mailbox PIN changes.

    The VoicemailPasswordChange event is
    now emitted whenever a mailbox password is updated,
    containing the mailbox information and the new
    password.
    Resolves: #398

  • res_speech: allow speech to translate input channel

    res_speech now supports translation of an input channel
    to a format supported by the speech provider, provided a translation
    path is available between the source format and provider capabilites.

  • res_pjsip: Expanding PJSIP endpoint ID and relevant resource length to 255 characters

    With this update, the PJSIP realm lengths have been extended
    to support up to 255 characters.

  • res_stasis: signal when new command is queued

    Call setup times should be significantly improved
    when using ARI.

  • lock.c: Separate DETECT_DEADLOCKS from DEBUG_THREADS

    You no longer need to select DEBUG_THREADS to use
    DETECT_DEADLOCKS. This removes a significant amount of overhead
    if you just want to detect possible deadlocks vs needing full
    lock tracing.

  • file.c: Add ability to search custom dir for sounds

    A new option "sounds_search_custom_dir" has been added to
    asterisk.conf that allows asterisk to search
    AST_DATA_DIR/sounds/custom for sounds files before searching the
    standard AST_DATA_DIR/sounds/ directory.

  • make_buildopts_h, et. al. Allow adding all cflags to buildopts.h

    The "Build Options" entry in the "core show settings"
    CLI command has been renamed to "ABI related Build Options" and
    a new entry named "All Build Options" has been added that shows
    both breaking and non-breaking options.

  • chan_rtp: Implement RTP glue for UnicastRTP channels

    The dial string option 'g' was added to the UnicastRTP channel
    which enables RTP glue and therefore native RTP bridges with those
    channels.

  • app_queue: periodic announcement configurable start time.

    Introduce a new queue configuration option called
    'periodic-announce-startdelay' which will vary the normal (historic)
    behavior of starting the periodic announcement cycle at
    periodic-announce-frequency seconds after entering the queue to start
    the periodic announcement cycle at period-announce-startdelay seconds
    after joining the queue. The default behavior if this config option is
    not set remains unchanged.
    Signed-off-by: Jaco Kroon [email protected]

  • variables: Add additional variable dialplan functions.

    Four new dialplan functions have been added.
    GLOBAL_DELETE and DELETE have been added which allows
    the deletion of global and channel variables.
    GLOBAL_EXISTS and VARIABLE_EXISTS have been added
    which checks whether a global or channel variable has
    been set.

Upgrade Notes:

  • app.c: Allow ampersands in playback lists to be escaped.

    Ampersands in URLs passed to the Playback(),
    Background(), SpeechBackground(), Read(), Authenticate(), or
    Queue() applications as filename arguments can now be escaped by
    single quoting the filename. Additionally, this is also possible when
    using the CONFBRIDGE dialplan function, or configuring various
    features in confbridge.conf and queues.conf.

  • pjsip_configuration.c: Disable DTLS renegotiation if WebRTC is enabled.

    The dtls_rekey will be disabled if webrtc support is
    requested on an endpoint. A warning will also be emitted.

  • res_pjsip: Expanding PJSIP endpoint ID and relevant resource length to 255 characters

    As part of this update, the maximum allowable length
    for PJSIP endpoints and relevant resources has been increased from
    40 to 255 characters. To take advantage of this enhancement, it is
    recommended to run the necessary procedures (e.g., Alembic) to
    update your schemas.

Closed Issues:

  • #84: [bug]: codec_ilbc: Fails to build with ilbc version 3.0.4
  • #129: [bug]: res_speech_aeap: Crash due to NULL format on setup
  • #242: [new-feature]: logger: Allow filtering logs in CLI by channel
  • #248: [bug]: core_local: Local channels cannot have slashes in the destination
  • #260: [bug]: maxptime must be changed to multiples of 20
  • #286: [improvement]: chan_iax2: Improve authentication debugging
  • #289: [new-feature]: Add support for deleting channel and global variables
  • #294: [improvement]: chan_dahdi: Improve call pickup documentation
  • #298: [improvement]: chan_rtp: Implement RTP glue
  • #301: [bug]: Number of ICE TURN threads continually growing
  • #303: [bug]: SpeechBackground never exits
  • #308: [bug]: chan_console: Deadlock when hanging up console channels
  • #315: [improvement]: Search /var/lib/asterisk/sounds/custom for sound files before /var/lib/asterisk/sounds/
  • #316: [bug]: Privilege Escalation in Astrisk's Group permissions.
  • #319: [bug]: func_periodic_hook truncates long channel names when setting EncodedChannel
  • #321: [bug]: Performance suffers unnecessarily when debugging deadlocks
  • #325: [bug]: hangup after beep to avoid waiting for timeout
  • #330: [improvement]: Add cel user event helper function
  • #337: [bug]: asterisk.c: The CLI history file is written to the wrong directory in some cases
  • #341: [bug]: app_if.c : nested EndIf incorrectly exits parent If
  • #345: [improvement]: Increase pj_sip Realm Size to 255 Characters for Improved Functionality
  • #349: [improvement]: Add libjwt to third-party
  • #352: [bug]: Update qualify_timeout documentation to include DNS note
  • #354: [improvement]: app_voicemail: Disable ADSI if unavailable on a line
  • #356: [new-feature]: app_directory: Add ADSI support.
  • #360: [improvement]: Update documentation for CHANGES/UPGRADE files
  • #362: [improvement]: Speed up ARI command processing
  • #379: [bug]: Orphaned taskprocessors cause shutdown delays
  • #384: [bug]: Unnecessary re-INVITE after answer
  • #388: [bug]: Crash in app_followme.c due to not acquiring a reference to nativeformats
  • #396: [improvement]: res_pjsip: Specify max ciphers allowed if too many provided
  • #398: [new-feature]: app_voicemail: Add AMI event for password change
  • #409: [improvement]: chan_dahdi: Emit warning if specifying nonexistent cadence
  • #423: [improvement]: func_lock: Add missing see-also refs
  • #425: [improvement]: configs: Improve documentation for bandwidth in iax.conf.sample
  • #428: [bug]: cli: Output is truncated from "config show help"
  • #430: [bug]: Fix broken links
  • #442: [bug]: func_channel: Some channel options are not settable
  • #445: [bug]: ast_coredumper isn't figuring out file locations properly in all cases
  • #458: [bug]: Memory leak in chan_dahdi when mwimonitor=yes on FXO
  • #462: [new-feature]: app_dial: Add new option to preserve initial stream topology of caller
  • #465: [improvement]: Change res_odbc connection pool request logic to not lock around blocking operations
  • #482: [improvement]: manager.c: Improve clarity of "manager show connected" output
  • #509: [bug]: res_pjsip: Crash when looking up transport state in use
  • #513: [bug]: manager.c: Crash due to regression using wrong free function when built with MALLOC_DEBUG
  • #520: [improvement]: menuselect: Use more specific error message.
  • #530: [bug]: bridge_channel.c: Stream topology change amplification with multiple layers of Local channels
asterisk - Asterisk Release 18.21.0-rc1

Published by asterisk-org-access-app[bot] 9 months ago

The Asterisk Development Team would like to announce
release candidate 1 of asterisk-18.21.0.

The release artifacts are available for immediate download at
https://github.com/asterisk/asterisk/releases/tag/18.21.0-rc1
and
https://downloads.asterisk.org/pub/telephony/asterisk

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

Thank You!

Change Log for Release asterisk-18.21.0-rc1

Links:

Summary:

  • Revert "core & res_pjsip: Improve topology change handling."
  • menuselect: Use more specific error message.
  • res_pjsip_nat: Fix potential use of uninitialized transport details
  • app_if: Fix faulty EndIf branching.
  • manager.c: Fix regression due to using wrong free function.
  • config_options.c: Fix truncation of option descriptions.
  • manager.c: Improve clarity of "manager show connected".
  • make_xml_documentation: Really collect LOCAL_MOD_SUBDIRS documentation.
  • general: Fix broken links.
  • MergeApproved.yml: Remove unneeded concurrency
  • app_dial: Add option "j" to preserve initial stream topology of caller
  • ast_coredumper: Increase reliability
  • logger.c: Move LOG_GROUP documentation to dedicated XML file.
  • res_odbc.c: Allow concurrent access to request odbc connections
  • res_pjsip_header_funcs.c: Check URI parameter length before copying.
  • config.c: Log #exec include failures.
  • make_xml_documentation: Properly handle absolute LOCAL_MOD_SUBDIRS.
  • app_voicemail.c: Completely resequence mailbox folders.
  • sig_analog: Fix channel leak when mwimonitor is enabled.
  • res_rtp_asterisk.c: Update for OpenSSL 3+.
  • alembic: Update list of TLS methods available on ps_transports.
  • func_channel: Expose previously unsettable options.
  • app.c: Allow ampersands in playback lists to be escaped.
  • uri.c: Simplify ast_uri_make_host_with_port()
  • func_curl.c: Remove CURLOPT() plaintext documentation.
  • res_http_websocket.c: Set hostname on client for certificate validation.
  • live_ast: Add astcachedir to generated asterisk.conf.
  • SECURITY.md: Update with correct documentation URL
  • func_lock: Add missing see-also refs to documentation.
  • app_followme.c: Grab reference on nativeformats before using it
  • configs: Improve documentation for bandwidth in iax.conf.
  • logger: Add channel-based filtering.
  • chan_iax2.c: Don't send unsanitized data to the logger.
  • codec_ilbc: Disable system ilbc if version >= 3.0.0
  • resource_channels.c: Explicit codec request when creating UnicastRTP.
  • doc: Update IP Quality of Service links.
  • chan_pjsip: Add PJSIPHangup dialplan app and manager action
  • chan_iax2.c: Ensure all IEs are displayed when dumping frame contents.
  • chan_dahdi: Warn if nonexistent cadence is requested.
  • stasis: Update the snapshot after setting the redirect
  • ari: Provide the caller ID RDNIS for the channels
  • main/utils: Implement ast_get_tid() for OpenBSD
  • res_rtp_asterisk.c: Fix runtime issue with LibreSSL
  • app_directory: Add ADSI support to Directory.
  • core_local: Fix local channel parsing with slashes.
  • Remove files that are no longer updated
  • app_voicemail: Add AMI event for mailbox PIN changes.
  • app_queue.c: Emit unpause reason with PauseQueueMember event.
  • bridge_simple: Suppress unchanged topology change requests
  • res_pjsip: Include cipher limit in config error message.
  • res_speech: allow speech to translate input channel
  • res_rtp_asterisk.c: Fix memory leak in ephemeral certificate creation.
  • res_pjsip_dtmf_info.c: Add 'INFO' to Allow header.
  • api.wiki.mustache: Fix indentation in generated markdown
  • pjsip_configuration.c: Disable DTLS renegotiation if WebRTC is enabled.
  • configs: Fix typo in pjsip.conf.sample.
  • res_pjsip_exten_state,res_pjsip_mwi: Allow unload on shutdown
  • res_pjsip: Expanding PJSIP endpoint ID and relevant resource length to 255 characters
  • .github: PRSubmitActions: Fix adding reviewers to PR
  • .github: New PR Submit workflows
  • .github: New PR Submit workflows
  • res_stasis: signal when new command is queued
  • ari/stasis: Indicate progress before playback on a bridge
  • func_curl.c: Ensure channel is locked when manipulating datastores.
  • .github: Fix job prereqs in PROpenedUpdated
  • .github: Block PR tests until approved
  • logger.h: Add ability to change the prefix on SCOPE_TRACE output
  • Add libjwt to third-party
  • res_pjsip: update qualify_timeout documentation with DNS note
  • chan_dahdi: Clarify scope of callgroup/pickupgroup.
  • func_json: Fix crashes for some types
  • res_speech_aeap: add aeap error handling
  • app_voicemail: Disable ADSI if unavailable.
  • codec_builtin: Use multiples of 20 for maximum_ms
  • lock.c: Separate DETECT_DEADLOCKS from DEBUG_THREADS
  • asterisk.c: Use the euid's home directory to read/write cli history
  • res_pjsip_transport_websocket: Prevent transport from being destroyed before message finishes.
  • cel: add publish user event helper
  • chan_console: Fix deadlock caused by unclean thread exit.
  • file.c: Add ability to search custom dir for sounds
  • chan_iax2: Improve authentication debugging.
  • res_rtp_asterisk: fix wrong counter management in ioqueue objects
  • make_buildopts_h, et. al. Allow adding all cflags to buildopts.h
  • func_periodic_hook: Add hangup step to avoid timeout
  • res_stasis_recording.c: Save recording state when unmuted.
  • res_speech_aeap: check for null format on response
  • func_periodic_hook: Don't truncate channel name
  • safe_asterisk: Change directory permissions to 755
  • chan_rtp: Implement RTP glue for UnicastRTP channels
  • app_queue: periodic announcement configurable start time.
  • variables: Add additional variable dialplan functions.
  • Restore CHANGES and UPGRADE.txt to allow cherry-picks to work

User Notes:

  • app_dial: Add option "j" to preserve initial stream topology of caller

    The option "j" is now available for the Dial application which
    uses the initial stream topology of the caller to create the outgoing
    channels.

  • logger: Add channel-based filtering.

    The console log can now be filtered by
    channels or groups of channels, using the
    logger filter CLI commands.

  • chan_pjsip: Add PJSIPHangup dialplan app and manager action

    A new dialplan app PJSIPHangup and AMI action allows you
    to hang up an unanswered incoming PJSIP call with a specific SIP
    response code in the 400 -> 699 range.

  • app_voicemail: Add AMI event for mailbox PIN changes.

    The VoicemailPasswordChange event is
    now emitted whenever a mailbox password is updated,
    containing the mailbox information and the new
    password.
    Resolves: #398

  • res_speech: allow speech to translate input channel

    res_speech now supports translation of an input channel
    to a format supported by the speech provider, provided a translation
    path is available between the source format and provider capabilites.

  • res_pjsip: Expanding PJSIP endpoint ID and relevant resource length to 255 characters

    With this update, the PJSIP realm lengths have been extended
    to support up to 255 characters.

  • res_stasis: signal when new command is queued

    Call setup times should be significantly improved
    when using ARI.

  • lock.c: Separate DETECT_DEADLOCKS from DEBUG_THREADS

    You no longer need to select DEBUG_THREADS to use
    DETECT_DEADLOCKS. This removes a significant amount of overhead
    if you just want to detect possible deadlocks vs needing full
    lock tracing.

  • file.c: Add ability to search custom dir for sounds

    A new option "sounds_search_custom_dir" has been added to
    asterisk.conf that allows asterisk to search
    AST_DATA_DIR/sounds/custom for sounds files before searching the
    standard AST_DATA_DIR/sounds/ directory.

  • make_buildopts_h, et. al. Allow adding all cflags to buildopts.h

    The "Build Options" entry in the "core show settings"
    CLI command has been renamed to "ABI related Build Options" and
    a new entry named "All Build Options" has been added that shows
    both breaking and non-breaking options.

  • chan_rtp: Implement RTP glue for UnicastRTP channels

    The dial string option 'g' was added to the UnicastRTP channel
    which enables RTP glue and therefore native RTP bridges with those
    channels.

  • app_queue: periodic announcement configurable start time.

    Introduce a new queue configuration option called
    'periodic-announce-startdelay' which will vary the normal (historic)
    behavior of starting the periodic announcement cycle at
    periodic-announce-frequency seconds after entering the queue to start
    the periodic announcement cycle at period-announce-startdelay seconds
    after joining the queue. The default behavior if this config option is
    not set remains unchanged.
    Signed-off-by: Jaco Kroon [email protected]

  • variables: Add additional variable dialplan functions.

    Four new dialplan functions have been added.
    GLOBAL_DELETE and DELETE have been added which allows
    the deletion of global and channel variables.
    GLOBAL_EXISTS and VARIABLE_EXISTS have been added
    which checks whether a global or channel variable has
    been set.

Upgrade Notes:

  • app.c: Allow ampersands in playback lists to be escaped.

    Ampersands in URLs passed to the Playback(),
    Background(), SpeechBackground(), Read(), Authenticate(), or
    Queue() applications as filename arguments can now be escaped by
    single quoting the filename. Additionally, this is also possible when
    using the CONFBRIDGE dialplan function, or configuring various
    features in confbridge.conf and queues.conf.

  • pjsip_configuration.c: Disable DTLS renegotiation if WebRTC is enabled.

    The dtls_rekey will be disabled if webrtc support is
    requested on an endpoint. A warning will also be emitted.

  • res_pjsip: Expanding PJSIP endpoint ID and relevant resource length to 255 characters

    As part of this update, the maximum allowable length
    for PJSIP endpoints and relevant resources has been increased from
    40 to 255 characters. To take advantage of this enhancement, it is
    recommended to run the necessary procedures (e.g., Alembic) to
    update your schemas.

Closed Issues:

  • #84: [bug]: codec_ilbc: Fails to build with ilbc version 3.0.4
  • #129: [bug]: res_speech_aeap: Crash due to NULL format on setup
  • #242: [new-feature]: logger: Allow filtering logs in CLI by channel
  • #248: [bug]: core_local: Local channels cannot have slashes in the destination
  • #260: [bug]: maxptime must be changed to multiples of 20
  • #286: [improvement]: chan_iax2: Improve authentication debugging
  • #289: [new-feature]: Add support for deleting channel and global variables
  • #294: [improvement]: chan_dahdi: Improve call pickup documentation
  • #298: [improvement]: chan_rtp: Implement RTP glue
  • #301: [bug]: Number of ICE TURN threads continually growing
  • #303: [bug]: SpeechBackground never exits
  • #308: [bug]: chan_console: Deadlock when hanging up console channels
  • #315: [improvement]: Search /var/lib/asterisk/sounds/custom for sound files before /var/lib/asterisk/sounds/
  • #316: [bug]: Privilege Escalation in Astrisk's Group permissions.
  • #319: [bug]: func_periodic_hook truncates long channel names when setting EncodedChannel
  • #321: [bug]: Performance suffers unnecessarily when debugging deadlocks
  • #325: [bug]: hangup after beep to avoid waiting for timeout
  • #330: [improvement]: Add cel user event helper function
  • #337: [bug]: asterisk.c: The CLI history file is written to the wrong directory in some cases
  • #341: [bug]: app_if.c : nested EndIf incorrectly exits parent If
  • #345: [improvement]: Increase pj_sip Realm Size to 255 Characters for Improved Functionality
  • #349: [improvement]: Add libjwt to third-party
  • #352: [bug]: Update qualify_timeout documentation to include DNS note
  • #354: [improvement]: app_voicemail: Disable ADSI if unavailable on a line
  • #356: [new-feature]: app_directory: Add ADSI support.
  • #360: [improvement]: Update documentation for CHANGES/UPGRADE files
  • #362: [improvement]: Speed up ARI command processing
  • #379: [bug]: Orphaned taskprocessors cause shutdown delays
  • #384: [bug]: Unnecessary re-INVITE after answer
  • #388: [bug]: Crash in app_followme.c due to not acquiring a reference to nativeformats
  • #396: [improvement]: res_pjsip: Specify max ciphers allowed if too many provided
  • #398: [new-feature]: app_voicemail: Add AMI event for password change
  • #409: [improvement]: chan_dahdi: Emit warning if specifying nonexistent cadence
  • #423: [improvement]: func_lock: Add missing see-also refs
  • #425: [improvement]: configs: Improve documentation for bandwidth in iax.conf.sample
  • #428: [bug]: cli: Output is truncated from "config show help"
  • #430: [bug]: Fix broken links
  • #442: [bug]: func_channel: Some channel options are not settable
  • #445: [bug]: ast_coredumper isn't figuring out file locations properly in all cases
  • #458: [bug]: Memory leak in chan_dahdi when mwimonitor=yes on FXO
  • #462: [new-feature]: app_dial: Add new option to preserve initial stream topology of caller
  • #465: [improvement]: Change res_odbc connection pool request logic to not lock around blocking operations
  • #482: [improvement]: manager.c: Improve clarity of "manager show connected" output
  • #509: [bug]: res_pjsip: Crash when looking up transport state in use
  • #513: [bug]: manager.c: Crash due to regression using wrong free function when built with MALLOC_DEBUG
  • #520: [improvement]: menuselect: Use more specific error message.
  • #530: [bug]: bridge_channel.c: Stream topology change amplification with multiple layers of Local channels
asterisk - Asterisk Release 21.0.2

Published by asterisk-org-access-app[bot] 10 months ago

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

The release artifacts are available for immediate download at
https://github.com/asterisk/asterisk/releases/tag/21.0.2
and
https://downloads.asterisk.org/pub/telephony/asterisk

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

Thank You!

Change Log for Release asterisk-21.0.2

Links:

Summary:

  • res_rtp_asterisk: Fix regression issues with DTLS client check

User Notes:

Upgrade Notes:

Closed Issues:

  • #500: [bug regression]: res_rtp_asterisk doesn't build if pjproject isn't used
  • #503: [bug]: The res_rtp_asterisk DTLS check against ICE candidates fails when it shouldn't
  • #505: [bug]: res_pjproject: ast_sockaddr_cmp() always fails on sockaddrs created by ast_sockaddr_from_pj_sockaddr()
asterisk - Asterisk Release 20.5.2

Published by asterisk-org-access-app[bot] 10 months ago

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

The release artifacts are available for immediate download at
https://github.com/asterisk/asterisk/releases/tag/20.5.2
and
https://downloads.asterisk.org/pub/telephony/asterisk

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.5.2

Links:

Summary:

  • res_rtp_asterisk: Fix regression issues with DTLS client check

User Notes:

Upgrade Notes:

Closed Issues:

  • #500: [bug regression]: res_rtp_asterisk doesn't build if pjproject isn't used
  • #503: [bug]: The res_rtp_asterisk DTLS check against ICE candidates fails when it shouldn't
  • #505: [bug]: res_pjproject: ast_sockaddr_cmp() always fails on sockaddrs created by ast_sockaddr_from_pj_sockaddr()
asterisk - Asterisk Release 18.20.2

Published by asterisk-org-access-app[bot] 10 months ago

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

The release artifacts are available for immediate download at
https://github.com/asterisk/asterisk/releases/tag/18.20.2
and
https://downloads.asterisk.org/pub/telephony/asterisk

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

Thank You!

Change Log for Release asterisk-18.20.2

Links:

Summary:

  • res_rtp_asterisk: Fix regression issues with DTLS client check

User Notes:

Upgrade Notes:

Closed Issues:

  • #500: [bug regression]: res_rtp_asterisk doesn't build if pjproject isn't used
  • #503: [bug]: The res_rtp_asterisk DTLS check against ICE candidates fails when it shouldn't
  • #505: [bug]: res_pjproject: ast_sockaddr_cmp() always fails on sockaddrs created by ast_sockaddr_from_pj_sockaddr()
asterisk - Asterisk Release certified-18.9-cert7

Published by asterisk-org-access-app[bot] 10 months ago

The Asterisk Development Team would like to announce
the release of Certified asterisk-18.9-cert7.

The release artifacts are available for immediate download at
https://github.com/asterisk/asterisk/releases/tag/certified-18.9-cert7
and
https://downloads.asterisk.org/pub/telephony/certified-asterisk

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

Thank You!

Change Log for Release asterisk-certified-18.9-cert7

Links:

Summary:

  • res_rtp_asterisk: Fix regression issues with DTLS client check

User Notes:

Upgrade Notes:

Closed Issues:

  • #500: [bug regression]: res_rtp_asterisk doesn't build if pjproject isn't used
  • #503: [bug]: The res_rtp_asterisk DTLS check against ICE candidates fails when it shouldn't
  • #505: [bug]: res_pjproject: ast_sockaddr_cmp() always fails on sockaddrs created by ast_sockaddr_from_pj_sockaddr()
asterisk - Asterisk Release certified-18.9-cert6

Published by asterisk-org-access-app[bot] 10 months ago

The Asterisk Development Team would like to announce security release
Certified Asterisk 18.9-cert6.

The release artifacts are available for immediate download at
https://github.com/asterisk/asterisk/releases/tag/certified-18.9-cert6
and
https://downloads.asterisk.org/pub/telephony/certified-asterisk

The following security advisories were resolved in this release:

Change Log for Release asterisk-certified-18.9-cert6

Links:

Summary:

  • res_pjsip_header_funcs: Duplicate new header value, don't copy.
  • res_rtp_asterisk.c: Check DTLS packets against ICE candidate list
  • manager.c: Prevent path traversal with GetConfig.
  • res_pjsip: disable raw bad packet logging

User Notes:

  • app_read: Add an option to return terminator on empty digits.

    A new option 'e' has been added to allow Read() to return the
    terminator as the dialed digits in the case where only the terminator
    is entered.

  • format_sln: add .slin as supported file extension

    format_sln now recognizes '.slin' as a valid
    file extension in addition to the existing
    '.sln' and '.raw'.

  • app_directory: Add a 'skip call' option.

    A new option 's' has been added to the Directory() application that
    will skip calling the extension and instead set the extension as
    DIRECTORY_EXTEN channel variable.

  • app_senddtmf: Add option to answer target channel.

    A new option has been added to SendDTMF() which will answer the
    specified channel if it is not already up. If no channel is specified,
    the current channel will be answered instead.

  • cli: increase channel column width

    This change increases the display width on 'core show channels'
    amd 'core show channels verbose'
    For 'core show channels', the Channel name field is increased to
    64 characters and the Location name field is increased to 32
    characters.
    For 'core show channels verbose', the Channel name field is
    increased to 80 characters, the Context is increased to 24
    characters and the Extension is increased to 24 characters.

  • bridge_builtin_features: add beep via touch variable

    Add optional touch variable : TOUCH_MIXMONITOR_BEEP(interval)
    Setting TOUCH_MIXMONITOR_BEEP/TOUCH_MONITOR_BEEP to a valid
    interval in seconds will result in a periodic beep being
    played to the monitored channel upon MixMontior/Monitor
    feature start.
    If an interval less than 5 seconds is specified, the interval
    will default to 5 seconds. If the value is set to an invalid
    interval, the default of 15 seconds will be used.

  • test.c: Fix counting of tests and add 2 new tests

    The "tests" attribute of the "testsuite" element in the
    output XML now reflects only the tests actually requested
    to be executed instead of all the tests registered.
    The "failures" attribute was added to the "testsuite"
    element.
    Also added two new unit tests that just pass and fail
    to be used for testing CI itself.

  • res_mixmonitor: MixMonitorMute by MixMonitor ID

    It is now possible to specify the MixMonitorID when calling
    the manager action: MixMonitorMute. This will allow an
    individual MixMonitor instance to be muted via ID.
    The MixMonitorID can be stored as a channel variable using
    the 'i' MixMonitor option and is returned upon creation if
    this option is used.
    As part of this change, if no MixMonitorID is specified in
    the manager action MixMonitorMute, Asterisk will set the mute
    flag on all MixMonitor audiohooks on the channel. Previous
    behavior would set the flag on the first MixMonitor audiohook
    found.

Upgrade Notes:

Closed Issues:

None

asterisk - Asterisk Release 21.0.1

Published by asterisk-org-access-app[bot] 10 months ago

The Asterisk Development Team would like to announce security release
Asterisk 21.0.1.

The release artifacts are available for immediate download at
https://github.com/asterisk/asterisk/releases/tag/21.0.1
and
https://downloads.asterisk.org/pub/telephony/asterisk

The following security advisories were resolved in this release:

Change Log for Release asterisk-21.0.1

Links:

Summary:

  • res_pjsip_header_funcs: Duplicate new header value, don't copy.
  • res_pjsip: disable raw bad packet logging
  • res_rtp_asterisk.c: Check DTLS packets against ICE candidate list
  • manager.c: Prevent path traversal with GetConfig.

User Notes:

Upgrade Notes:

Closed Issues:

None