Skip to content
Snippets Groups Projects
  1. Nov 09, 2023
  2. Oct 03, 2023
  3. May 08, 2023
    • Sean Bright's avatar
      core: Cleanup gerrit and JIRA references. (#57) · 7677e78b
      Sean Bright authored
      * Remove .gitreview and switch to pulling the main asterisk branch
        version from configure.ac instead.
      
      * Replace references to JIRA with GitHub.
      
      * Other minor cleanup found along the way.
      
      Resolves: #39
      (cherry picked from commit 5c6d5ea38fd4c4966a91fa8fe4cff417407fff7c)
      7677e78b
    • Joshua Colp's avatar
      Revert "app_queue: periodic announcement configurable start time." · 9c5f5358
      Joshua Colp authored
      This reverts commit 3fd0b65bae4b1b14434737ffcf0da4aa9ff717f6.
      
      Reason for revert: Causes segmentation fault.
      
      Change-Id: Ic189c6f7872943a5500d3e71142f0c09d54fcc31
      (cherry picked from commit de15852ef01e9512f822656d2c7b27cf4d2678f5)
      9c5f5358
    • Naveen Albert's avatar
      pbx_dundi: Add PJSIP support. · 99d17db9
      Naveen Albert authored
      Adds PJSIP as a supported technology to DUNDi.
      
      To facilitate this, we now allow an endpoint to be specified
      for outgoing PJSIP calls. We also allow users to force a specific
      channel technology for outgoing SIP-protocol calls.
      
      ASTERISK-28109 #close
      ASTERISK-28233 #close
      
      Change-Id: I2e28e5a5d007bd49e3df113ad567b011103899bf
      (cherry picked from commit b33f92cbb56fb848d2a0aaeb416b7cac4813f804)
      99d17db9
    • George Joseph's avatar
      test.c: Fix counting of tests and add 2 new tests · d0ce6d4e
      George Joseph authored
      The unit test XML output was counting all registered tests as "run"
      even when only a subset were actually requested to be run and
      the "failures" attribute was missing.
      
      * 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 2 new unit tests that just pass and fail to be
      used for CI testing.
      
      Change-Id: Ia137814b5aeb0e1a44c75034bd3615c26021da69
      (cherry picked from commit a0fd95ef52593e4b7471d8045683f81b101d014a)
      d0ce6d4e
    • Mike Bradeen's avatar
      bridge_builtin_features: add beep via touch variable · 2ac8388c
      Mike Bradeen authored
      Add periodic beep option to one-touch recording by setting
      the touch variable TOUCH_MONITOR_BEEP or
      TOUCH_MIXMONITOR_BEEP to the desired interval in seconds.
      
      If the interval is less than 5 seconds, a minimum of 5
      seconds will be imposed.  If the interval is set to an
      invalid value, it will default to 15 seconds.
      
      A new test event PERIODIC_HOOK_ENABLED was added to the
      func_periodic_hook hook_on function to indicate when
      a hook is started.  This is so we can test that the touch
      variable starts the hook as expected.
      
      ASTERISK-30446
      
      Change-Id: I800e494a789ba7a930bbdcd717e89d86040d6661
      (cherry picked from commit ffe346b2de8d175ba60e0860546c32c25cb88d9f)
      2ac8388c
    • Mike Bradeen's avatar
      res_mixmonitor: MixMonitorMute by MixMonitor ID · e00eaa74
      Mike Bradeen authored
      While it is possible to create multiple mixmonitor instances
      on a channel, it was not previously possible to mute individual
      instances.
      
      This change includes the ability to specify the MixMonitorID
      when calling the manager action: MixMonitorMute.  This will
      allow an individual MixMonitor instance to be muted via id.
      This id can be stored as a channel variable using the 'i'
      MixMonitor option.
      
      As part of this change, if no MixMonitorID is specified in
      the manager action MixMonitorMute, Asterisk will set the mute
      flag on all MixMonitor spy-type audiohooks on the channel.
      This is done via the new audiohook function:
      ast_audiohook_set_mute_all.
      
      ASTERISK-30464
      
      Change-Id: Ibba8c7e750577aa1595a24b23316ef445245be98
      (cherry picked from commit fa635a872ea410d656d1f912a49bae66e95f1ae9)
      e00eaa74
    • Mike Bradeen's avatar
      format_sln: add .slin as supported file extension · 3a4fd2fa
      Mike Bradeen authored
      Adds '.slin' to existing supported file extensions:
      .sln and .raw
      
      ASTERISK-30465
      
      Change-Id: Ice848addc03a64c8404b87cb5d3b13399c57e496
      (cherry picked from commit 8d2ffc8aa54315b937712bc725fd813a37e73158)
      3a4fd2fa
    • Naveen Albert's avatar
      app_senddtmf: Add SendFlash AMI action. · 3dcf6ddd
      Naveen Albert authored
      Adds an AMI action to send a flash event
      on a channel.
      
      ASTERISK-30440 #close
      
      Change-Id: I4707aeecb3cd8f3e63fd0c3fe009798943c369c9
      (cherry picked from commit 3556ca239aa4b48eb31df4e19f54571d1ab3bd14)
      3dcf6ddd
    • Mike Bradeen's avatar
      cli: increase channel column width · 5a85b372
      Mike Bradeen authored
      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.
      
      ASTERISK-30455
      
      Change-Id: Ibec3742ce360ffc93bc56e9984c2a21dabc4d5e1
      (cherry picked from commit 405211eff757c4e91477d4f6cc6727d3e81057ae)
      5a85b372
    • Jaco Kroon's avatar
      app_queue: periodic announcement configurable start time. · d6e733d4
      Jaco Kroon authored
      
      This newly introduced periodic-announce-startdelay makes it possible to
      configure the initial start delay of the first periodic announcement
      after which periodic-announce-frequency takes over.
      
      ASTERISK-30437 #close
      Change-Id: Ia79984b6377ef78f167ad9ea2ac084bec29955d0
      Signed-off-by: default avatarJaco Kroon <jaco@uls.co.za>
      (cherry picked from commit 3fd0b65bae4b1b14434737ffcf0da4aa9ff717f6)
      d6e733d4
    • Holger Hans Peter Freyther's avatar
      res_http_media_cache: Introduce options and customize · 723c9093
      Holger Hans Peter Freyther authored
      Make the existing CURL parameters configurable and allow
      to specify the usable protocols, proxy and DNS timeout.
      
      ASTERISK-30340
      
      Change-Id: I2eb02ef44190e026716720419bcbdbcc8125777b
      (cherry picked from commit 8f088aa0f7ba5a4b955a20ad2854465af3522e84)
      723c9093
  4. Mar 02, 2023
  5. Feb 27, 2023
    • Mike Bradeen's avatar
      app_read: Add an option to return terminator on empty digits. · 5c11d7ad
      Mike Bradeen authored
      Adds 'e' option to allow Read() to return the terminator as the
      dialed digits in the case where only the terminator is entered.
      
      ie; if "#" is entered, return "#" if the 'e' option is set and ""
      if it is not.
      
      ASTERISK-30411
      
      Change-Id: I49f3221824330a193a20c660f99da0f1fc2cbbc5
      5c11d7ad
    • cmaj's avatar
      res_phoneprov.c: Multihomed SERVER cache prevention · 5b0e3444
      cmaj authored
      Phones moving between subnets on multi-homed server have their
      initially connected interface IP cached in the SERVER variable,
      even when it is not specified in the configuration files. This
      prevents phones from obtaining the correct SERVER variable value
      when they move to another subnet.
      
      ASTERISK-30388 #close
      Reported-by: cmaj
      
      Change-Id: I1d18987a9d58e85556b4c4a6814ce7006524cc92
      5b0e3444
    • Mike Bradeen's avatar
      app_directory: Add a 'skip call' option. · 2308afed
      Mike Bradeen authored
      Adds 's' option to skip calling the extension and instead set the
      extension as DIRECTORY_EXTEN channel variable.
      
      ASTERISK-30405
      
      Change-Id: Ib9d9db1ba5b7524594c640461b4aa8f752db8299
      2308afed
    • Mike Bradeen's avatar
      app_senddtmf: Add option to answer target channel. · 98742388
      Mike Bradeen authored
      Adds a new option 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.
      
      ASTERISK-30422
      
      Change-Id: Iddcbd501fcdf9fef0f453b7a8115a90b11f1d085
      98742388
  6. Jan 31, 2023
    • Naveen Albert's avatar
      app_signal: Add signaling applications · 88b2c741
      Naveen Albert authored
      Adds the Signal and WaitForSignal
      applications, which can be used for inter-channel
      signaling in the dialplan.
      
      Signal supports sending a signal to other channels
      listening for a signal of the same name, with an
      optional data payload. The signal is received by
      all channels waiting for that named signal.
      
      ASTERISK-29810 #close
      
      Change-Id: Ic34439de3d60f8609357666a465c354d81f5fef3
      88b2c741
  7. Jan 30, 2023
    • Naveen Albert's avatar
      func_json: Enhance parsing capabilities of JSON_DECODE · 8a45cd7a
      Naveen Albert authored
      Adds support for arrays to JSON_DECODE by allowing the
      user to print out entire arrays or index a particular
      key or print the number of keys in a JSON array.
      
      Additionally, adds support for recursively iterating a
      JSON tree in a single function call, making it easier
      to parse JSON results with multiple levels. A maximum
      depth is imposed to prevent potentially blowing
      the stack.
      
      Also fixes a bug with the unit tests causing an empty
      string to be printed instead of the actual test result.
      
      ASTERISK-29913 #close
      
      Change-Id: I603940b216a3911b498fc6583b18934011ef5d5b
      8a45cd7a
  8. Jan 26, 2023
    • Naveen Albert's avatar
      res_pjsip_session: Add overlap_context option. · a1da8042
      Naveen Albert authored
      Adds the overlap_context option, which can be used
      to explicitly specify a context to use for overlap
      dialing extension matches, rather than forcibly
      using the context configured for the endpoint.
      
      ASTERISK-30262 #close
      
      Change-Id: Ibbcd4a8b11402428a187fb56b8d4e7408774a0db
      a1da8042
  9. Jan 13, 2023
    • Sean Bright's avatar
      app_playback.c: Fix PLAYBACKSTATUS regression. · ef16eaee
      Sean Bright authored
      In Asterisk 11, if a channel was redirected away during Playback(),
      the PLAYBACKSTATUS variable would be set to SUCCESS. In Asterisk 12
      (specifically commit 7d9871b3) that
      behavior was inadvertently changed and the same operation would result
      in the PLAYBACKSTATUS variable being set to FAILED. The Asterisk 11
      behavior has been restored.
      
      Partial fix for ASTERISK~25661.
      
      Change-Id: I53f54e56b59b61c99403a481b6cb8d88b5a559ff
      ef16eaee
  10. Jan 10, 2023
  11. Jan 09, 2023
    • George Joseph's avatar
      res_rtp_asterisk: Asterisk Media Experience Score (MES) · 4710f37e
      George Joseph authored
      -----------------
      
      This commit reinstates MES with some casting fixes to the
      functions in time.h that convert between doubles and timeval
      structures.  The casting issues were causing incorrect
      timestamps to be calculated which caused transcoding from/to
      G722 to produce bad or no audio.
      
      ASTERISK-30391
      
      -----------------
      
      This module has been updated to provide additional
      quality statistics in the form of an Asterisk
      Media Experience Score.  The score is avilable using
      the same mechanisms you'd use to retrieve jitter, loss,
      and rtt statistics.  For more information about the
      score and how to retrieve it, see
      https://wiki.asterisk.org/wiki/display/AST/Media+Experience+Score
      
      * Updated chan_pjsip to set quality channel variables when a
        call ends.
      * Updated channels/pjsip/dialplan_functions.c to add the ability
        to retrieve the MES along with the existing rtcp stats when
        using the CHANNEL dialplan function.
      * Added the ast_debug_rtp_is_allowed and ast_debug_rtcp_is_allowed
        checks for debugging purposes.
      * Added several function to time.h for manipulating time-in-samples
        and times represented as double seconds.
      * Updated rtp_engine.c to pass through the MES when stats are
        requested.  Also debug output that dumps the stats when an
        rtp instance is destroyed.
      * Updated res_rtp_asterisk.c to implement the calculation of the
        MES.  In the process, also had to update the calculation of
        jitter.  Many debugging statements were also changed to be
        more informative.
      * Added a unit test for internal testing.  The test should not be
        run during normal operation and is disabled by default.
      
      Change-Id: I4fce265965e68c3fdfeca55e614371ee69c65038
      4710f37e
    • George Joseph's avatar
      Revert "res_rtp_asterisk: Asterisk Media Experience Score (MES)" · 62ca063f
      George Joseph authored
      This reverts commit d454801c.
      
      Reason for revert: Issue when transcoding to/from g722
      
      Change-Id: I09f49e171b1661548657a9ba7a978c29d0b5be86
      62ca063f
  12. Jan 05, 2023
    • Naveen Albert's avatar
      app_broadcast: Add Broadcast application · e06fe8e3
      Naveen Albert authored
      Adds a new application, Broadcast, which can be used for
      one-to-many transmission and many-to-one reception of
      channel audio in Asterisk. This is similar to ChanSpy,
      except it is designed for multiple channel targets instead
      of a single one. This can make certain kinds of audio
      manipulation more efficient and streamlined. New kinds
      of audio injection impossible with ChanSpy are also made
      possible.
      
      ASTERISK-30180 #close
      
      Change-Id: I7ba72f765dbab9b58deeae028baca3f4f8377726
      e06fe8e3
  13. Jan 03, 2023
    • George Joseph's avatar
      res_rtp_asterisk: Asterisk Media Experience Score (MES) · d454801c
      George Joseph authored
      This module has been updated to provide additional
      quality statistics in the form of an Asterisk
      Media Experience Score.  The score is avilable using
      the same mechanisms you'd use to retrieve jitter, loss,
      and rtt statistics.  For more information about the
      score and how to retrieve it, see
      https://wiki.asterisk.org/wiki/display/AST/Media+Experience+Score
      
      * Updated chan_pjsip to set quality channel variables when a
        call ends.
      * Updated channels/pjsip/dialplan_functions.c to add the ability
        to retrieve the MES along with the existing rtcp stats when
        using the CHANNEL dialplan function.
      * Added the ast_debug_rtp_is_allowed and ast_debug_rtcp_is_allowed
        checks for debugging purposes.
      * Added several function to time.h for manipulating time-in-samples
        and times represented as double seconds.
      * Updated rtp_engine.c to pass through the MES when stats are
        requested.  Also debug output that dumps the stats when an
        rtp instance is destroyed.
      * Updated res_rtp_asterisk.c to implement the calculation of the
        MES.  In the process, also had to update the calculation of
        jitter.  Many debugging statements were also changed to be
        more informative.
      * Added a unit test for internal testing.  The test should not be
        run during normal operation and is disabled by default.
      
      ASTERISK-30280
      
      Change-Id: I458cb9a311e8e5dc1db769b8babbcf2e093f107a
      d454801c
  14. Dec 15, 2022
  15. Dec 09, 2022
    • Michael Kuron's avatar
      manager: AOC-S support for AOCMessage · 5c114dcb
      Michael Kuron authored
      ASTERISK-21502
      
      Change-Id: I051b778f8c862d3b4794d28f2f3d782316707b08
      5c114dcb
    • Michael Kuron's avatar
      res_pjsip_aoc: New module for sending advice-of-charge with chan_pjsip · fee9012f
      Michael Kuron authored
      
      chan_sip supported sending AOC-D and AOC-E information in SIP INFO
      messages in an "AOC" header in a format that was originally defined by
      Snom. In the meantime, ETSI TS 124 647 introduced an XML-based AOC
      format that is supported by devices from multiple vendors, including
      Snom phones with firmware >= 8.4.2 (released in 2010).
      
      This commit adds a new res_pjsip_aoc module that inserts AOC information
      into outgoing messages or sends SIP INFO messages as described below.
      It also fixes a small issue in res_pjsip_session which didn't always
      call session supplements on outgoing_response.
      
      * AOC-S in the 180/183/200 responses to an INVITE request
      * AOC-S in SIP INFO (if a 200 response has already been sent or if the
        INVITE was sent by Asterisk)
      * AOC-D in SIP INFO
      * AOC-D in the 200 response to a BYE request (if the client hangs up)
      * AOC-D in a BYE request (if Asterisk hangs up)
      * AOC-E in the 200 response to a BYE request (if the client hangs up)
      * AOC-E in a BYE request (if Asterisk hangs up)
      
      The specification defines one more, AOC-S in an INVITE request, which
      is not implemented here because it is not currently possible in
      Asterisk to have AOC data ready at this point in call setup. Once
      specifying AOC-S via the dialplan or passing it through from another
      SIP channel's INVITE is possible, that might be added.
      
      The SIP INFO requests are sent out immediately when the AOC indication
      is received. The others are inserted into an appropriate outgoing
      message whenever that is ready to be sent. In the latter case, the XML
      is stored in a channel variable at the time the AOC indication is
      received. Depending on where the AOC indications are coming from (e.g.
      PRI or AMI), it may not always be possible to guarantee that the AOC-E
      is available in time for the BYE.
      
      Successfully tested AOC-D and both variants of AOC-E with a Snom D735
      running firmware 10.1.127.10. It does not appear to properly support
      AOC-S however, so that could only be tested by inspecting SIP traces.
      
      ASTERISK-21502 #close
      Reported-by: default avatarMatt Jordan <mjordan@digium.com>
      
      Change-Id: Iebb7ad0d5f88526bc6629d3a1f9f11665434d333
      fee9012f
    • Naveen Albert's avatar
      app_voicemail: Fix missing email in msg_create_from_file. · b9c031c1
      Naveen Albert authored
      msg_create_from_file currently does not dispatch emails,
      which means that applications using this function, such
      as MixMonitor, will not trigger notifications to users
      (only AMI events are sent our currently). This is inconsistent
      with other ways users can receive voicemail.
      
      This is fixed by adding an option that attempts to send
      an email and falling back to just the notifications as
      done now if that fails. The existing behavior remains
      the default.
      
      ASTERISK-30283 #close
      
      Change-Id: I597cbb9cf971a18d8776172b26ab187dc096a5c7
      b9c031c1
    • Naveen Albert's avatar
      res_hep: Add support for named capture agents. · 531eacd6
      Naveen Albert authored
      Adds support for the capture agent name field
      of the Homer protocol to Asterisk by allowing
      users to specify a name that will be sent to
      the HEP server.
      
      ASTERISK-30322 #close
      
      Change-Id: I6136583017f9dd08daeb8be02f60fb8df4639a2b
      531eacd6
  16. Dec 08, 2022
    • Naveen Albert's avatar
      app_if: Adds conditional branch applications · b365ea86
      Naveen Albert authored
      Adds the If, ElseIf, Else, ExitIf, and EndIf
      applications for conditional execution
      of a block of dialplan, similar to the While,
      EndWhile, and ExitWhile applications. The
      appropriate branch is executed at most once
      if available and may be broken out of while
      inside.
      
      ASTERISK-29497
      
      Change-Id: I3aa3bd35a5add82465c6ee9bd86b64601f0e1f49
      b365ea86
    • Naveen Albert's avatar
      res_pjsip_header_funcs: Add custom parameter support. · 406143ae
      Naveen Albert authored
      Adds support for custom URI and header parameters
      in the From header in PJSIP. Parameters can be
      both set and read using this function.
      
      ASTERISK-30150 #close
      
      Change-Id: Ifb1bc3c512ad5f6faeaebd7817f004a2ecbd6428
      406143ae
    • Naveen Albert's avatar
      xmldoc: Allow XML docs to be reloaded. · 52c7d3ed
      Naveen Albert authored
      The XML docs are currently only loaded on
      startup with no way to update them during runtime.
      This makes it impossible to load modules that
      use ACO/Sorcery (which require documentation)
      if they are added to the source tree and built while
      Asterisk is running (e.g. external modules).
      
      This adds a CLI command to reload the XML docs
      during runtime so that documentation can be updated
      without a full restart of Asterisk.
      
      ASTERISK-30289 #close
      
      Change-Id: I4f265b0e5517e757c5453a0f241201a5788d3a07
      52c7d3ed
    • Naveen Albert's avatar
      app_mixmonitor: Add option to use real Caller ID for voicemail. · 691178c4
      Naveen Albert authored
      MixMonitor currently uses the Connected Line as the Caller ID
      for voicemails. This is due to the implementation being written
      this way for use with Digium phones. However, in general this
      is not correct for generic usage in the dialplan, and people
      may need the real Caller ID instead. This adds an option to do that.
      
      ASTERISK-30286 #close
      
      Change-Id: I3d0ce76dfe75e2a614e0f709ab27acbd2478267c
      691178c4
  17. Dec 03, 2022
  18. Nov 29, 2022
    • Naveen Albert's avatar
      pbx_builtins: Allow Answer to return immediately. · c7df5ee7
      Naveen Albert authored
      The Answer application currently waits for up to 500ms
      for media, even if users specify a different timeout.
      
      This adds an option to not wait for media on the channel
      by doing a raw answer instead. The default 500ms threshold
      is also documented.
      
      ASTERISK-30308 #close
      
      Change-Id: Id59cd340c44b8b8b2384c479e17e5123e917cba4
      c7df5ee7
    • Naveen Albert's avatar
      chan_dahdi: Allow FXO channels to start immediately. · 5ede4e21
      Naveen Albert authored
      Currently, chan_dahdi will wait for at least one
      ring before an incoming call can enter the dialplan.
      This is generally necessary in order to receive
      the Caller ID spill and/or distinctive ringing
      detection.
      
      However, if neither of these is required, then there
      is nothing gained by waiting for one ring and this
      unnecessarily delays call setup. Users can now
      use immediate=yes to make FXO channels (FXS signaled)
      begin processing dialplan as soon as Asterisk receives
      the call.
      
      ASTERISK-30305 #close
      
      Change-Id: I20818b370b2e4892c7f40c8a8753fa06a81750b5
      5ede4e21
  19. Nov 08, 2022
    • Naveen Albert's avatar
      app_mixmonitor: Add option to delete files on exit. · 6e59b01e
      Naveen Albert authored
      Adds an option that allows MixMonitor to delete
      its copy of any recording files before exiting.
      
      This can be handy in conjunction with options
      like m, which copy the file elsewhere, and the
      original files may no longer be needed.
      
      ASTERISK-30284 #close
      
      Change-Id: Ida093679c67e300efc154a97b6d8ec0f104e581e
      6e59b01e
Loading