Subject: [XCON] Talking Points

From: Adam Roach <[email-masked]>
Date: Tue, 21 Mar 2006 16:52:06 -0600

[as chair]

To prompt discussion, some of the points that were raised last night
include:

    * Semantic versus syntactic operations. This ties into:
    * Do new templates include new operations that are added to the
      conference control protocol?

Also, one proposal about the topics to discuss tomorrow include the
specific operations that the conference control protocol should include.

A union of the operations in the current drafts yields the following list:

    * Create Conference based on specified blueprint
    * Create Conference based on implied blueprint
    * Modify/Delete/Get Conference
    * Add/Modify/Delete/Get User
    * Modify User Roles
    * Add/Modify/Delete/Get Endpoint
    * Add/Modify/Delete/Get Endpoint Media
    * Add/Modify/Delete/Get Media Groups
    * Add/Modify/Delete Sidebar
    * Add/Modify/Delete/Get Role
    * Add User To Sidebar
    * Delete User From Sidebar
    * Move User Between Sidebars
    * Add/Modify/Delete/Get XML element
    * Set/Get/Delete XML attribute

    * Get Templates
    * Get Blueprints
    * Get Active Conferences

    * Cancel
    * Ping
    * Options

Looking at the proposed common conference schema, we should be thinking
about modifying the conference description, the host information, the
conference state, the security mechanism, the users, the sidebars, and
the template. Although it isn't yet completed, I think we have enough
information in the schema to have an intelligent conversation around how
these operations can be applied to the fixed conference portion.

That does, of course, leave the issue of what we need to do in order to
change the template part. I don't have anything constructive to say on
this topic, and trust that others here can attempt to fill in the gaps.

/a

_______________________________________________
XCON mailing list
[email-masked]
https://www1.ietf.org/mailman/listinfo/xcon

---

From: "Brian Rosen" <[email-masked]>
Date: Tue, 21 Mar 2006 18:13:24 -0500

Using my verb/noun list:

    * Create Conference based on specified blueprint
Create(Conference)
    * Create Conference based on implied blueprint
Create(Conference)
    * Modify/Delete/Get Conference
Delete(Conference).  Maybe I need a get/modify but I don't think so
    * Add/Modify/Delete/Get User
AddListItem(Participant), DeleteListItem(Participant).  May need a modify,
but I don't think so
    * Modify User Roles
Is this AddListItem(AllowedRoles)?  I'd need a new noun for List
    * Add/Modify/Delete/Get Endpoint
I'm not sure exactly what this is, but may need another noun for endpoint
    * Add/Modify/Delete/Get Endpoint Media
I'm pretty sure this is not xcon state
    * Add/Modify/Delete/Get Media Groups
I'm pretty sure this is not xcon state
    * Add/Modify/Delete Sidebar
Create(Sidebar), Delete(Sidebar) not sure you need a modify
   Generally I think you have a very simplistic create, and then use 
   set/get to change values in the object the create made for you
    * Add/Modify/Delete/Get Role
Need a noun, maybe Set(Role), but is this actually conference state?
    * Add User To Sidebar
AddListItem(Sidebar)
    * Delete User From Sidebar
DeleteListItem(Sidebar)
    * Move User Between Sidebars
Delete then add.  Doesn't have to be a transaction I think
    * Add/Modify/Delete/Get XML element
Set/Get(one of my list of nouns)
    * Set/Get/Delete XML attribute
Dunno what you mean
    * Get Templates
Aha, need a noun for set/get "focus"
    * Get Blueprints
Get(focus)
    * Get Active Conferences
Get(focus)

    * Cancel
Cancel what?
    * Ping
Ping on the conf control channel?  Some no-op
    * Options
Dunno what you mean

---

From: Adam Roach <[email-masked]>
Date: Tue, 21 Mar 2006 17:23:28 -0600

As clarification, what I posted was a straight union of the operations
from all four proposals, not what I thought was a good set of
operations. This isn't likely to make sense without some paring.
However, at least *some* one thought that each of the operations was a
good idea.

>    * Set/Get/Delete XML attribute
Consider the construct:
  <foo bar="baz" />

In XML, "foo" is the element, and "bar" is an attribute of that element.

See the CSCP draft for more information.

>Cancel what?

See the CCCP draft for more information.

>Ping on the conf control channel?  Some no-op

See the CCCP draft for more information.

>Dunno what you mean

See the COMP draft for more information.

/a

---

From: "Sean Olson" <[email-masked]>
Date: Tue, 21 Mar 2006 15:33:14 -0800

The CCCP ping is a liveness check similar to the ill-fated SIP PING
discussions. It specifically checks for application-level liveness of
the conference state at the Focus. There are some interesting failover
cases that could benefit from this  --- there may also be much better or
simpler solutions. I'm fine with cutting this from the initial list of
operations.

The CCCP cancel command is similar to a SIP CANCEL which we thought
might be useful to terminate long commands (addUser for example). In
retrospect, we might want to cut this operation for now until we have a
better handle on the other operations.

-----Original Message-----
From: Adam Roach [mailto:[email-masked]] 
Sent: Tuesday, March 21, 2006 3:23 PM
To: [email-masked]
Cc: [email-masked]
Subject: Re: [XCON] Talking Points

Brian Rosen wrote:

>    * Add/Modify/Delete/Get XML element Set/Get(one of my list of 
>nouns)
Consider the construct:
  <foo bar="baz" />

/a

---

From: <[email-masked]>
Date: Tue, 21 Mar 2006 19:41:48 -0600

>From: ext Adam Roach [mailto:[email-masked]] 
>Sent: Tuesday, March 21, 2006 4:52 PM
>To: [email-masked]
>Subject: [XCON] Talking Points
>
>[as chair]
>

How do you get a new template ? Does defining a new control called "foo"
constitutes a new template OR defining new XML elements which provide a
different functionality constitues a new template. According the the
framework draft, if your server supports a new type of control ( a
control according to the template draft is something like mute, pause
etc) then you don't need to have a new template and your terminal would
try its best to support this control based on the control type and its
default values. If you go on this lines then I guess having syntactic
operations would make sense so as not to update the protocol (meaning
trying to standardize the new functionality in the protocol). Also if
you are going to create new templates (by defining new elements in the
templates), I guess then we need to standardize this templates and add
it to template repositry. In this case too, syntactic protocol would be
the best choice. 

Umesh