Re: [splices] Answering a Call Using Two Separate Devices proposal

Peter Musgrave <peter.musgrave@magorcorp.com> Mon, 02 May 2011 13:45 UTC

Return-Path: <peter.musgrave@magorcorp.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 3EBFFE06EA for <splices@ietfa.amsl.com>; Mon, 2 May 2011 06:45:50 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -102.451
X-Spam-Level:
X-Spam-Status: No, score=-102.451 tagged_above=-999 required=5 tests=[AWL=-0.248, BAYES_00=-2.599, MIME_QP_LONG_LINE=1.396, RCVD_IN_DNSWL_LOW=-1, USER_IN_WHITELIST=-100]
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 0wTMw+B3Z9uA for <splices@ietfa.amsl.com>; Mon, 2 May 2011 06:45:49 -0700 (PDT)
Received: from mail-gy0-f172.google.com (mail-gy0-f172.google.com [209.85.160.172]) by ietfa.amsl.com (Postfix) with ESMTP id 3DAC9E0688 for <splices@ietf.org>; Mon, 2 May 2011 06:45:49 -0700 (PDT)
Received: by gyf3 with SMTP id 3so2393972gyf.31 for <splices@ietf.org>; Mon, 02 May 2011 06:45:48 -0700 (PDT)
Received: by 10.151.62.14 with SMTP id p14mr6709019ybk.30.1304343947100; Mon, 02 May 2011 06:45:47 -0700 (PDT)
Received: from petermac.magor.local ([72.1.217.106]) by mx.google.com with ESMTPS id v15sm2361389ybk.21.2011.05.02.06.45.45 (version=TLSv1/SSLv3 cipher=OTHER); Mon, 02 May 2011 06:45:45 -0700 (PDT)
Mime-Version: 1.0 (Apple Message framework v1084)
Content-Type: text/plain; charset="us-ascii"
From: Peter Musgrave <peter.musgrave@magorcorp.com>
In-Reply-To: <6369CB70BFD88942B9705AC1E639A33822CB33B18C@DC-US1MBEX4.global.avaya.com>
Date: Mon, 02 May 2011 09:45:44 -0400
Content-Transfer-Encoding: quoted-printable
Message-Id: <BFB07BED-2EAC-4FAE-A213-841DB4261A87@magorcorp.com>
References: <OF72946BD9.9432A2C6-ON4825787D.001619F0-4825787D.001882DE@zte.com.cn> <4DB56C9C.1080004@cisco.com> <6369CB70BFD88942B9705AC1E639A33822CB26E13D@DC-US1MBEX4.global.avaya.com> <4DB853B0.5060506@cisco.com> <6369CB70BFD88942B9705AC1E639A33822CB33B18C@DC-US1MBEX4.global.avaya.com>
To: "Shekh-Yusef, Rifaat (Rifaat)" <rifatyu@avaya.com>
X-Mailer: Apple Mail (2.1084)
Cc: "splices@ietf.org" <splices@ietf.org>
Subject: Re: [splices] Answering a 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: Mon, 02 May 2011 13:45:50 -0000

Hi Rifaat, 

I think this works well. Thanks for re-stating this clearly. 

I see a couple of next steps here:
- how is in incoming call which has an initial A+V answered?
- how is an outgoing call which has an initial A+V audio created?
- if both ends are "loosely coupled" are there any optimizations or shortcuts that seem worthwhile?

I don't think there is anything too tricky about these - but they will need to be worked through. I agree with Simon that it seems time to start to capture this work in a draft. 

Regards, 

Peter Musgrave

On 2011-05-01, at 11:41 AM, Shekh-Yusef, Rifaat (Rifaat) wrote:

> Hi,
> 
> In the following flow, I have tried to incorporate all the feedback that I received so far.
> The only open issue that I am aware of is the issue of what to present to the user on the PC when the phone initiates a video call to the PC (see (#) below).
> 
> Can you please review the flow below and let me know if we have any other open issues?
> 
> 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 audio call from Bob to Alice
>    |                     |                     |                     |
>    |                     |                     | INVITE Alice [Audio]|
>    |                     |                     |<--------------------|
>    |                     | INVITE Alice [Audio]|                     |
>    |                     |<--------------------|                     |
>    | INVITE Alice [Audio]|                     |                     |
>    |<------------------------------------------|                     |
>    |                     |                     |                     |
> Let's assume that Alice used her PC to instruct the phone to answer the call    
>    |                     |                     |                     |
>    | REFER Refer-To: urn:sip-action:call:answer;transducer=speaker|headset
>    |-------------------->|                     |                     |
>    | 200 OK              |                     |                     |
>    |<--------------------|                     |                     |
>    |                     |                     |                     |
>    |                     | 200 OK [Audio]      |                     |
>    |                     |-------------------->|                     |
>    |                     |                     | 200 OK [Audio]      |
>    |                     |                     |-------------------->|
>    | CANCEL              |                     |                     |
>    |<------------------------------------------|                     |
>    |                     |                     |                     |
>    |                     |<---dialog1------------------------------->|
>    |                     |                     |                     |
>    |                     |<======audio==============================>|
>    |                     |                     |                     |
>    |                     |                     |                     |
> 
> (*)
> 
>    |                     |                     |                     |
>    |                     |                     |                     |
>    |                     |                     |                     |
> The following is a re-INVITE from the remote party (Bob) to add video to the existing audio call
>    |                     |                     |                     |
>    |                     |                     | reINVITE Alice [A/V]|
>    |                     |                     |<--------------------|
>    |                     | reINVITE Alice [A/V]|                     |
>    |                     |<--------------------|                     |
>    |                     | 100 Trying          |                     |
>    |                     |-------------------->|                     |
>    |                     |                     | 100 Trying          |
>    |                     |                     |-------------------->|
>    |                     |                     |                     |
> The Desk Phone cannot handle video, but it knows that the PC can handle video, 
> so the Desk Phone initiates a new video INVITE to the PC.
> Alert-Info is used to control the alerting level. 
>    |                     |                     |                     |
>    |                     |                     |                     |
> (#) | INVITE [Video]      |                     |                     |
>    |        Alert-Info: whatever               |                     |
>    |<--------------------|                     |                     |
>    | 180                 |                     |                     |
>    |-------------------->|                     |                     |
>    |                     |                     |                     |
> The user can answer the video call using his PC, which would result on 
> 200 OK with video answer being sent to the phone.
> If the user chose to answer the incoming video call using his Desk Phone, 
> the following REFER will be sent to the PC, before the 200 OK with the 
> video answer is sent from the PC.
>    |                     |                     |                     |
>    | REFER Refer-To: urn:sip-action:call:answer                      |
>    |<--------------------|                     |                     |
>    | 200 OK              |                     |                     |
>    |-------------------->|                     |                     |
>    |                     |                     |                     |
>    | 200 OK [Video]      |                     |                     |
>    |-------------------->|                     |                     |
>    |                     |                     |                     |
>    |                     | 200 OK [A/V]        |                     |
>    |                     |-------------------->|                     |
>    |                     |                     | 200 OK [A/V]        |
>    |                     |                     |-------------------->|
>    |                     |                     |                     |
>    |<----dialog2-------->|<---dialog1------------------------------->|
>    |                     |                     |                     |
>    |                     |<======audio==============================>|
>    |<============================video==============================>|
>    |                     |                     |                     |
>    |                     |                     |                     |
> 
> 
> 
> Now let's assume that Alice is the side that wants to add video to the 
> existing audio call. The scenario continues after the (*) above.
> 
> Alice can use her phone to add video to the existing audio call. The phone
> must present a UI to Alice to allow her to do just that. If Alice chooses
> to use her phone, the following REFER will be sent from the phone to the PC, 
> which will instruct the PC to immediately send an INVITE with video offer
> 
>    | REFER Refer-To: urn:sip-action:call:join;dialog=dialog1;media=video
>    |<--------------------|                     |                     |
>    | 200 OK              |                     |                     |
>    |-------------------->|                     |                     |
>    |                     |                     |                     |
> 
> Alice can use her PC to add video to the existing audio call.
> The PC knows that there is an existing dialog between the Desk Phone 
> and Bob and present this to Alice for her to choose if she wants to 
> add video to the existing audio call or not. In this case Alice chose 
> to add video to the existing audio call, so the PC sends the following
> request:
>    |                     |                     |                     |
>    |                     |                     |                     |
>    | 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==============================>|
>    |                     |                     |                     |
>    |                     |                     |                     |
>    |                     |                     |                     |
> 
> 
> 
> _______________________________________________
> splices mailing list
> splices@ietf.org
> https://www.ietf.org/mailman/listinfo/splices