[asterisk-bugs] [JIRA] (ASTERISK-27228) Application Bridge causes weird behavior before channels are answered

Benjamin Keith Ford (JIRA) noreply at issues.asterisk.org
Tue Aug 29 17:03:07 CDT 2017


     [ https://issues.asterisk.org/jira/browse/ASTERISK-27228?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Benjamin Keith Ford updated ASTERISK-27228:
-------------------------------------------

    Description: 
Say
- A dial B (we have channel_a and channel_b)
- C bridge channel_a before channel_b is answered

As a result :
- channel_a is bridged with channel_c (OK)
- channel_b is canceled (OK)
- channel_b is canceled without an answered elsewhere reason (1st problem)
- the initial dial does not returns until channel_a hangs up (2nd problem)

The problem is in ast_bridge_add_channel implementation, when channel is not in a bridge but have a running pbx :
- 1st problem is solved by setting AST_CAUSE_ANSWERED_ELSEWHERE hangupcause
- I don't know how to fix the 2nd problem

Edit:
# Channel A calls Channel B
# Channel C executes dialplan that calls Bridge(Channel A) before Channel B answers
# Channel A and C and bridged, Channel B hangs up (reason is set to unknown)
# When Channel A or C hang up, events are received involving Channel B, which can be seen via AMI

  was:
Say
- A dial B (we have channel_a and channel_b)
- C bridge channel_a before channel_b is answered

As a result :
- channel_a is bridged with channel_c (OK)
- channel_b is canceled (OK)
- channel_b is canceled without an answered elsewhere reason (1st problem)
- the initial dial does not returns until channel_a hangs up (2nd problem)

The problem is in ast_bridge_add_channel implementation, when channel is not in a bridge but have a running pbx :
- 1st problem is solved by setting AST_CAUSE_ANSWERED_ELSEWHERE hangupcause
- I don't know how to fix the 2nd problem



> Application Bridge causes weird behavior before channels are answered
> ---------------------------------------------------------------------
>
>                 Key: ASTERISK-27228
>                 URL: https://issues.asterisk.org/jira/browse/ASTERISK-27228
>             Project: Asterisk
>          Issue Type: Bug
>      Security Level: None
>    Affects Versions: 13.17.0
>            Reporter: Thomas Sevestre
>
> Say
> - A dial B (we have channel_a and channel_b)
> - C bridge channel_a before channel_b is answered
> As a result :
> - channel_a is bridged with channel_c (OK)
> - channel_b is canceled (OK)
> - channel_b is canceled without an answered elsewhere reason (1st problem)
> - the initial dial does not returns until channel_a hangs up (2nd problem)
> The problem is in ast_bridge_add_channel implementation, when channel is not in a bridge but have a running pbx :
> - 1st problem is solved by setting AST_CAUSE_ANSWERED_ELSEWHERE hangupcause
> - I don't know how to fix the 2nd problem
> Edit:
> # Channel A calls Channel B
> # Channel C executes dialplan that calls Bridge(Channel A) before Channel B answers
> # Channel A and C and bridged, Channel B hangs up (reason is set to unknown)
> # When Channel A or C hang up, events are received involving Channel B, which can be seen via AMI



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



More information about the asterisk-bugs mailing list