[asterisk-bugs] [JIRA] (ASTERISK-23699) PJSIP Testing: Nominal remote attended transfers

Matt Jordan (JIRA) noreply at issues.asterisk.org
Thu May 1 15:33:44 CDT 2014


Matt Jordan created ASTERISK-23699:
--------------------------------------

             Summary: PJSIP Testing: Nominal remote attended transfers
                 Key: ASTERISK-23699
                 URL: https://issues.asterisk.org/jira/browse/ASTERISK-23699
             Project: Asterisk
          Issue Type: Improvement
      Security Level: None
          Components: Resources/res_pjsip, Resources/res_pjsip_refer
            Reporter: Matt Jordan


h2. Attended Transfers - Remote Transfer Destination

In a remote transfer destination, the initial conversation between Alice and Bob takes places through Asterisk, but the conversation between Alice and Charlie does not occur through Asterisk. In this case, the REFER with Replaces will refer to a dialog that Asterisk is unfamiliar with, and Asterisk must take steps to establish a call between Bob and Charlie. Internally, this becomes very similar to a SIP blind transfer.

h3. Nominal - Caller Initiated

*Variants:*
* Include the Referred-By header. Verify the appropriate channel variable is set with the URI in the Referred-By header, and that it is copied into the INVITE request sent to Charlie
* Set the TRANSFER_CONTEXT variable to a context other than the one that the channels currently execute in. Verify that the transfer still occurs properly to the external_replaces extension in the new context.

*TEST*
* Alice sends an INVITE request, Asterisk sends an INVITE request to Bob
* Bob sends a 200 OK to Asterisk, Asterisk sends a 200 OK to Alice
* Alice sends a re-INVITE with restricted media to Asterisk, Asterisk starts playing music on hold to Bob
* Alice sends an INVITE request directly to Charlie; Charlie sends a 200 OK directly to Alice
* Alice sends a REFER request to Asterisk with a Replaces header that refers to the dialog between Alice and Charlie and a Refer-To header for Charlie
* Asterisk sends a 202 to Alice's REFER request, and send Bob's channel to the external_replaces extension with the SIPREFERTOHDR populated with the URI for Charlie
* When Asterisk dials Charlie, it sends an INVITE request with a Replaces header for the dialog between Alice and Charlie
* When Charlie sends a 200 OK for the INVITE with Replaces, Bob and Charlie are bridged and Alice is hung up by both Asterisk and Charlie

h3. Nominal - Callee Initiated

*Variants:*
* Include the Referred-By header. Verify the appropriate channel variable is set with the URI in the Referred-By header, and that it is copied into the INVITE request sent to Charlie
* Set the TRANSFER_CONTEXT variable to a context other than the one that the channels currently execute in. Verify that the transfer still occurs properly to the external_replaces extension in the new context.

* Alice sends an INVITE request, Asterisk sends an INVITE request to Bob
* Bob sends a 200 OK to Asterisk, Asterisk sends a 200 OK to Alice
* Bob sends a re-INVITE with restricted media to Asterisk, Asterisk starts playing music on hold to Alice
* Bob sends an INVITE request directly to Charlie; Charlie sends a 200 OK directly to Bob
* Bob sends a REFER request to Asterisk with a Replaces header that refers to the dialog between Bob and Charlie and a Refer-To header for Charlie
* Asterisk sends a 202 to Bob's REFER request, and send Alice's channel to the external_replaces extension with the SIPREFERTOHDR populated with the URI for Charlie
* When Asterisk dials Charlie, it sends an INVITE request with a Replaces header for the dialog between Bob and Charlie
* When Charlie sends a 200 OK for the INVITE with Replaces, Alice and Charlie are bridged and Bob is hung up by both Asterisk and Charlie



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



More information about the asterisk-bugs mailing list