Skip to content
Snippets Groups Projects
  1. Apr 12, 2014
  2. Apr 11, 2014
  3. Apr 10, 2014
  4. Apr 09, 2014
  5. Apr 08, 2014
  6. Apr 07, 2014
  7. Apr 05, 2014
    • Russell Bryant's avatar
      func_periodic_hook: New function for periodic hooks. · ea290b2c
      Russell Bryant authored
      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.
      
      Review: https://reviewboard.asterisk.org/r/3362/
      
      
      
      git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@411768 65c4cc65-6c06-0410-ace0-fbb531ad65f3
      ea290b2c
  8. Apr 04, 2014
    • Richard Mudgett's avatar
      internal_timing: Remove the option and always make it enabled if a timing module is loaded. · 03beadb6
      Richard Mudgett authored
      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
      ast_opt_internal_timing.
      
      ASTERISK-22846 #close
      Reported by: Matt Jordan
      
      Review: https://reviewboard.asterisk.org/r/3414/
      ........
      
      Merged revisions 411715 from http://svn.asterisk.org/svn/asterisk/branches/1.8
      ........
      
      Merged revisions 411716 from http://svn.asterisk.org/svn/asterisk/branches/11
      ........
      
      Merged revisions 411717 from http://svn.asterisk.org/svn/asterisk/branches/12
      
      
      git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@411724 65c4cc65-6c06-0410-ace0-fbb531ad65f3
      03beadb6
    • Richard Mudgett's avatar
      Add some asserts that were handy when looking for a stasis cache problem. · 9be43829
      Richard Mudgett authored
      * Assert if a channel is destroyed but has the snapshot staging flag set.
      In this case the final channel destruction snapshot would never get taken.
      
      * Assert if what we just got out of the stasis cache is not what we were
      looking for.  This assert would have saved several days searching for a
      bug and a lot of my hair.
      
      * Assert if the music on hold message posts could not find the associated
      channel.  A crash will happen later when manager tries to send the MOH AMI
      message.  This assert catches the problem when the stasis message is
      posted instead of by the thread processing the defective message.
      
      * Always generate a backtrace when an ast_assert() fails.
      
      Review: https://reviewboard.asterisk.org/r/3411/
      ........
      
      Merged revisions 411701 from http://svn.asterisk.org/svn/asterisk/branches/12
      
      
      git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@411702 65c4cc65-6c06-0410-ace0-fbb531ad65f3
      9be43829
    • Matthew Jordan's avatar
      http: Fix spurious ERROR message in responses with no content · 73f337d9
      Matthew Jordan authored
      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
      message:
      
        [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 http://svn.asterisk.org/svn/asterisk/branches/12
      
      
      git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@411688 65c4cc65-6c06-0410-ace0-fbb531ad65f3
      73f337d9
  9. Apr 03, 2014
  10. Apr 02, 2014
  11. Apr 01, 2014
  12. Mar 28, 2014
Loading