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

"Shekh-Yusef, Rifaat (Rifaat)" <rifatyu@avaya.com> Mon, 23 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 9334EE0791 for <splices@ietfa.amsl.com>; Mon, 23 May 2011 05:56:22 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.791
X-Spam-Level:
X-Spam-Status: No, score=-2.791 tagged_above=-999 required=5 tests=[AWL=-0.192, 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 w1bG+it1kQmt for <splices@ietfa.amsl.com>; Mon, 23 May 2011 05:56:21 -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 6463CE06A8 for <splices@ietf.org>; Mon, 23 May 2011 05:56:20 -0700 (PDT)
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: AgUBABJY2k3GmAcF/2dsb2JhbACXZo4+d6ddAppIhhkElF2KRQ
X-IronPort-AV: E=Sophos;i="4.65,256,1304308800"; d="scan'208";a="189627015"
Received: from unknown (HELO co300216-co-erhwest.avaya.com) ([198.152.7.5]) by p-us1-iereast-outbound.us1.avaya.com with ESMTP; 23 May 2011 08:56:19 -0400
X-IronPort-AV: E=Sophos;i="4.65,256,1304308800"; d="scan'208";a="625173874"
Received: from unknown (HELO DC-US1HCEX3.global.avaya.com) ([135.11.52.22]) by co300216-co-erhwest-out.avaya.com with ESMTP; 23 May 2011 08:56:19 -0400
Received: from DC-US1MBEX4.global.avaya.com ([169.254.1.192]) by DC-US1HCEX3.global.avaya.com ([135.11.52.22]) with mapi; Mon, 23 May 2011 08:56:18 -0400
From: "Shekh-Yusef, Rifaat (Rifaat)" <rifatyu@avaya.com>
To: Paul Kyzivat <pkyzivat@cisco.com>
Date: Mon, 23 May 2011 08:56:18 -0400
Thread-Topic: [splices] Answering an A/V Call Using Two Separate Devices proposal
Thread-Index: AcwY9fMjzXFqQJgZRauC1dkxrEkfoAAUfv8E
Message-ID: <6369CB70BFD88942B9705AC1E639A33822CC7FB9A1@DC-US1MBEX4.global.avaya.com>
References: <6369CB70BFD88942B9705AC1E639A33822CC01E548@DC-US1MBEX4.global.avaya.com> <4DD87FBF.5010504@cisco.com> <6369CB70BFD88942B9705AC1E639A33822CC7FCE3E@DC-US1MBEX4.global.avaya.com> <4DD97B5D.7040404@cisco.com> <6369CB70BFD88942B9705AC1E639A33822CC7FCE75@DC-US1MBEX4.global.avaya.com>, <4DD9CE66.8010204@cisco.com>
In-Reply-To: <4DD9CE66.8010204@cisco.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
Cc: "splices@ietf.org" <splices@ietf.org>
Subject: Re: [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: Mon, 23 May 2011 12:56:22 -0000

I do not see how this proposal is "less mechanism" than the original proposal, but I tend to agree with you that this might be "a matter of taste".

Regards,
 Rifaat



________________________________________
From: Paul Kyzivat [pkyzivat@cisco.com]
Sent: Sunday, May 22, 2011 11:03 PM
To: Shekh-Yusef, Rifaat (Rifaat)
Cc: splices@ietf.org
Subject: Re: [splices] Answering an A/V Call Using Two Separate Devices proposal

On 5/22/2011 8:49 PM, Shekh-Yusef, Rifaat (Rifaat) wrote:
>
> You are then proposing the following:
>
>
> Alice used her *phone* to answer the incoming call
>      |                     |                     |                     |
>      |                     | 200 OK [Audio]      |                     |
>      |                     |-------------------->|                     |
>      |                     |                     | 200 OK [Audio]      |
>      |                     |                     |-------------------->|
>      | CANCEL              |                     |                     |
>      |<------------------------------------------|                     |
>      |                     |                     |                     |
>      |                     |<---dialog1------------------------------->|
>      |                     |<======audio==============================>|
>      |                     |                     |                     |
>      | INVITE Alert-Info and [Video]             |                     |
>      |<--------------------|                     |                     |
>
> What happens here?
> Will the user be required to take an action on the PC to accept the INVITE?
> Or you are expecting the PC to provide an answer without user intervention?

Could  be handled various ways.

The alert-info could suggest auto-answer. (The PC *honoring* such a
request might be conditional on who it comes. But even if not honored
for auto-answer it might still alert *differently*.) If it wasn't
auto-answered, and returned 180, it could be followed up with an INVOKE
to force the answer.

        Thanks,
        Paul

>      | 200 OK [Video]      |                     |                     |
>      |<--------------------|                     |                     |
>      |                     | re-INVITE [A/V]     |                     |
>      |                     |-------------------->|                     |
>      |                     |                     | re-INVITE [A/V]     |
>      |                     |                     |-------------------->|
>      |                     |                     | 200 OK [A/V]        |
>      |                     | 200 OK [A/V]        |<--------------------|
>      |                     |<--------------------|                     |
>      | ACK                 |                     |                     |
>      |<--------------------|                     |                     |
>      |                     |                     |                     |
>      |<------dialog2------>|<---dialog1------------------------------->|
>      |                     |                     |                     |
>      |                     |<======audio==============================>|
>      |<============================video==============================>|
>      |                     |                     |                     |
>
>
>> -----Original Message-----
>> From: Paul Kyzivat [mailto:pkyzivat@cisco.com]
>> Sent: Sunday, May 22, 2011 5:09 PM
>> To: Shekh-Yusef, Rifaat (Rifaat)
>> Cc: splices@ietf.org
>> Subject: Re: [splices] Answering an A/V Call Using Two Separate Devices
>> proposal
>>
>>
>>
>> On 5/22/2011 2:40 PM, Shekh-Yusef, Rifaat (Rifaat) wrote:
>>> Because a new INVITE will probably cause the PC to present the user with a
>> UI component and wait for the users input.
>>
>> Well, I suppose you would want the PC to indicate what is going on in
>> the UI in *some* way. But probably not exactly the same as getting a new
>> call.
>>
>> That could be handled via appropriate Alert-Info. To some extent this is
>> a matter of taste. I am inclined to prefer an economy of mechanism, and
>> I think the alert-info feels like less mechanism than the particular
>> INVOKE mechanism used in this scenario. (The invoke mechanism used here
>> requires the phone to assume that the PC is aware of the dialog, and
>> able to associate it with the appropriate contact address for doing the
>> invite.)
>>
>>        Thanks,
>>        Paul
>>
>>> Regards,
>>>    Rifaat
>>>
>>>
>>>> -----Original Message-----
>>>> From: splices-bounces@ietf.org [mailto:splices-bounces@ietf.org] On Behalf
>> Of
>>>> Paul Kyzivat
>>>> Sent: Saturday, May 21, 2011 11:15 PM
>>>> To: splices@ietf.org
>>>> Subject: Re: [splices] Answering an A/V Call Using Two Separate Devices
>>>> proposal
>>>>
>>>> I guess all of that can work. But for the last part, if the phone knows
>>>> enough to send the invoke to the pc, why can't it just send an INVITE to
>>>> the pc?
>>>>
>>>>     Thanks,
>>>>     Paul
>>>>
>>>> On 5/21/2011 8:56 AM, Shekh-Yusef, Rifaat (Rifaat) wrote:
>>>>> 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==============================>|
>>>>>        |                     |                     |                     |
>>>>>
>>>>>
>>>>>
>>>>> _______________________________________________
>>>>> splices mailing list
>>>>> splices@ietf.org
>>>>> https://www.ietf.org/mailman/listinfo/splices
>>>>>
>>>> _______________________________________________
>>>> splices mailing list
>>>> splices@ietf.org
>>>> https://www.ietf.org/mailman/listinfo/splices
>>>
>