Skip to content
Snippets Groups Projects
  1. Mar 11, 2022
    • Kfir Itzhak's avatar
      app_queue: Add QueueWithdrawCaller AMI action · 3959d20b
      Kfir Itzhak authored
      This adds a new AMI action called QueueWithdrawCaller.
      This AMI action makes it possible to withdraw a caller from a queue,
      in a safe and a generic manner.
      This can be useful for retrieving a specific call and
      dispatching it to a specific extension.
      It works by signaling the caller to exit the queue application
      whenever it can. Therefore, it is not guaranteed
      that the call will leave the queue.
      
      ASTERISK-29909 #close
      
      Change-Id: Ic15aa238e23b2884abdcaadff2fda7679e29b7ec
      3959d20b
  2. Feb 25, 2022
    • Naveen Albert's avatar
      documentation: Add since tag to xmldocs DTD · 3499aea8
      Naveen Albert authored
      Adds the since tag to the documentation DTD so
      that individual applications, functions, etc.
      can now specify when they were added to Asterisk.
      
      This tag is added at the individual application,
      function, etc. level as opposed to at the module
      level because modules can expand over time as new
      functionality is added, and granularity only
      to the module level would generally not be useful.
      
      This enables the ability to more easily determine
      when new functionality was added to Asterisk, down
      to minor version as opposed to just by major version.
      This makes it easier for users to write more portable
      dialplan if desired to not use functionality that may
      not be widely available yet.
      
      ASTERISK-29896 #close
      
      Change-Id: Ibbb35c702d8038bdc3fd0a944fbfa69384cc15d5
      3499aea8
  3. Feb 23, 2022
    • Naveen Albert's avatar
      app_voicemail: Emit warning if asking for nonexistent mailbox. · 2016b331
      Naveen Albert authored
      Currently, if VoiceMailMain is called with a mailbox, if that
      mailbox doesn't exist, then the application silently falls back
      to prompting the user for the mailbox, as if no arguments were
      provided.
      
      However, if a specific mailbox is requested and it doesn't exist,
      then no warning at all is emitted.
      
      This fixes this behavior to now warn if a specifically
      requested mailbox could not be accessed, before falling back to
      prompting the user for the correct mailbox.
      
      ASTERISK-29920 #close
      
      Change-Id: Ib4093b88cd661a2cabc5d685777d4e2f0ebd20a4
      2016b331
    • Naveen Albert's avatar
      app_mp3: Document and warn about HTTPS incompatibility. · da801e24
      Naveen Albert authored
      mpg123 doesn't support HTTPS, but the MP3Player application
      doesn't document this or warn the user about this. HTTPS
      streams have become more common nowadays and users could
      reasonably try to play them without being aware they should
      use the HTTP stream instead.
      
      This adds documentation to note this limitation. It also
      throws a warning if users try to use the HTTPS stream to
      tell them to use the HTTP stream instead.
      
      ASTERISK-29900 #close
      
      Change-Id: Ie3b029be5258c5a701f71ed3b1a7a80d1e03b827
      da801e24
  4. Feb 17, 2022
    • Naveen Albert's avatar
      app_mf: Add max digits option to ReceiveMF. · 332eed3a
      Naveen Albert authored
      Adds an option to the ReceiveMF application to allow specifying a
      maximum number of digits.
      
      Originally, this capability was not added to ReceiveMF as it was
      with ReceiveSF because typically a ST digit is used to denote that
      sending of digits is complete. However, there are certain signaling
      protocols which simply transmit a digit (such as Expanded In-Band
      Signaling) and for these, it's necessary to be able to read a
      certain number of digits, as opposed to until receiving a ST digit.
      
      This capability is added as an option, as opposed to as a parameter,
      to remain compatible with existing usage (and not shift the
      parameters).
      
      ASTERISK-29877 #close
      
      Change-Id: I4229167c9aa69b87402c3c2a9065bd8dfa973a0b
      332eed3a
  5. Feb 11, 2022
    • Alexei Gradinari's avatar
      app_queue: load queues and members from Realtime when needed · fcdeb3e5
      Alexei Gradinari authored
      There are a lot of Queue AMI actions and Queue applications
      which do not load queue and queue members from Realtime.
      
      AMI actions
      QueuePause - if queue not in memory - response "Interface not found".
      QueueStatus/QueueSummary - if queue not in memory - empty response.
      
      Applications:
      PauseQueueMember - if queue not in memory
      	Attempt to pause interface %s, not found
      UnpauseQueueMember - if queue not in memory
      	Attempt to unpause interface xxxxx, not found
      
      This patch adds a new function load_realtime_queues
      which loads queue and queue members for desired queue
      or all queues and all members if param 'queuename' is NULL or empty.
      Calls the function load_realtime_queues when needed.
      
      Also this patch fixes leak of ast_config in function set_member_value.
      
      Also this patch fixes incorrect LOG_WARNING when pausing/unpausing
      already paused/unpaused member.
      The function ast_update_realtime returns 0 when no record modified.
      So 0 is not an error to warn about.
      
      ASTERISK-29873 #close
      ASTERISK-18416 #close
      ASTERISK-27597 #close
      
      Change-Id: I554ee0eebde93bd8f49df7f84b74acb21edcb99c
      fcdeb3e5
  6. Jan 20, 2022
  7. Jan 06, 2022
    • Sean Bright's avatar
      utils.c: Remove all usages of ast_gethostbyname() · 0bbef4d8
      Sean Bright authored
      gethostbyname() and gethostbyname_r() are deprecated in favor of
      getaddrinfo() which we use in the ast_sockaddr family of functions.
      
      ASTERISK-29819 #close
      
      Change-Id: Ie277c0ef768d753b169c121ef570a71665692ab7
      0bbef4d8
  8. Jan 05, 2022
    • Mark Petersen's avatar
      app_queue.c: Support for Nordic syntax in announcements · dea71ddb
      Mark Petersen authored
      adding support for playing the correct en/et for nordic languages
      by adding 'n' for neuter gender in the relevant ast_say_number
      
      ASTERISK-29827
      
      Change-Id: I03ebc827d2f0dc95132ab2f42799893c70edc5b1
      dea71ddb
    • Naveen Albert's avatar
      app_mp3: Throw warning on nonexistent stream · 775c371d
      Naveen Albert authored
      Currently, the MP3Player application doesn't
      emit a warning if attempting to play a stream
      which no longer exists. This can be a common
      scenario as many mp3 streams are valid at some
      point but can disappear at any time.
      
      Now a warning is thrown if attempting to play
      a nonexistent MP3 stream, instead of silently
      exiting.
      
      ASTERISK-29829 #close
      
      Change-Id: I53a0bf1ed1740166655eb66fe7675f6f808bf535
      775c371d
    • Naveen Albert's avatar
      documentation: Add missing AMI documentation · b37feb42
      Naveen Albert authored
      Adds missing documentation for some channel,
      bridge, and queue events.
      
      ASTERISK-24427
      ASTERISK-29515
      
      Change-Id: I92b06b88c8cadc0155f95ebe3e870b3e795a8c64
      b37feb42
    • Naveen Albert's avatar
      app_sf: Add full tech-agnostic SF support · dd6df425
      Naveen Albert authored
      Adds tech-agnostic support for SF signaling
      by adding SF sender and receiver applications
      as well as Dial integration.
      
      ASTERISK-29802 #close
      
      Change-Id: I7ec50752e9a661af639425e5d1e339f17411bcad
      dd6df425
    • Steve Davies's avatar
      app_queue: Fix hint updates, allow dup. hints · 16a63027
      Steve Davies authored
      A previous patch for ASTERISK_29578 caused a 'leak' of
      extension state information across queues, causing the
      state of the first member of unrelated queues to be
      updated in addition to the correct member. Which queues
      and members depended on the order of queues in the
      iterator.
      
      Additionally, it is possible to use the same 'hint:' on
      multiple queue members, so the update cannot break out
      of the update loop early when a match is found.
      
      ASTERISK-29806 #close
      
      Change-Id: If2c1d1cc2a752afd9286d79710fc818596e7a7ad
      16a63027
  9. Dec 15, 2021
  10. Dec 14, 2021
    • Mark Petersen's avatar
      app_voicemail.c: Support for Danish syntax in VM · a4c42e70
      Mark Petersen authored
      added support for playing the correct plural sound file
      dependen on where you have 1 or multipe messages
      based on the existing SE/NO code
      
      ASTERISK-29797
      
      Change-Id: I88aa814d02f3772bb80b474204b1ffb26fe438c2
      a4c42e70
  11. Dec 13, 2021
    • Naveen Albert's avatar
      app_sendtext: Add ReceiveText application · 2f1eb561
      Naveen Albert authored
      Adds a ReceiveText application that can be used in
      conjunction with SendText. Currently, there is no
      way in Asterisk to receive text in the dialplan
      (or anywhere else, really). This allows for Asterisk
      to be the recipient of text instead of just the sender.
      
      ASTERISK-29759 #close
      
      Change-Id: Ica2c354a42bff69f323a0493d3a7cd0fb129d52d
      2f1eb561
    • Naveen Albert's avatar
      app_mf: Add full tech-agnostic MF support · 2b2b708d
      Naveen Albert authored
      Adds tech-agnostic support for MF signaling by adding
      MF sender and receiver applications as well as Dial
      integration.
      
      ASTERISK-29496-mf #do-not-close
      
      Change-Id: I61962b359b8ec4cfd05df877ddf9f5b8f71927a4
      2b2b708d
    • Alexander Traud's avatar
      progdocs: Fix Doxygen left-overs. · 4b6c7257
      Alexander Traud authored
      Change-Id: I5b5cf9c9cbbe00ba8b379a8d162ac67445d39016
      4b6c7257
  12. Dec 06, 2021
  13. Dec 02, 2021
  14. Nov 30, 2021
    • Naveen Albert's avatar
      documentation: Standardize examples · bcb7aee7
      Naveen Albert authored
      Most examples in the XML documentation use the
      example tag to demonstrate examples, which gets
      parsed specially in the Wiki to make it easier
      to follow for users.
      
      This fixes a few modules to use the example
      tag instead of vanilla para tags to bring them
      in line with the standard syntax.
      
      ASTERISK-29777 #close
      
      Change-Id: I9acb6cc5faf1d220e73c6dd28592371d768d279b
      bcb7aee7
    • Naveen Albert's avatar
      app_voicemail: Refactor email generation functions · 70cdb0f9
      Naveen Albert authored
      Refactors generic functions used for email generation
      into utils.c so that they can be used by multiple
      modules, including app_voicemail and app_minivm,
      to avoid code duplication.
      
      ASTERISK-29715 #close
      
      Change-Id: I1de0ed3483623e9599711129edc817c45ad237ee
      70cdb0f9
  15. Nov 18, 2021
  16. Nov 17, 2021
    • Naveen Albert's avatar
      app_morsecode: Fix deadlock · 721026ff
      Naveen Albert authored
      Fixes a deadlock in app_morsecode caused by locking
      the channel twice when reading variables from the
      channel. The duplicate lock is simply removed.
      
      ASTERISK-29744 #close
      
      Change-Id: I204000701f123361d7f85e0498fedc90243c75e4
      721026ff
  17. Nov 16, 2021
    • Naveen Albert's avatar
      app_read: Fix custom terminator functionality regression · 3c4b7cef
      Naveen Albert authored
      Currently, when the t option is specified with no arguments,
      the # character is still treated as a terminator, even though
      no character should be treated as a terminator.
      
      This is because a previous regression fix was modified to
      remove the use of NULL as a default altogether. However,
      NULL and an empty string actually refer to different
      arrangements and should be treated differently. NULL is the
      default terminator (#), while an empty string removes the
      terminator altogether. This is the behavior being used by
      the rest of the core.
      
      Additionally, since S_OR catches empty strings as well as
      NULL (not intended), this is changed to a ternary operator
      instead, which fixes the behavior.
      
      ASTERISK-29705 #close
      
      Change-Id: I9b6b72196dd04f5b1e0ab5aa1b0adf627725e086
      3c4b7cef
  18. Nov 15, 2021
    • Josh Soref's avatar
      apps: Spelling fixes · e7b1dcf7
      Josh Soref authored
      Correct typos of the following word families:
      
      simultaneously
      administrator
      directforward
      attachfmt
      dailplan
      automatically
      applicable
      nouns
      explicit
      outside
      sponsored
      attachment
      audio
      spied
      doesn't
      counting
      encoded
      implements
      recursively
      emailaddress
      arguments
      queuerules
      members
      priority
      output
      advanced
      silencethreshold
      brazilian
      debugging
      argument
      meadmin
      formatting
      integrated
      sneakiness
      
      ASTERISK-29714
      
      Change-Id: Ie5ecaec91c00b26309da4e51cfc0991a5bb7d092
      e7b1dcf7
  19. Nov 08, 2021
    • Naveen Albert's avatar
      app_voicemail: Fix phantom voicemail bug on rerecord · 92857e70
      Naveen Albert authored
      If users are able to press # for options while leaving
      a message and then press 3 to rerecord the message, if
      the caller hangs up during the rerecord prompt but before
      Asterisk starts recording a message, then an "empty"
      voicemail gets processed whereby an email gets sent out
      notifying the user of a 0:00 duration message. The file
      doesn't actually exist, so playback will fail since there
      was no message to begin with.
      
      This adds a check after the streaming of the rerecord
      announcement to see if the caller has hung up. If so,
      we bail out early so that we can clean up properly.
      
      ASTERISK-29391 #close
      
      Change-Id: Id965d72759a2fd3b39afb76fec08aaebebe75c31
      92857e70
  20. Oct 25, 2021
  21. Oct 21, 2021
    • Shloime Rosenblum's avatar
      apps/app_playback.c: Add 'mix' option to app_playback · 63c8d12e
      Shloime Rosenblum authored
      I am adding a mix option that will play by filename and say.conf unlike
      say option that will only play with say.conf. It
      will look on the format of the name, if it is like say it play with
      say.conf if not it will play the file name.
      
      ASTERISK-29662
      
      Change-Id: I815816916a308f0fa8f165140dc15772dcbd547a
      63c8d12e
  22. Sep 30, 2021
    • Naveen Albert's avatar
      app_read: Fix null pointer crash · 5a6f1407
      Naveen Albert authored
      If the terminator character is not explicitly specified
      and an indications tone is used for reading a digit,
      there is no null pointer check so Asterisk crashes.
      This prevents null usage from occuring.
      
      ASTERISK-29673 #close
      
      Change-Id: Ie941833e123c3dbfb88371b5de5edbbe065514ac
      5a6f1407
  23. Sep 21, 2021
    • Naveen Albert's avatar
      app_queue: Fix hint updates for included contexts · cfd0246d
      Naveen Albert authored
      Previously, if custom hints were used with the hint:
      format in app_queue, when device state changes occured,
      app_queue would only do a literal string comparison of
      the context used for the hint in app_queue and the context
      of the hint which just changed state. This caused hints
      to not update and become stale if the context associated
      with the agent included the context which actually changes
      state, essentially completely breaking device state for
      any such agents defined in this manner.
      
      This fix adds an additional check to ensure that included
      contexts are also compared against the context which changed
      state, so that the behavior is correct no matter whether the
      context is specified to app_queue directly or indirectly.
      
      ASTERISK-29578 #close
      
      Change-Id: I8caf2f8da8157ef3d9ea71a8568c1eec95592b78
      cfd0246d
    • Naveen Albert's avatar
      logger: Add custom logging capabilities · a65bb134
      Naveen Albert authored
      Adds the ability for users to log to custom log levels
      by providing custom log level names in logger.conf. Also
      adds a logger show levels CLI command.
      
      ASTERISK-29529
      
      Change-Id: If082703cf81a436ae5a565c75225fa8c0554b702
      a65bb134
    • Sean Bright's avatar
      app_externalivr.c: Fix mixed leading whitespace in source code. · dce142ba
      Sean Bright authored
      No functional changes.
      
      Change-Id: I46514152c0af67f395526374aaa847ccd6a85378
      dce142ba
  24. Sep 15, 2021
    • Carlos Oliva's avatar
      app_mp3: Force output to 16 bits in mpg123 · e8f7b530
      Carlos Oliva authored
      In new mpg123 versions (since 1.26) the default output is 32 bits
      Asterisk expects the output in 16 bits, so we force the output to be on 16 bits.
      It will work wit new and old versions of mpg123.
      Thanks Thomas Orgis <thomas-forum@orgis.org> for giving the key!
      
      ASTERISK-29635 #close
      
      Change-Id: I88c7740118b5af4e895bd8b765b68ed5c11fc816
      e8f7b530
  25. Sep 14, 2021
    • Naveen Albert's avatar
      app_mf: Add channel agnostic MF sender · 60daa8f7
      Naveen Albert authored
      Adds a SendMF application and PlayMF manager
      event to send arbitrary R1 MF tones on the
      current or specified channel.
      
      ASTERISK-29496
      
      Change-Id: I5d89afdbccee3f86cc702ed96d882f3d351327a4
      60daa8f7
  26. Sep 13, 2021
    • Naveen Albert's avatar
      app_stack: Include current location if branch fails · c736cef3
      Naveen Albert authored
      Previously, the error emitted when app_stack tries
      to branch to a dialplan location that doesn't exist
      has included only the information about the attempted
      branch in the error log. This adds the current location
      as well so users can see where the branch failed in
      the logs.
      
      ASTERISK-29626
      
      Change-Id: Ia23502ab2ad21485a1ac74295063a8f25a6df5ce
      c736cef3
  27. Sep 09, 2021
  28. Sep 02, 2021
    • Sean Bright's avatar
      config_options: Handle ACO arrays correctly in generated XML docs. · 5c836c8e
      Sean Bright authored
      There are 3 separate changes here but they are all closely related:
      
      * Only try to set matchfield attributes on 'field' nodes
      
      * We need to adjust how we treat the category pointer based on the
        value of the category_match, to avoid memory corruption. We now
        generate a regex-like string when match types other than
        ACO_WHITELIST and ACO_BLACKLIST are used.
      
      * Switch app_agent_pool from ACO_BLACKLIST_ARRAY to
        ACO_BLACKLIST_EXACT since we only have one category we need to
        ignore, not two.
      
      ASTERISK-29614 #close
      
      Change-Id: I7be7bdb1bb9814f942bc6bb4fdd0a55a7b7efe1e
      5c836c8e
  29. Sep 01, 2021
    • Naveen Albert's avatar
      app_read: Allow reading # as a digit · dd980e00
      Naveen Albert authored
      Allows for the digit # to be read as a digit,
      just like any other DTMF digit, as opposed to
      forcing it to be used as an end of input
      indicator. The default behavior remains
      unchanged.
      
      ASTERISK-18454 #close
      
      Change-Id: I3033432adb9d296ad227e76b540b8b4a2417665b
      dd980e00
  30. Aug 25, 2021
    • Naveen Albert's avatar
      app_queue: Don't reset queue stats on reload · c7af4699
      Naveen Albert authored
      Prevents reloads of app_queue from also resetting
      queue statistics.
      
      Also preserves individual queue agent statistics
      if we're just reloading members.
      
      ASTERISK-28701
      
      Change-Id: Ib5d4cdec175e44de38ef0f6ede4a7701751766f1
      c7af4699
Loading