[Home]

Summary:ASTERISK-23446: PJSIP Testing: Nominal blind transfers (Caller initiated)
Reporter:Matt Jordan (mjordan)Labels:
Date Opened:2014-03-07 09:47:54.000-0600Date Closed:2014-04-18 15:56:41
Priority:MajorRegression?
Status:Closed/CompleteComponents:Channels/chan_pjsip Resources/res_pjsip Tests/testsuite
Versions:12.1.0 Frequency of
Occurrence
Related
Issues:
Environment:Attachments:
Description:Note:

Scenarios should always verify the following variables:

* The SIPREFERTOHDR channel variable is set on the transferrer to the URI in the Refer-To header
* The SIPTRANSFER channel variable is set to "yes"
* The SIPREFERRINGCONTEXT variable is set to the destination context of the transfer
* The SIPREFERREDBYHDR variable is set to the URI in the Referred-By header

h2. Caller Initiated
h3. Transfer with Hold

# Alice sends an INVITE request to Asterisk, Asterisk sends an INVITE request to Bob
# Bob sends a 200 OK to Asterisk, Asterisk sends a 200 OK to Alice
# Alice sends an INVITE request with restricted media to Asterisk
# Asterisk sends a 200 OK to Alice; Asterisk starts playing hold music on Bob
# Alice sends a REFER request to Asterisk with a Refer-To header for Charlie's extension; Asterisk sends a 202
# Asterisk sends a NOTIFY (100 Trying) to Alice
# Asterisk sends an INVITE request to Charlie
# Charlie sends a 200 OK to Asterisk, Asterisk sends a NOTIFY (200) to Alice, Alice sends a 200 OK to Asterisk
# Alice sends a BYE to Asterisk/Asterisk sends a 200 OK
*Note:* If Asterisk hangs up Alice first, that's acceptable. At this point, Asterisk knows that Charlie and Bob can be bridged.
# Asterisk stops the music on hold for Bob, and Bob and Charlie are put into the same bridge

h3. Transfer with DirectMedia

# Alice sends an INVITE request to Asterisk, Asterisk sends an INVITE request to Bob
# Bob sends a 200 OK to Asterisk, Asterisk sends a 200 OK to Alice
# Asterisk sends re-INVITE requests to Alice and Bob to direct their media to each other; Alice and Bob send a 200 OK
# Alice sends a REFER request to Asterisk with a Refer-To header for Charlie's extension; Asterisk sends a 202
# Asterisk sends a NOTIFY (100 Trying) to Alice
# Asterisk sends an INVITE request to Charlie
# Charlie sends a 200 OK to Asterisk, Asterisk sends a NOTIFY (200) to Alice, Alice sends a 200 OK to Asterisk
# Alice sends a BYE to Asterisk/Asterisk sends a 200 OK
# Asterisk put Bob and Charlie into the same bridge
# Asterisk sends a re-INVITE request to both Bob and Charlie to direct their media to each other; Bob and Charlie send a 200 OK

h3. Transfer (REFER only)

# Alice sends an INVITE request to Asterisk, Asterisk sends an INVITE request to Bob
# Bob sends a 200 OK to Asterisk, Asterisk sends a 200 OK to Alice
# Alice sends a REFER request to Asterisk with a Refer-To header for Charlie's extension; Asterisk sends a 202
# Asterisk sends a NOTIFY (100 Trying) to Alice
# Asterisk sends an INVITE request to Charlie
# Charlie sends a 200 OK to Asterisk, Asterisk sends a NOTIFY (200) to Alice, Alice sends a 200 OK to Asterisk
# Alice sends a BYE to Asterisk/Asterisk sends a 200 OK
# Asterisk put Bob and Charlie into the same bridge

h4. Variants to execute:
# 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 to 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.


Comments:By: John Bigelow (jbigelow) 2014-04-16 17:35:58.866-0500

Committed revision 4964.