[BLISS] Multiple Session Appearances of an AOR using Floor Control

Alan Johnston <alan@sipstation.com> Fri, 30 May 2008 19:51 UTC

Return-Path: <bliss-bounces@ietf.org>
X-Original-To: bliss-archive@optimus.ietf.org
Delivered-To: ietfarch-bliss-archive@core3.amsl.com
Received: from [127.0.0.1] (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id D4AC13A67DB; Fri, 30 May 2008 12:51:50 -0700 (PDT)
X-Original-To: bliss@core3.amsl.com
Delivered-To: bliss@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id 0CBB83A67DB for <bliss@core3.amsl.com>; Fri, 30 May 2008 12:51:50 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.599
X-Spam-Level:
X-Spam-Status: No, score=-2.599 tagged_above=-999 required=5 tests=[BAYES_00=-2.599]
Received: from mail.ietf.org ([64.170.98.32]) by localhost (core3.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id JkYEj5y51kTn for <bliss@core3.amsl.com>; Fri, 30 May 2008 12:51:49 -0700 (PDT)
Received: from mho-01-bos.mailhop.org (mho-01-bos.mailhop.org [63.208.196.178]) by core3.amsl.com (Postfix) with ESMTP id 114AE3A67A4 for <bliss@ietf.org>; Fri, 30 May 2008 12:51:49 -0700 (PDT)
Received: from 71-81-78-129.dhcp.stls.mo.charter.com ([71.81.78.129] helo=alan-johnstons-powerbook-g4-17.local) by mho-01-bos.mailhop.org with esmtpsa (TLSv1:AES256-SHA:256) (Exim 4.68) (envelope-from <alan@sipstation.com>) id 1K2Adf-000KNQ-QP for bliss@ietf.org; Fri, 30 May 2008 19:51:48 +0000
X-Mail-Handler: MailHop Outbound by DynDNS
X-Originating-IP: 71.81.78.129
X-Report-Abuse-To: abuse@dyndns.com (see http://www.mailhop.org/outbound/abuse.html for abuse reporting information)
X-MHO-User: U2FsdGVkX1+ys7H7fAOp5WE3qltYDeZOm1r7LSbB2dc=
Message-ID: <48405AD1.10503@sipstation.com>
Date: Fri, 30 May 2008 14:51:45 -0500
From: Alan Johnston <alan@sipstation.com>
User-Agent: Thunderbird 2.0.0.14 (Macintosh/20080421)
MIME-Version: 1.0
To: bliss@ietf.org
Subject: [BLISS] Multiple Session Appearances of an AOR using Floor Control
X-BeenThere: bliss@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: "Basic Level of Interoperability for SIP Services \(BLISS\) BoF" <bliss.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/bliss>, <mailto:bliss-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/pipermail/bliss>
List-Post: <mailto:bliss@ietf.org>
List-Help: <mailto:bliss-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/bliss>, <mailto:bliss-request@ietf.org?subject=subscribe>
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
Sender: bliss-bounces@ietf.org
Errors-To: bliss-bounces@ietf.org

All,

In the MLA design team, we have come up with two non-PUBLISH/NOTIFY mechanisms for this feature.  

The first is a floor control approach described in this email.  The other is an INVITE approach discussed in a separate email.

We are looking to get feedback on which of these approaches to develop further, and also revisit the PUBLISH/NOTIFY issues raised in Philadelphia.

Comments are most welcome!

Thanks,
Alan


- - - -  


Elements:

Standard SIP Event State Compositor (ESC)
Standard BFCP Floor Control Server that uses Appearance Agent as Moderator
Registrar/Forking Proxy Server that talks to Appearance Agent about incoming calls
Appearance Agent: software that acts as Moderator for floor control server and tells forking proxy to insert Alert-Info header field in incoming requests.

Operations:

UAs in the appearance group would subscribe to the dialog state of the AOR (to the ESC) and would publish their dialog state to the AOR.

The dialog package would be extended to include the <appearance> attribute. 

Appearance numbers are allocated/selected/reserved in two ways:

1. For incoming calls, the Forking Proxy interacts with the Appearance Agent.  The Appearance Agent selects an appearance by taking a particular floor and marking it "moderator controlled".  This appearance number is then included by the Forking Proxy in INVITEs.  When a UA answers the call, it takes the appearance number from the Alert-Info and includes it in the dialog state publication.  It then requests the floor associated with the appearance number from the floor control server, which forwards the request to the Appearance Agent (moderator).  The Appearance Agent correlates the floor control request with the dialog state notification with the dialog ID from the INVITE with the Alert-Info.  If they match, the floor is granted.  If they do not match, it means the floor request is not an answer of the call but is a random appearance selection by the UA and will be rejected.

2. For outgoing calls, the UA sends an INVITE and requests a particular floor from the floor control server.  Depending on the User Interface requirements, the floor request can be done before or after sending the INVITE.  The floor grant policy for most appearances is set to "first come first serve".  Once the floor has been granted and the call answered, the dialog state publication by the UA will include the appearance number.

When a call has ended, the UA releases the floor to the floor control server and this appearance is now available for incoming and outgoing calls.

When a UA in the group which does not support BFCP is in a call, the Appearance Agent will grant the floor associated with that appearance to that UA.  When that call is over, the Appearance Agent will release the floor.  Since the UA will not publish the appearance number to the ESC, the Appearance Agent will need to do that on their behalf.  If the UA does publish dialog state but without the appearance number, the Appearance Agent will still need to re-publish the dialog state including the appearance number.  UAs in the group will be able to recognize these two dialogs as one since they will have the same SIP dialog ID.

Alternate Approach:

The previous approach requires all UAs to support BFCP and interact with the floor control server.  It would be nice to come up with an approach that meant that only UAs who needed to seize a particular appearance number.  One way of doing this would be to do away with the standard ESC and have the Appearance Agent get all the publication information (with or without appearance information) and the send notifies including the appearance number.

In this case, a UA who does not care what appearance number is selected for an outgoing call would just make the call and would learn the appearance number in a NOTIFY from the Appearance Agent.  A UA which does care (due to UI issues) would still be forced to use BFCP to get the floor.

_______________________________________________
BLISS mailing list
BLISS@ietf.org
https://www.ietf.org/mailman/listinfo/bliss