Switch branches/tags
Nothing to show
Commits on Apr 14, 2014
  1. (mix)monitor: Add options to enable a periodic beep

    russellb committed Apr 8, 2014
    Add an option to enable a periodic beep to be played into a call if it
    is being recorded.  If enabled, it uses the PERIODIC_HOOK() function
    internally to play the 'beep' prompt into the call at a specified
    interval.  This option is provided for both Monitor() and
  2. autoservice: fix reference leak of logger callid.

    coreyfarrell committed Apr 14, 2014
    autoservice acquires a local reference to the logger callid of each channel
    in a loop.  This local reference was not released, causing the callid of
    every channel in autoservice to leak.  This change moves the callid unref
    inside the loop.
    ASTERISK-23616 #close
    Reported by: ibercom
    Merged revisions 412305 from
    Merged revisions 412306 from
    git-svn-id: f38db490-d61c-443f-a65b-d21fe96a405b
Commits on Apr 12, 2014
  1. chan_sip: Support RFC-3966 TEL URIs in inbound INVITE requests

    matt-jordan committed Apr 12, 2014
    This patch adds support for handling TEL URIs in inbound INVITE requests.
    This includes the Request URI and the From URI. The number specified in
    the Request URI will be the destination of the inbound channel in the dialplan.
    The phone-context specified in the Request URI will be stored in the
    TELPHONECONTEXT channel variable.
    ASTERISK-17179 #close
    Reported by: Geert Van Pamel
    Tested by: Geert Van Pamel
      asterisk-12.0.0-chan_sip-RFC3966_patch.txt uploaded by Geert Van Pamel (License 6140)
      asterisk-12.0.0-reqresp_parser-RFC3966_patch.txt uploaded by Geert Van Pamel (License 6140)
    git-svn-id: f38db490-d61c-443f-a65b-d21fe96a405b
  2. func_periodic_hook: move module ref

    russellb committed Apr 12, 2014
    The previous code left one error path where the module would be unref'd twice
    instead of once.  It was done once in the error handling block, and again inside
    of datastore destruction.
    Now the module ref is only released in the datastore destructor and only acquired
    when the datastore has been successfully allocated.
    git-svn-id: f38db490-d61c-443f-a65b-d21fe96a405b
  3. func_periodic_hook: add module ref counting

    russellb committed Apr 12, 2014
    This module lacked necessary module ref count incrementing and decrementing
    when used.  This patch adds it.  There's already a datastore used, so doing the
    ref counting along with the lifetime of the datastore provides a convenient
    place to do it.
    git-svn-id: f38db490-d61c-443f-a65b-d21fe96a405b
Commits on Apr 11, 2014
  1. app_stack: Add missing unlock in off-nominal path of STACK_PEEK funct…

    Richard Mudgett committed Apr 11, 2014
    ASTERISK-23620 #close
    Reported by: Bradley Watkins
          ASTERISK-23620_unlock_oldlist.patch (license #5021) patch uploaded by Bradley Watkins
    Merged revisions 412225 from
    Merged revisions 412226 from
    Merged revisions 412227 from
    git-svn-id: f38db490-d61c-443f-a65b-d21fe96a405b
  2. utils dir: Remove no longer needed traces of refcounter except in the…

    Richard Mudgett committed Apr 11, 2014
    … clean make target.
    * Removed no longer needed files from the svn:ignore property to make them visible.
    git-svn-id: f38db490-d61c-443f-a65b-d21fe96a405b
  3. bridging: Ensure locking during snapshot creation

    opticron committed Apr 11, 2014
    While the vast majority of bridge snapshot creation is locked properly,
    there are currently some instances that are not. This adds the missing
    locking to ensure bridge state is not malleable during snapshot
    (closes issue ASTERISK-22904)
    Reported by: Matt Jordan
    Merged revisions 412193 from
    git-svn-id: f38db490-d61c-443f-a65b-d21fe96a405b
  4. Formatting: Remove invisible characters

    oej committed Apr 11, 2014
    git-svn-id: f38db490-d61c-443f-a65b-d21fe96a405b
  5. Formatting only.

    oej committed Apr 11, 2014
    git-svn-id: f38db490-d61c-443f-a65b-d21fe96a405b
  6. main/astobj2: Make REF_DEBUG a menuselect item; improve REF_DEBUG output

    matt-jordan committed Apr 11, 2014
    This patch does the following:
    (1) It makes REF_DEBUG a meneselect item. Enabling REF_DEBUG now enables
        REF_DEBUG globally throughout Asterisk.
    (2) The ref debug log file is now created in the AST_LOG_DIR directory.
        Every run will now blow away the previous run (as large ref files
        sometimes caused issues). We now also no longer open/close the file
        on each write, instead relying on fflush to make sure data gets written
        to the file (in case the ao2 call being performed is about to cause a
    (3) It goes with a comma delineated format for the ref debug file. This
        makes parsing much easier. This also now includes the thread ID of the
        thread that caused ref change.
    (4) A new python script instead for refcounting has been added in the
        contrib/scripts folder.
    (5) The old refcounter implementation in utils/ has been removed.
    Merged revisions 412114 from
    Merged revisions 412115 from
    Merged revisions 412153 from
    git-svn-id: f38db490-d61c-443f-a65b-d21fe96a405b
  7. monitor: use app options parsing helper code

    russellb committed Apr 11, 2014
    This app is pretty ancient, so it was never converted to use the
    option parsing helper code.  I'd like to add an option to this app
    that takes an argument, and that's a pain to do when not using this
    helper, so start by doing this conversion.
    git-svn-id: f38db490-d61c-443f-a65b-d21fe96a405b
Commits on Apr 10, 2014
  1. res_hep_pjsip: Use the channel name instead of the call ID when it is…

    matt-jordan committed Apr 10, 2014
    … available
    During discussions with Alexandr Dubovikov at Kamailio World, it became
    apparent that while the SIP call ID is a useful identifier prior to an Asterisk
    channel being created, it is far more preferable to use the channel name (or
    some channel based identifier) when the channel is available. Homer is smart
    enough to tie the various messages together. This patch opts to use the channel
    name when it is available, falling back to the call ID otherwise.
    Merged revisions 412088 from
    git-svn-id: f38db490-d61c-443f-a65b-d21fe96a405b
  2. res_pjsip_pubsub: Set the body generation result to 0 for a valid path

    kharwell committed Apr 10, 2014
    The result of the "ast_sip_pubsub_generate_body_content" was not
    set/initialized.  Consequently, the nominal path potentially returned
    an invalid value, thus not sending mwi notifications.
    Merged revisions 412074 from
    git-svn-id: f38db490-d61c-443f-a65b-d21fe96a405b
Commits on Apr 9, 2014
  1. Add a Command header to the AMI Mixmonitor action.

    putnopvut committed Apr 9, 2014
    This fixes a parsing error that occurred during the processing of
    the AMI action. The error did not result in MixMonitor itself
    misbehaving, but it could result in the AMI response not giving
    correct information back.
    The new header allows for one to specify a post-process command
    to run when recording finishes. Previously, in order to do this,
    the post-process command would have to be placed at the end of
    the Options: header. 
    Patches: mixmonitor_command_2.patch by jhardin (License #6512)
    Merged revisions 412048 from
    git-svn-id: f38db490-d61c-443f-a65b-d21fe96a405b
  2. res_stasis_answer: Add missing newlines

    opticron committed Apr 9, 2014
    Merged revisions 412034 from
    git-svn-id: f38db490-d61c-443f-a65b-d21fe96a405b
Commits on Apr 8, 2014
  1. Internal timing: Add notice that the -I and internal_timing option ar…

    Richard Mudgett committed Apr 8, 2014
    …e no longer needed.
    Add notice messages during execution that the -I command line option and
    the astersik.conf internal_timing option are no longer needed.  The
    internal timing functionality is now always enabled if there is a timing
    module loaded.
    NOTE: Since the command line options and the asterisk.conf config file are
    processed before the logging system is initialized, the messages are
    output to stderr.
    Change requested as a result of asterisk-dev list comments about the
    commit for ASTERISK-22846 that removed the -I and internal_timing options.
    Merged revisions 411964 from
    Merged revisions 411974 from
    Merged revisions 411985 from
    git-svn-id: f38db490-d61c-443f-a65b-d21fe96a405b
  2. config: Fix CB_ADD_LEN() to work as originally intended.

    Richard Mudgett committed Apr 8, 2014
    Fix a long standing bug in CB_ADD_LEN() behaving like CB_ADD().
    ASTERISK-23546 #close
    Reported by: Walter Doekes
    Merged revisions 411960 from
    Merged revisions 411961 from
    Merged revisions 411962 from
    git-svn-id: f38db490-d61c-443f-a65b-d21fe96a405b
  3. app_confbridge: Fix confbridge.conf dsp_talking_threshold option sett…

    Richard Mudgett committed Apr 8, 2014
    …ing wrong parameter.
    Fixed copy pasta error.
    ASTERISK-23545 #close
    Reported by: John Knott
    Merged revisions 411944 from
    Merged revisions 411945 from
    git-svn-id: f38db490-d61c-443f-a65b-d21fe96a405b
  4. res_pjsip: Ignore explicit transport configuration if a WebSocket tra…

    jcolp committed Apr 8, 2014
    …nsport is specified.
    This change makes it so if a transport is configured on an endpoint that is a WebSocket
    type the option will be ignored. In practice this is fine because the WebSocket
    transport can not create outgoing connections, it can only reuse existing ones. By
    ignoring the option the existing PJSIP logic for using the existing connection will
    be invoked and stuff will proceed.
    (closes issue ASTERISK-23584)
    Reported by: Rusty Newton
    Merged revisions 411927 from
    git-svn-id: f38db490-d61c-443f-a65b-d21fe96a405b
  5. func_periodic_hook: List more modules as dependencies

    russellb committed Apr 8, 2014
    This module makes use of some existing Asterisk components.  app_chanspy was
    already listed as a dependency.  There are a few function modules used, as
    well, so list them.
    git-svn-id: f38db490-d61c-443f-a65b-d21fe96a405b
Commits on Apr 7, 2014
  1. PJSIP: Ensure test event has new state

    opticron committed Apr 7, 2014
    The change that fixed the pubsub test event's use of a dangling pointer
    also changed when it was processed relative to the pjsip subscription
    state change processing. This change corrects the order of events while
    holding a reference to the pointer that was previously dangling.
    Merged revisions 411883 from
    git-svn-id: f38db490-d61c-443f-a65b-d21fe96a405b
  2. AGI/Manager: Prevent multiple NewExten events during AGI application …

    jrrose committed Apr 7, 2014
    AGI applications would trigger NewExten events every time the state of the AGI
    application changed. This has historically not been the behavior and this
    behavior was introduced with a CDR patch. This patch corrects that.
    (closes issue ASTERISK-23390)
    Reported by: Benjamin Keith Ford
    Merged revisions 411868 from
    git-svn-id: f38db490-d61c-443f-a65b-d21fe96a405b
  3. app_queue: Re-add HoldTime to QueueCallerAbandon event (simple typo d…

    wdoekes committed Apr 7, 2014
    …uring ast12 refactor).
    Reported by: Ibrahim22 (on IRC)
    Tested by: Ibrahim22
    Merged revisions 411811 from
    git-svn-id: f38db490-d61c-443f-a65b-d21fe96a405b
  4. Blocked revisions 411809

    wdoekes committed Apr 7, 2014
    configs: Clean up long line and typo in res_odbc.conf.sample.
    Merged revisions 411807 from
    Merged revisions 411808 from
    git-svn-id: f38db490-d61c-443f-a65b-d21fe96a405b
  5. Stasis: Fix Stasis() bridge refcount issue

    opticron committed Apr 7, 2014
    The Stasis() dialplan application monitors what bridge a channel is in
    and so necessarily holds on to a bridge pointer. This change ensures
    that it also holds on to a reference for that bridge to prevent the
    bridge pointer from becoming a dangling pointer.
    Merged revisions 411804 from
    git-svn-id: f38db490-d61c-443f-a65b-d21fe96a405b
  6. PJSIP: Fix crash introduced in r411671

    opticron committed Apr 7, 2014
    The test event introduced in revision 411671 uses a dangling pointer to
    access information about pubsub state changes. This moves the event to
    within the lifetime of the pointer.
    Merged revisions 411790 from
    git-svn-id: f38db490-d61c-443f-a65b-d21fe96a405b
Commits on Apr 5, 2014
  1. func_periodic_hook: New function for periodic hooks.

    russellb committed Apr 5, 2014
    This commit introduces a new dialplan function, PERIODIC_HOOK().
    It allows you run to a dialplan hook on a channel periodically.  The
    original use case that inspired this was the ability to play a beep
    periodically into a call being recorded.  The implementation is much
    more generic though and could be used for many other things.
    The implementation makes heavy use of existing Asterisk components.
    It uses a combination of Local channels and ChanSpy() to run some
    custom dialplan and inject any audio it generates into an active call.
    The other important bit of the implementation is how it figures out
    when to trigger the beep playback.  This implementation uses the
    audiohook API, even though it's not actually touching the audio in any
    way.  It's a convenient way to get a callback and check if it's time
    to kick off another beep.  It would be nice if this was timer event
    based instead of polling based, but unfortunately I don't see a way to
    do it that won't interfere with other things.
    git-svn-id: f38db490-d61c-443f-a65b-d21fe96a405b
Commits on Apr 4, 2014
  1. internal_timing: Remove the option and always make it enabled if a ti…

    Richard Mudgett committed Apr 4, 2014
    …ming module is loaded.
    The masquerade supertest frequently fails because either the local channel
    chain doesn't completely optimize out or the DTMF handshake doesn't
    completely get accross.  Local channel optimization requires frames
    flowing to trigger when optimization can happen.  When optimization
    happens the media frame that triggered the optimization is dropped.
    Sending DTMF requires frames to flow in the other direction for timing
    purposes while sending nothing.  If internal timing is not enabled when
    MOH is playing, Asterisk switches to received timing when an audio frame
    is received.  With optimization dropping media frames and MOH not sending
    frames unless it receives frames, occasionaly there are no more frames
    being passed and the test fails.
    * The asterisk command line -I option and the asterisk.conf
    internal_timing option are removed.  Asterisk now always uses internal
    timing when needed if any timing module is loaded.  The issue
    ASTERISK-14861 did this quite awhile ago in v1.4 but effectively is broken
    if other internal timing modules besides DAHDI are used.  The
    ast_read_generator_actions() now only does received timing if it has no
    choice for frame generators like MOH, silence, and playback streaming.
    * Cleaned up some code dealing with frame generators in
    ast_deactivate_generator(), generator_write_format_change(),
    ast_activate_generator(), and ast_channel_stop_silence_generator().
    * Removed ast_internal_timing_enabled(), AST_OPT_FLAG_INTERNAL_TIMING, and
    ASTERISK-22846 #close
    Reported by: Matt Jordan
    Merged revisions 411715 from
    Merged revisions 411716 from
    Merged revisions 411717 from
    git-svn-id: f38db490-d61c-443f-a65b-d21fe96a405b
  2. locking: Add temporary sanity checks.

    Richard Mudgett committed Apr 4, 2014
    Add some temporary sanity checks to hunt for locking problems with the
    masquerade supertest.
    git-svn-id: f38db490-d61c-443f-a65b-d21fe96a405b
  3. http: Fix spurious ERROR message in responses with no content

    matt-jordan committed Apr 4, 2014
    When a response has a content length of 0, fwrite would be called to write a
    buffer with no data in it. This resulted in the following classic error
      [Apr  3 11:49:17] ERROR[26421] http.c: fwrite() failed: Success
    This patch makes it so that we only attempt to write out the content if the
    calculated content_length is non-zero.
    Merged revisions 411687 from
    git-svn-id: f38db490-d61c-443f-a65b-d21fe96a405b
Commits on Apr 3, 2014
  1. res_pjsip_pubsub: Add test event for state change

    opticron committed Apr 3, 2014
    This adds a test event when subscription state changes so that
    integration tests may trigger new actions at the appropriate times.
    Merged revisions 411670 from
    git-svn-id: f38db490-d61c-443f-a65b-d21fe96a405b
  2. res_hep: Fix crash when hep.conf not available

    matt-jordan committed Apr 3, 2014
    Parts of res_hep properly checked for a valid configuration object before
    attempting to access the configuration. A check, however, was missed when
    a packet is sent. This patch fixes the crash caused by not checking if the
    configuration object is valid.
    Merged revisions 411668 from
    git-svn-id: f38db490-d61c-443f-a65b-d21fe96a405b
Commits on Apr 2, 2014
  1. Prevent duplicate sorcery wizards from being applied to sorcery objec…

    putnopvut committed Apr 2, 2014
    …t types.
    This commit contains several changes to sorcery:
    1) Application of sorcery configuration based on module name is automatically performed
    when sorcery is opened for a module.
    2) Sorcery will not attempt to apply the same wizard to an object type more than once.
    3) Sorcery gives more exact results when attempting to apply a wizard, whether as the
    default or based on configuration.
    Sorcery unit tests still pass for me after making these changes.
    Merged revisions 411159 from
    git-svn-id: f38db490-d61c-443f-a65b-d21fe96a405b
Commits on Apr 1, 2014
  1. res_parking: Minor tweaks.

    Richard Mudgett committed Apr 1, 2014
    * Use ast_bridge_channel_lock()/ast_bridge_channel_unlock() instead of
    ao2_lock()/ao2_unlock() for struct ast_bridge_channel variables.
    * Use ast_copy_string() instead of inlining it.
    * Remove an already done TODO comment.
    * Some whitespace tweaks.
    Merged revisions 411638 from
    git-svn-id: f38db490-d61c-443f-a65b-d21fe96a405b