[asterisk-bugs] [Asterisk 0013716]: [patch] Prevent false answer of channel when going off-hook

Asterisk Bug Tracker noreply at bugs.digium.com
Thu Oct 30 05:32:37 CDT 2008


A NOTE has been added to this issue. 
====================================================================== 
http://bugs.digium.com/view.php?id=13716 
====================================================================== 
Reported By:                alecdavis
Assigned To:                
====================================================================== 
Project:                    Asterisk
Issue ID:                   13716
Category:                   Channels/chan_dahdi
Reproducibility:            always
Severity:                   minor
Priority:                   normal
Status:                     new
Asterisk Version:           1.6.0 
SVN Branch (only for SVN checkouts, not tarball releases): N/A 
SVN Revision (number only!):  
Disclaimer on File?:        N/A 
Request Review:              
====================================================================== 
Date Submitted:             2008-10-16 04:58 CDT
Last Modified:              2008-10-30 05:32 CDT
====================================================================== 
Summary:                    [patch] Prevent false answer of channel when going
off-hook
Description: 
With answeronpolarityswitch=no asterisk answers channel soon after dialout
has started, or perhaps just finished. Causing Ringing for the caller to
stop, then silence for a while as the call is setup, then telco ringing is
heard and call proceedes as normal.
 
With answeronpolarityswitch=yes asterisk answers channel as soon as the
line goes off-hook. The user hears a very short Ring from Asterisk, long
silence as digits are dialled out and call is setup, then finally telco
ring is heard.
This is caused in our case because the line does a polarity reversal when
going off hook.

I have modifed wctdm.c that adds polarityignore in 3 sections of the code,
strcut fxo, wctdm_voicedaa_check_hook and wctdm_hooksig.

I'll upload for your comment, but welcome any advice if there is a better
way.
====================================================================== 

---------------------------------------------------------------------- 
 (0094389) alecdavis (reporter) - 2008-10-30 05:32
 http://bugs.digium.com/view.php?id=13716#c94389 
---------------------------------------------------------------------- 
Uploaded chan_dahdi.bug13716.diff3.txt
Please remove chan_dahdi.bug13716.diff2.txt

FXO module handling of DAHDI_EVENT_POLARITY using answeronpolarityswitch
and hanguponpolarityswitch have changed order of evaluation. Simplified
using SWITCH statements instead of IF/ELSE ...

order of evaluation is now reversed
  1st evaluates time (polarityonanswerdelay) from Offhook or Answer event

  2nd based on current state (DIALING | RINGING) or ( UP | RING) will
check the respective answeronpolarityswitch or hanguponpolarityswitch to
Answer or Hangup the channel

Tested with line that was configurable to enable;
 Polarity Switch only on remote connect.
 Polarity Switch only on remote disconnect.
 Polarity Switch both remote connect and disconnect.
 No Polarity Switch for remote connect or disconnect.

Tested with chan_dahdi.conf
  answeronpolarityswitch = yes and no.
  hanguponpolarityswitch = yes and no.
 
Alec 

Issue History 
Date Modified    Username       Field                    Change               
====================================================================== 
2008-10-30 05:32 alecdavis      Note Added: 0094389                          
======================================================================




More information about the asterisk-bugs mailing list