[asterisk-bugs] [JIRA] (ASTERISK-28518) chan_dahdi: Caller ID FSK Erroneously Sent when Picking Up Dahdi Call On Hold

N A (JIRA) noreply at issues.asterisk.org
Tue Mar 29 15:46:06 CDT 2022


    [ https://issues.asterisk.org/jira/browse/ASTERISK-28518?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=258558#comment-258558 ] 

N A edited comment on ASTERISK-28518 at 3/29/22 3:45 PM:
---------------------------------------------------------

>From my testing, and in addition to what's already been said, this bug occurs (consistently) only when:

- immediate = no for the line
- a mailbox is specified for the line
- you pick up *after* the first ring on the flash ringback

The issue is MWI related. DAHDI is trying to send FSK for MWI when it thinks it's an okay time to do so, but it's really not. The actual spot is right here:
https://github.com/asterisk/asterisk/blob/master/channels/chan_dahdi.c#L11586 (mwi_send_init).

<s>The code says this is supposed to occur only when the line is "dormant", so clearly there is a bug in the logic in that it's happening as soon as the line goes off-hook again.<s>

Actually, I should clarify something here:

After the first ring, that's when the MWI CID spill is added. At that point, it's inevitable that when the line goes off-hook, there will be that FSK spill due to the dahdi_read logic.
So really, a ringing line should not be considered "dormant" for this purpose.


was (Author: interlinked):
>From my testing, and in addition to what's already been said, this bug occurs (consistently) only when:

- immediate = no for the line
- a mailbox is specified for the line
- you pick up *after* the first ring on the flash ringback

The issue is MWI related. DAHDI is trying to send FSK for MWI when it thinks it's an okay time to do so, but it's really not. The actual spot is right here:
https://github.com/asterisk/asterisk/blob/master/channels/chan_dahdi.c#L11586 (mwi_send_init).

The code says this is supposed to occur only when the line is "dormant", so clearly there is a bug in the logic in that it's happening as soon as the line goes off-hook again.

> chan_dahdi: Caller ID FSK Erroneously Sent when Picking Up Dahdi Call On Hold
> -----------------------------------------------------------------------------
>
>                 Key: ASTERISK-28518
>                 URL: https://issues.asterisk.org/jira/browse/ASTERISK-28518
>             Project: Asterisk
>          Issue Type: Bug
>      Security Level: None
>          Components: Channels/chan_dahdi
>    Affects Versions: 13.27.0
>         Environment: DAHDI Version: 2.10.2
>            Reporter: Josh Alberts
>            Assignee: Unassigned
>
> Asterisk is frequently and improperly sending Caller ID FSK when a Dahdi channel (fxo_ks) is picked back up after being put on hold.  Here is the scenario: 
> 1) A call comes in to a Dahdi channel, and is picked up
> 2) The Dahdi channel flashes and receives a new dial tone
> 3) The Dahdi channel hangs up to place the call on hold.  The Dahdi channel rings while the call is being held.
> 4) The Dahdi channel picks back up to resume the call
> 5) Caller ID FSK is spilled out, and is only heard by the Dahdi channel, and not the other end.  This shouldn't be happening.
> 6) The Dahdi channel is connected back to the caller



--
This message was sent by Atlassian JIRA
(v6.2#6252)



More information about the asterisk-bugs mailing list