[Home]

Summary:ASTERISK-23447: PJSIP Testing: Nominal blind transfers (Callee initiated)
Reporter:Matt Jordan (mjordan)Labels:
Date Opened:2014-03-07 09:51:03.000-0600Date Closed:2014-06-01 22:54:51
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. Callee 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
# Bob sends an INVITE request with restricted media to Asterisk
# Asterisk sends a 200 OK to Bob; Asterisk starts playing hold music on Alice
# Bob 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 Bob
# Asterisk sends an INVITE request to Charlie
# Charlie sends a 200 OK to Asterisk, Asterisk sends a NOTIFY (200) to Bob, Bob sends a 200 OK to Asterisk
# Bob sends a BYE to Asterisk/Asterisk sends a 200 OK
*Note:* If Asterisk hangs up Bob first, that's acceptable. At this point, Asterisk knows that Charlie and Alice can be bridged.
# Asterisk stops the music on hold for Alice, and Alice 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
# Bob 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 Bob
# Asterisk sends an INVITE request to Charlie
# Charlie sends a 200 OK to Asterisk, Asterisk sends a NOTIFY (200) to Bob, Bob sends a 200 OK to Asterisk
# Bob sends a BYE to Asterisk/Asterisk sends a 200 OK
# Asterisk puts Alice and Charlie into the same bridge
# Asterisk sends a re-INVITE request to both Alice and Charlie to direct their media to each other; Alice 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
# Bob 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 Bob
# Asterisk sends an INVITE request to Charlie
# Charlie sends a 200 OK to Asterisk, Asterisk sends a NOTIFY (200) to Bob, Bob sends a 200 OK to Asterisk
# Bob sends a BYE to Asterisk/Asterisk sends a 200 OK
# Asterisk put Alice 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 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.

Comments: