Skip to content
Snippets Groups Projects
  1. Jun 27, 2019
  2. Jun 25, 2019
  3. Jun 24, 2019
  4. Jun 21, 2019
  5. Jun 20, 2019
    • Alexei Gradinari's avatar
      res_fax: gateway sends T.38 request to both endpoints if V.21 detected · f414ca06
      Alexei Gradinari authored
      According T.38 Gateway 'Use case 3'
      https://wiki.asterisk.org/wiki/display/AST/T.38+Gateway
      T.38 Gateway should send T.38 negotiation request to called endpoint
      if FAX preamble (using V.21 detector) generated by called endpoint.
      But it does not, because fax_gateway_detect_v21 constructs T.38
      negotiation request, but forwards it only to other channel,
      not to the channel on which FAX preamble is detected.
      
      Some SIP endpoints could be improperly configured to rely on the other side
      to initiate T.38 re-INVITEs.
      
      With this patch the T.38 Gateway tries to negotiate with both sides
      by sending T.38 negotiation request to both endpoints supported T.38.
      
      Change-Id: I73bb24799bfe1a48adae9c034a2edbae54cc2a39
      f414ca06
  6. Jun 19, 2019
    • George Joseph's avatar
      CI: New way to determnine libdir · 0ba52ce3
      George Joseph authored
      We were using the presence of /usr/lib64 to determine where
      shared libraries should be installed.  This only existed on
      Redhat based systems and was safe.  If it existed, use it,
      otherwise use /usr/lib.
      
      Unfortunately, Ubuntu 19 decided to create a /usr/lib64 BUT
      NOT INCLUDE IT IN THE DEFAULT ld.so.conf.  So if anything is
      installed there, it won't work.
      
      The new method, just looks for $ID in /etc/os-release and if it's
      centos or fedora, uses /usr/lib64 and if ubuntu, uses /usr/lib.
      
      NOTE:  This applies only to the CI scripts.  Normal asterisk
      build and install is not affected.
      
      Change-Id: Iad66374b550fd89349bedbbf2b93f8edd195a7c3
      0ba52ce3
  7. Jun 18, 2019
    • Alexei Gradinari's avatar
      translate.c do not log WARNING on empty audio frame · e3866cb7
      Alexei Gradinari authored
      There is WARNING "no samples for ..." on each Playtones.
      The function ast_playtones_start calls ast_activate_generator,
      which calls ast_prod.
      The function ast_prod calls ast_write with empty audio frame.
      In this case it's spam log.
      
      Change-Id: Id4ac309489d9ff281bad02abdef341cecdede660
      e3866cb7
  8. Jun 17, 2019
    • George Joseph's avatar
      chan_dahdi: Address gcc9 issues · 92d4ec29
      George Joseph authored
      Fixed format-truncation issues in chan_dahdi.c and
      sig_analog.c.  Since they're related to fields provided
      by dahdi-tools we can't change the buffer sizes so we're just
      checking the return from snprintf and printing an errior if we
      overflow.
      
      Change-Id: Idc1f3c1565b88a7d145332a0196074b5832864e5
      92d4ec29
  9. Jun 13, 2019
    • George Joseph's avatar
      app_confbridge: Attended transfer event fixup · f3e5419d
      George Joseph authored
      When a channel already in a conference bridge is attended transfered
      to another extension, or when an existing call is attended
      transferred into a conference bridge, we now generate ConfbridgeJoin
      and ConfbridgeLeave events for the entering and departing channels.
      
      Change-Id: Id7709cfbceb26fbcb828b2d0d2a6b2fbeaf028e1
      f3e5419d
    • Joshua Colp's avatar
      res_rtp_asterisk: Add support for DTLS packet fragmentation. · a8e5cf55
      Joshua Colp authored
      This change adds support for larger TLS certificates by allowing
      OpenSSL to fragment the DTLS packets according to the configured
      MTU. By default this is set to 1200.
      
      This is accomplished by implementing our own BIO method that
      supports MTU querying. The configured MTU is returned to OpenSSL
      which fragments the packet accordingly. When a packet is to be
      sent it is done directly out the RTP instance.
      
      ASTERISK-28018
      
      Change-Id: If2d5032019a28ffd48f43e9e93ed71dbdbf39c06
      a8e5cf55
  10. Jun 12, 2019
  11. Jun 11, 2019
    • Alexei Gradinari's avatar
      app_attended_transfer: new application AttendedTransfer · 3eaeb3e6
      Alexei Gradinari authored
      AttendedTransfer queues up attended transfer to the given extension.
      
      This application can be useful with Custom Dynamic Features.
      For example to make attended transfer to a predefined number.
      
      features.conf
      ;;;
      [applicationmap]
      my_atxfer => *7,self,GoSub,"my_atxfer,s,1",default
      ;;;
      
      extensions.conf
      ;;;
      [globals]
      DYNAMIC_FEATURES=my_atxfer
      TRANSFER_CONTEXT=my_transfer
      
      [my_atxfer]
      exten => s,1,AttendedTransfer(1234567890)
         same => n,Return()
      
      [my_transfer]
      include => default
      ;;;
      
      This application also can be used to completly redefine Attended transfer
      feature using dialplan. For example:
      
      features.conf
      ;;;
      [featuremap]
      atxfer => *7
      
      [applicationmap]
      custom_atxfer => *2,self,GoSub,"custom_atxfer,s,1",default
      ;;;
      
      extensions.conf
      ;;;
      [globals]
      DYNAMIC_FEATURES=custom_atxfer
      TRANSFER_CONTEXT=my_transfer
      
      [custom_atxfer]
      exten => s,1,
         same => n,Playback(pbx-transfer)
         same => n,Read(dest,dial,10,i,3,3)
         same => n,AttendedTransfer(${dest})
         same => n,Return()
      
      [my_transfer]
      include => default
      ;;;
      
      Change-Id: Ie5cfa455d0813cffd5c85a6fb117f07d8f0b903b
      3eaeb3e6
    • Friendly Automation's avatar
  12. Jun 10, 2019
    • agupta's avatar
      chan_pjsip.c: Check for channel and session to not be NULL in hangup · d2f7b226
      agupta authored
      We have seen some rare case of segmentation fault in hangup function
      and we could notice that channel pointer was NULL.  Debug log shows
      that there is a 200 OK answer and SIP timeout at the same time.  It
      looks that while the SIP session was being destroyed due to timeout
      call hangup due to answer event lead to race condition and channel
      is being destroyed from two different places.  The check ensures we
      check it not to be NULL before freeing it.
      
      ASTERISK-25371
      
      Change-Id: I19f6566830640625e08f7b87bfe15758ad33a778
      d2f7b226
  13. Jun 07, 2019
    • Alexei Gradinari's avatar
      app_blind_transfer: new application BlindTransfer · 745cbab5
      Alexei Gradinari authored
      BlindTransfer redirects all channels currently bridged to the
      caller channel to the specified destination.
      
      This application can be useful with Custom Dynamic Features.
      For example to make blind transfer to a predefined number.
      
      features.conf
      ;;;
      [applicationmap]
      my_blindxfer => *6,self,GoSub,"my_blindxfer,s,1",default
      ;;;
      
      extensions.conf
      ;;;
      [globals]
      DYNAMIC_FEATURES=my_blindxfer
      
      [my_blindxfer]
      exten => s,1,BlindTransfer(1234567890,default)
         same => n,Return()
      ;;;
      
      This application also can be used to completly redefine Blind transfer
      feature using dialplan. For example:
      
      features.conf
      ;;;
      [featuremap]
      blindxfer =>
      
      [applicationmap]
      custom_blindxfer => ##,self,GoSub,"custom_blindxfer,s,1",default
      ;;;
      
      extensions.conf
      ;;;
      [globals]
      DYNAMIC_FEATURES=custom_blindxfer
      
      [custom_blindxfer]
      exten => s,1,
         same => n,Playback(pbx-transfer)
         same => n,Read(dest,dial,10,i,3,3)
         same => n,BlindTransfer(${dest},default)
         same => n,Return()
      ;;;
      
      Change-Id: I9d55e7f69ccfd4472dec00d62771d6de8803215a
      745cbab5
  14. Jun 05, 2019
  15. Jun 04, 2019
    • Chris-Savinovich's avatar
      cdr_pgsql: fix error in connection string · e61f2af8
      Chris-Savinovich authored
      Fixes an error occurring in function pgsql_reconnect() caused when value of
      hostname is blank. Which in turn will cause the connection string to look
      like this: "host= port=xx", which creates a sintax error. This fix now checks
      if the corresponding values for host, port, dbname, and user are blank. Note
      that since this is a reconnect function the database library will replace any
      missing value pairs with default ones.
      
      ASTERISK-28435
      
      Change-Id: I0a921f99bbd265768be08cd492f04b30855b8423
      e61f2af8
    • Friendly Automation's avatar
  16. Jun 03, 2019
  17. May 29, 2019
  18. May 24, 2019
  19. May 23, 2019
  20. May 22, 2019
    • Friendly Automation's avatar
    • Friendly Automation's avatar
    • Matt Jordan's avatar
      res_prometheus: Add metrics for PJSIP outbound registrations · 0bb38796
      Matt Jordan authored
      When monitoring Asterisk instances, it's often useful to know when an
      outbound registration fails, as this often maps to the notion of a trunk
      and having a trunk fail is usually a "bad thing". As such, this patch
      adds monitoring metrics that track the state of PJSIP outbound registrations.
      It does this by looking for the Registry events coming across the Stasis
      system topic, and publishing those as metrics to Prometheus. Note that
      while this may support other outbound registration types (IAX2, SIP, etc.)
      those haven't been tested. Your mileage may vary.
      
      (And why are you still using IAX2 and SIP? It's 2019 folks. Get with the
      program.)
      
      This patch also adds Sorcery observers to handle modifications to the
      underlying PJSIP outbound registration objects. This is useful when a
      reload is triggered that modifies the properties of an outbound registration,
      or when ARI push configuration is used and an object is updated or
      deleted. Because we rely on properties of the registration object to
      define the metric (label key/value pairs), we delete the relevant metric when
      we notice that something has changed and wait for a new Stasis message to
      arrive to re-create the metric.
      
      ASTERISK-28403
      
      Change-Id: If01420e38530fc20b6dd4aa15cd281d94cd2b87e
      0bb38796
    • Matt Jordan's avatar
      res_prometheus: Add CLI commands · a2648b22
      Matt Jordan authored
      This patch adds a few CLI commands to the res_prometheus module to aid
      system administrators setting up and configuring the module. This includes:
      
      * prometheus show status: Display basic statistics about the Prometheus
        module, including its essential configuration, when it was last scraped,
        and how long the scrape took. The last two bits of information are useful
        when Prometheus isn't generating metrics appropriately, as it will at
        least tell you if Asterisk has had its HTTP route hit by the remote
        server.
      
      * prometheus show metrics: Dump the current metrics to the CLI. Useful for
        system administrators to see what metrics are currently available without
        having to cURL or go to Prometheus itself.
      
      ASTERISK-28403
      
      Change-Id: Ic09813e5e14b901571c5c96ebeae2a02566c5172
      a2648b22
Loading