Draft levin xcon cccp 01 txt
Download
1 / 22

draft-levin-xcon-cccp-01.txt - PowerPoint PPT Presentation


  • 86 Views
  • Uploaded on

draft-levin-xcon-cccp-01.txt. By Orit Levin [email protected] Agenda. Working assumptions Syntax questions From “Data Manipulation” to pure “Semantics” Can the requests be expressed using the same types as the resulted state? ………..........……………………………………....… CCCP scope

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about ' draft-levin-xcon-cccp-01.txt' - cynara


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
Draft levin xcon cccp 01 txt

draft-levin-xcon-cccp-01.txt

By Orit Levin

[email protected]

XCON WG Interim


Agenda
Agenda

  • Working assumptions

  • Syntax questions

    • From “Data Manipulation” to pure “Semantics”

    • Can the requests be expressed using the same types as the resulted state?

      ………..........……………………………………....…

  • CCCP scope

    • Instance/Occurrence, Reservation. Also, Template?

    • Resulting Naming Conventions

    • Querying the conferencing information

  • Transaction Model Details

XCON WG Interim


Working assumptions
Working Assumptions

  • Must run over reliable transport, but transport agnostic

  • “Controlling a conference” (i.e. creating and managing it) means “changing the state of the conference object”

XCON WG Interim


Choosing a preferred syntax

Choosing a preferred syntax

From “Data Manipulation” to “Semantics Oriented”

XCON WG Interim


Options
Options

  • What would be the best way to express the desired changes or the resulted next stage of the conference object?

    • A-la draft-levin-xcon-cccp-00.txt

    • A-la TBD simple-partial-notifications

    • A-la draft-levin-xcon-cccp-01.txt

    • RPC-like with explicit parameters

  • Let’s take a look at the example:

    • “Add user BOB and DIAL OUT to its PC4 with Main Audio only”

XCON WG Interim


A la draft levin xcon cccp 00 txt
A-la draft-levin-xcon-cccp-00.txt

  • Operation is included in the object schema

  • Included XML document needs to be parsed in order to parse the required operation

  • Supposedly not limited to data manipulations

XCON WG Interim


A la draft levin xcon cccp 00 txt cont
A-la draft-levin-xcon-cccp-00.txt (cont.)

<request requestId="1“ from="sip:[email protected]

to="[email protected]">

<content entity="sips:[email protected]">

<users>

<user entity="sip:[email protected]">

<display-text>Bob Hoskins</display-text>

<endpoint entity="sip:[email protected]">

<display-text>Bob's Laptop</display-text>

<joining-method>dialed-out</joining-method>

<media id="1">

<display-text>main audio</display-text>

<proto>audio</proto>

</media>

</endpoint>

<operator><code>add</code></operator>

</user>

</users>

</content>

</request>

XCON WG Interim


A la deprecated draft simple tbd 02 txt
A-la deprecated draft-simple-tbd-02.txt

  • Operation is explicit and is (supposedly) limited to “data manipulation” type

  • Key is expressed in XPATH and MUST point to an existing XML document

  • CDATA is used as a part of XML (which is not a valid XML schema construction)

XCON WG Interim


A la deprecated draft simple tbd 02 txt cont
A-la deprecated draft-simple-tbd-02.txt (cont.)

<request requestId="1“ from="sip:[email protected]

to="[email protected]">

<add parent=“conference-state[@entity=&sips:[email protected]]">

<![CDATA[

<user entity="sip:[email protected]">

<display-text>Bob Hoskins</display-text>

<endpoint entity="sip:[email protected]">

<display-text>Bob's Laptop</display-text>

<joining-method>dialed-out</joining-method>

<media id="1">

<display-text>main audio</display-text>

<proto>audio</proto>

</media>

</endpoint>

</user>

]]>

</add>

</request>

XCON WG Interim


A la draft levin xcon cccp 01 txt
A-la draft-levin-xcon-cccp-01.txt

  • Operation is explicit and not limited to “data manipulations”

  • Keys are “strong typed”

XCON WG Interim


A la draft levin xcon cccp 01 txt cont
A-la draft-levin-xcon-cccp-01.txt (cont.)

CONFERENCE KEYS TYPE

<xs:complexType name="conference-keys-type">

<xs:attribute name="confEntity" type="xs:anyURI"/>

<xs:anyAttribute namespace="##other"/>

</xs:complexType>

USER KEYS TYPE

<xs:complexType name="user-keys-type">

<xs:attribute name="confEntity" type="xs:anyURI"/>

<xs:attribute name="userEntity" type="xs:anyURI"/>

<xs:anyAttribute namespace="##other"/>

</xs:complexType>

ENDPOINT KEYS TYPE

<xs:complexType name="endpoint-keys-type">

<xs:attribute name="confEntity" type="xs:anyURI"/>

<xs:attribute name="userEntity" type="xs:anyURI"/>

<xs:attribute name="endpointEntity" type="xs:anyURI"/>

<xs:anyAttribute namespace="##other"/>

</xs:complexType>

MEDIA KEYS TYPE

<xs:complexType name="media-keys-type">

<xs:attribute name="confEntity" type="xs:anyURI"/>

<xs:attribute name="userEntity" type="xs:anyURI"/>

<xs:attribute name="endpointEntity" type="xs:anyURI"/>

<xs:attribute name="mediaId" type="xs:string"/>

<xs:anyAttribute namespace="##other"/>

</xs:complexType>

XCON WG Interim


A la draft levin xcon cccp 01 txt cont1
A-la draft-levin-xcon-cccp-01.txt (cont.)

<request requestId="1“ from="sip:[email protected]

to="[email protected]">

<addUser>

<conferenceKeys confEntity="sip:[email protected]"/>

<user entity="sip:[email protected]">

<display-text>Bob Hoskins</display-text>

<endpoint entity="sip:[email protected]">

<display-text>Bob's Laptop</display-text>

<joining-method>dialed-out</joining-method>

<media id="1">

<display-text>main audio</display-text>

<proto>audio</proto>

</media>

</endpoint>

</user>

</addUser>

</request>

XCON WG Interim


Advantages of syntax as in cccp 01
Advantages of syntax as inCCCP-01

  • Not a Data Manipulation protocol. Any explicit requests can be added and their semantics well-defined

  • Strong type keys allow for automatic syntax validity check of a primitive

  • No XPATH processing is required

  • Conference-info-type and its subtypes can be used as is

  • Additional types (from multiple .xsd) can be used

XCON WG Interim


Choosing a preferred syntax1

Choosing a preferred syntax

Can the requests be expressed using the same types as the resulted state?

XCON WG Interim


Can the requests be expressed using the same types as the resulted state
Can the requests be expressed using the same types as the resulted state?

  • Advantages of using common types

    • No double specification work

    • Adding primitives with new semantics and keys is easy if needed

    • In implementation terms, minimum mapping is required from the “request” to the “new state”

  • Advantages of defining new types

    • More explicit, e.g. “dial-out” vs. “dialed-out”

XCON WG Interim


Cccp scope

CCCP Scope resulted state?

XCON WG Interim


Cccp scope1
CCCP Scope resulted state?

  • Works on Instance/Occurrence and Reservation

    • Also, on Template?

  • Resulting Naming Conventions

    • URI parameters?

    • Primitive attributes?

    • Separate primitives?

  • Querying of conferencing information

    • System: get the list of patterns, reservations, or occurrences

    • Conference: get specific conference data elements

XCON WG Interim


Transaction model

Transaction Model resulted state?

XCON WG Interim


Proposed transaction model
Proposed Transaction Model resulted state?

  • CCCP is a transaction client-server protocol

  • Two types of operations: request and response

  • A client issues requests to a server. A server MAY reply with multiple provisional responses before replying with the final response

  • The server MUST reply with a single final response

  • Two final responses are defined: "failure" and "success"

XCON WG Interim


Proposed transaction model cont
Proposed Transaction Model (Cont.) resulted state?

  • Transaction ID

    • requestId: A string generated by the CCCP client and unique for each CCCP request generated by the client

    • from: A URI which identifies the CCCP client

    • to: A URI which identifies the CCCP server

  • Each operation MAY include an 'aaId' attribute

    • holds a secured identity of the issuer of the CCCP request

    • Its value is being used by the CCCP server for authorization purposes

XCON WG Interim


Proposed transaction model cont1
Proposed Transaction Model (Cont.) resulted state?

  • A single CCCP operation MAY include multiple primitives

  • Multiple primitives within the same request MUST be executed as an atomic operation.

  • The primitives within the request operation MUST be performed by the CCCP server one-by-one in the order they appear in the request body.

  • The corresponding response operation MUST include the response primitive for each of the issued primitives in the exact same order. Note, that for this reason, the primitives inside the operation bodies are not numbered.

XCON WG Interim


Thanks

Thanks… resulted state?

XCON WG Interim


ad