[asterisk-dev] [Code Review] 3540: chan_local+app_dial: Propagagate call answered elsewhere over local channels.

wdoekes reviewboard at asterisk.org
Wed May 14 10:19:26 CDT 2014


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviewboard.asterisk.org/r/3540/
-----------------------------------------------------------

Review request for Asterisk Developers.


Repository: Asterisk


Description
-------

When dialing SIP/account_a + SIP/account_b, and account_b picks up, chan_sip sends
out a Reason header with SIP;cause=200;text="Call completed elsewhere", signifying
that the call was picked up.

The SIP phone then does not show "1 missed call".

However, then dialing Local/account_a + Local/account_b, this does not work.

This review addresses that.


When hanging up obsolete channels in chan_local, the answered_elsewhere flag is
propagated to cancelled (parent) channel using the hangupcause.

In app_dial, this hangupcause is checked and passed down to the other calls to be
cancelled.


Diffs
-----

  /branches/1.8/channels/chan_local.c 413892 
  /branches/1.8/apps/app_dial.c 413892 

Diff: https://reviewboard.asterisk.org/r/3540/diff/


Testing
-------

Dialplan:

    [default]
    exten => 201,1,Dial(SIP/account_b&SIP/account_c,5)
    exten => 202,1,Dial(Local/b at dial&Local/c at dial,5)
    ;; also tested with /n for no-local-channel-optimization, behaves the same as without
    
    [dial]
    exten => b,1,Dial(SIP/account_b)
    exten => c,1,Dial(SIP/account_c)

sip.conf held 3 accounts: account_a, account_b and account_c.


Before patch:

                          201             202 <-- account_a calls these
              +---------------+---------------+
    timeout   | 1 missed call | 1 missed call |
              +---------------+---------------+         
    account_b |               | 1 missed call | <-- account_c sees these
    picks up  +---------------+---------------+         


After patch:

                          201             202 <-- account_a calls these
              +---------------+---------------+
    timeout   | 1 missed call | 1 missed call |
              +---------------+---------------+         
    account_b |               |               | <-- account_c sees these
    picks up  +---------------+---------------+         


Thanks,

wdoekes

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.digium.com/pipermail/asterisk-dev/attachments/20140514/01ae0422/attachment.html>


More information about the asterisk-dev mailing list