[splices] Answering an A/V Call Using Two Separate Devices proposal

"Shekh-Yusef, Rifaat (Rifaat)" <rifatyu@avaya.com> Sat, 21 May 2011 12:56 UTC

Return-Path: <rifatyu@avaya.com>
X-Original-To: splices@ietfa.amsl.com
Delivered-To: splices@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id B9AA2E06B4 for <splices@ietfa.amsl.com>; Sat, 21 May 2011 05:56:06 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.849
X-Spam-Level:
X-Spam-Status: No, score=-2.849 tagged_above=-999 required=5 tests=[AWL=-0.250, BAYES_00=-2.599]
Received: from mail.ietf.org ([64.170.98.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id jCsWz2Wje1cT for <splices@ietfa.amsl.com>; Sat, 21 May 2011 05:56:05 -0700 (PDT)
Received: from p-us1-iereast-outbound.us1.avaya.com (p-us1-iereast-outbound.us1.avaya.com [135.11.29.13]) by ietfa.amsl.com (Postfix) with ESMTP id 414F4E06AB for <splices@ietf.org>; Sat, 21 May 2011 05:56:04 -0700 (PDT)
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: AvsEAMq1103GmAcF/2dsb2JhbACmHnikMoNZApsPhhkElF2KRQ
X-IronPort-AV: E=Sophos;i="4.65,246,1304308800"; d="scan'208";a="189438161"
Received: from unknown (HELO co300216-co-erhwest.avaya.com) ([198.152.7.5]) by p-us1-iereast-outbound.us1.avaya.com with ESMTP; 21 May 2011 08:56:03 -0400
X-IronPort-AV: E=Sophos;i="4.65,246,1304308800"; d="scan'208";a="624728611"
Received: from unknown (HELO DC-US1HCEX3.global.avaya.com) ([135.11.52.22]) by co300216-co-erhwest-out.avaya.com with ESMTP; 21 May 2011 08:56:03 -0400
Received: from DC-US1MBEX4.global.avaya.com ([169.254.2.201]) by DC-US1HCEX3.global.avaya.com ([135.11.52.22]) with mapi; Sat, 21 May 2011 08:56:03 -0400
From: "Shekh-Yusef, Rifaat (Rifaat)" <rifatyu@avaya.com>
To: "splices@ietf.org" <splices@ietf.org>
Date: Sat, 21 May 2011 08:56:01 -0400
Thread-Topic: [splices] Answering an A/V Call Using Two Separate Devices proposal
Thread-Index: AcwXtm++XGJ0x3m2SCeYSbgdzkETtA==
Message-ID: <6369CB70BFD88942B9705AC1E639A33822CC01E548@DC-US1MBEX4.global.avaya.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
acceptlanguage: en-US
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
Subject: [splices] Answering an A/V Call Using Two Separate Devices proposal
X-BeenThere: splices@ietf.org
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: "Loosely-coupled SIP Devices \(splices\) working group discussion list" <splices.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/splices>, <mailto:splices-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/splices>
List-Post: <mailto:splices@ietf.org>
List-Help: <mailto:splices-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/splices>, <mailto:splices-request@ietf.org?subject=subscribe>
X-List-Received-Date: Sat, 21 May 2011 12:56:06 -0000

Hi,

We are still working on a new version of the INVOKE document that removes the implicit subscription.

Meanwhile I would like to continue the discussion of the various possible uses cases.
The following is a proposal for Answering an A/V Call Using Two Separate Devices.

Regards,
 Rifaat



   Alice                 Alice                Proxy                  Bob
    PC                 Desk Phone                                      
    |                     |                     |                     |
    |                     |                     |                     |
Both Alice's devices subscribe to the reg event package, which allows each device to 
discover the capabilities of the other device based on the feature tags provided by each device.
The Desk Phone knows that the PC supports Video, while the PC knows that the Desk Phone only supports audio.
    |                     |                     |                     |
    |                     | SUBSCRIBE reg       |                     |
    |                     |-------------------->|                     |
    |                     | 200 OK              |                     |
    |                     |<--------------------|                     |
    |                     |                     |                     |
    | SUBSCRIBE reg       |                     |                     |
    |------------------------------------------>|                     |
    | 200 OK              |                     |                     |
    |<------------------------------------------|                     |
    |                     |                     |                     |
    |                     |                     |                     |
The two devices also subscribe to the dialog of each other.
    |                     |                     |                     |
    |                     |                     |                     |
    | SUBSCRIBE dialog    |                     |                     |
    |-------------------->|                     |                     |
    | 200 OK              |                     |                     |
    |<--------------------|                     |                     |
    |                     |                     |                     |
    | SUBSCRIBE dialog    |                     |                     |
    |<--------------------|                     |                     |
    | 200 OK              |                     |                     |
    |-------------------->|                     |                     |
    |                     |                     |                     |
    |                     |                     |                     |
The scenario starts with an A/V call from Bob to Alice
    |                     |                     |                     |
    |                     |                     | INVITE Alice [A/V]  |
    |                     |                     |<--------------------|
    |                     | INVITE Alice [A/V]  |                     |
    |                     |<--------------------|                     |
    | INVITE Alice [A/V]  |                     |                     |
    |<------------------------------------------|                     |
    |                     |                     |                     |


(*)


Let's assume that Alice used her PC to answer the incoming call
The PC instructs the phone to answer the audio call    
    |                     |                     |                     |
    | INVOKE Action: urn:invoke:call:answer;media=audio;transducer=speaker|headset
    |-------------------->|                     |                     |
    | 200 OK              |                     |                     |
    |<--------------------|                     |                     |
    |                     |                     |                     |
    |                     | 200 OK [Audio]      |                     |
    |                     |-------------------->|                     |
    |                     |                     | 200 OK [Audio]      |
    |                     |                     |-------------------->|
    | CANCEL              |                     |                     |
    |<------------------------------------------|                     |
    |                     |                     |                     |
    |                     |<---dialog1------------------------------->|
    |                     |                     |                     |
    |                     |<======audio==============================>|
    |                     |                     |                     |
    |                     |                     |                     |
The PC then adds Video to the existing audio call.
    |                     |                     |                     |
    | INVITE with Join [Video]                  |                     |
    |-------------------->|                     |                     |
    | 100                 |                     |                     |
    |<--------------------|                     |                     |
    |                     | re-INVITE [A/V]     |                     |
    |                     |-------------------->|                     |
    |                     |                     | re-INVITE [A/V]     |
    |                     |                     |-------------------->|
    |                     |                     | 200 OK [A/V]        |
    |                     | 200 OK [A/V]        |<--------------------|
    |                     |<--------------------|                     |
    | 200 OK [Video]      |                     |                     |
    |<--------------------|                     |                     |
    |                     |                     |                     |
    |<------dialog2------>|<---dialog1------------------------------->|
    |                     |                     |                     |
    |                     |<======audio==============================>|
    |<============================video==============================>|
    |                     |                     |                     |
    |                     |                     |                     |



The scenario continues after the (*) above
Let's assume that Alice used her phone to answer the incoming call.
The phone answers the audio call
    |                     |                     |                     |
    |                     | 200 OK [Audio]      |                     |
    |                     |-------------------->|                     |
    |                     |                     | 200 OK [Audio]      |
    |                     |                     |-------------------->|
    | CANCEL              |                     |                     |
    |<------------------------------------------|                     |
    |                     |                     |                     |
    |                     |<---dialog1------------------------------->|
    |                     |                     |                     |
    |                     |<======audio==============================>|
    |                     |                     |                     |
    |                     |                     |                     |
The phone then instructs the PC to initiate a video call to join the existing call
    |                     |                     |                     |
    | INVOKE Action: urn:invoke:call:join;media=video;dialog=dialog1
    |<--------------------|                     |                     |
    | 200 OK              |                     |                     |
    |-------------------->|                     |                     |
    |                     |                     |                     |
The PC then adds Video to the existing audio call.
    |                     |                     |                     |
    | INVITE with Join [Video]                  |                     |
    |-------------------->|                     |                     |
    | 100                 |                     |                     |
    |<--------------------|                     |                     |
    |                     | re-INVITE [A/V]     |                     |
    |                     |-------------------->|                     |
    |                     |                     | re-INVITE [A/V]     |
    |                     |                     |-------------------->|
    |                     |                     | 200 OK [A/V]        |
    |                     | 200 OK [A/V]        |<--------------------|
    |                     |<--------------------|                     |
    | 200 OK [Video]      |                     |                     |
    |<--------------------|                     |                     |
    |                     |                     |                     |
    |<------dialog2------>|<---dialog1------------------------------->|
    |                     |                     |                     |
    |                     |<======audio==============================>|
    |<============================video==============================>|
    |                     |                     |                     |