RE: Side Effects of SUBSCRIBE are Harmful (was RE: [Sipping] RE: I-D ACTION:draft-culpepper-sipping-app-interact-reqs-00.txt)

"Fairlie-Cuninghame, Robert" <rfairlie@nuera.com> Mon, 06 May 2002 20:57 UTC

Received: from optimus.ietf.org (ietf.org [132.151.1.19] (may be forged)) by ietf.org (8.9.1a/8.9.1a) with ESMTP id QAA06309 for <sipping-archive@odin.ietf.org>; Mon, 6 May 2002 16:57:12 -0400 (EDT)
Received: (from daemon@localhost) by optimus.ietf.org (8.9.1a/8.9.1) id QAA20024 for sipping-archive@odin.ietf.org; Mon, 6 May 2002 16:57:19 -0400 (EDT)
Received: from optimus.ietf.org (localhost [127.0.0.1]) by optimus.ietf.org (8.9.1a/8.9.1) with ESMTP id QAA18547; Mon, 6 May 2002 16:33:04 -0400 (EDT)
Received: from ietf.org (odin [132.151.1.176]) by optimus.ietf.org (8.9.1a/8.9.1) with ESMTP id QAA18519 for <sipping@ns.ietf.org>; Mon, 6 May 2002 16:33:02 -0400 (EDT)
Received: from exchange1.nuera.com ([12.105.228.79]) by ietf.org (8.9.1a/8.9.1a) with ESMTP id QAA05382 for <sipping@ietf.org>; Mon, 6 May 2002 16:32:55 -0400 (EDT)
Received: by exchange1.nuera.com with Internet Mail Service (5.5.2653.19) id <JK3N6ZVA>; Mon, 6 May 2002 13:33:19 -0700
Message-ID: <E79883AEA37FD411A58C00508BAC5F4B01D38D07@exchange1.nuera.com>
From: "Fairlie-Cuninghame, Robert" <rfairlie@nuera.com>
To: "'eburger@snowshore.com'" <eburger@snowshore.com>
Cc: sipping@ietf.org
Subject: RE: Side Effects of SUBSCRIBE are Harmful (was RE: [Sipping] RE: I-D ACTION:draft-culpepper-sipping-app-interact-reqs-00.txt)
Date: Mon, 06 May 2002 13:33:19 -0700
MIME-Version: 1.0
X-Mailer: Internet Mail Service (5.5.2653.19)
Content-Type: text/plain; charset="iso-8859-1"
Sender: sipping-admin@ietf.org
Errors-To: sipping-admin@ietf.org
X-Mailman-Version: 1.0
Precedence: bulk
List-Id: SIPPING Working Group (applications of SIP) <sipping.ietf.org>
X-BeenThere: sipping@ietf.org

Hi Eric,

I agree. In fact I'm glad you say that as it reinforces an idea I've been
toying with over the last few days. 

I think that it would actually be good to represent ALL user interface
components (conforming to this framework) as SIP sessions. There are a
number of reasons I think this might be a good idea:

- Media-based UI components can then be treated the same as presentation- or
input- based components.

- Since it has been suggested that all virtual user interfaces MUST be
associated with a SIP session, it actually makes things a lot cleaner if all
UI components are themselves SIP sessions. For instance, a user that
initiates an application interaction session using a media-based component
(e.g., speaker+microphone) may later wish to switch to web-based interaction
and hangup the handset. This is easily accomplished if both components are
SIP sessions and the virtual user interface is associated with either/both
sessions.

- Additionally, application interactions do not need to be initiated with
media-based (or empty "placeholder") SIP sessions. For instance, an
application can initiate an interaction session with a VoiceXML-only
interface. 

- A user wants/needs to know what entities are listening to their actions
and input. From a security point of view (and more importantly human-factor
POV), it is a lot easier to compare apples to apples. For instance, the user
can see that the SIP sessions for the media-based component (e.g.
speaker+microphone), presentation-based (e.g. web-page), input-based (e.g.
dialpad) components are all associated to the same application. [Rather than
comparing SIP sessions to subscriptions to arbitrary markups]. 

- SIP sessions are time-bounded so that applications should not be able to
"lurk" in the background after an application session has finished.

- By placing all UI components in a SIP session, applications should be able
to update and close created user interface components.

This framework also fits very nicely (in fact almost transparently) into the
SIP framework. An application that wants to interact with a device (using
this framework) simply requests that the device issue a virtual user
interface identifier when establishing the initial SIP session. To add
additional components to the VUI, the application uses the received virtual
user interface identifier (which could even be a Contact-style URL). 

Now the problem is almost reduced to defining SIP payload formats for the
user interface components [e.g., markup reference in INVITE message body].

Comments?

Cheers,

Robert.


> -----Original Message-----
> From: Eric Burger [mailto:eburger@snowshore.com]
> Sent: 06 May 2002 16:24
> To: Fairlie-Cuninghame, Robert
> Cc: sipping@ietf.org
> Subject: Side Effects of SUBSCRIBE are Harmful (was RE: [Sipping] RE:
> I-D ACTION:draft-culpepper-sipping-app-interact-reqs-00.txt)
> 
> 
> Mumblings I've been hearing include the thought of using the SUBSCRIBE
> method to request a device to do something, like play a 
> prompt, prompt and
> collect digits, and so on.
> 
> This is bad, verging on EVIL.  Let us look at the definition 
> of SUBSCRIBE,
> from Section 4.1 of draft-ietf-sip-events-04:
> 
>      The SUBSCRIBE method is used to request current state and state
>      updates from a remote node [Notifier].
> 
> 
> SUBSCRIBE is supposed to be a non-invasive method.  With one 
> exception,
> SUBSCRIBE is not supposed to modify the state of the 
> Notifier.  Starting a
> prompt play, displaying a screen, or a prompt & collect operation most
> definitely changes the state of the Notifier.
> 
> The one exception is (obviously) the Notifier responds to the 
> SUBSCRIBE
> request.  If there is a non-zero Expires, the Notifier needs 
> to remember to
> update the Subscriber.  Other than that, SUBSCRIBE should 
> (MUST?) not have
> side effects on the Notifier.
> 
> 
> With respect to the comment below, a session is infinitely 
> more appropriate
> for the interaction model.
> 
> 
> -----Original Message-----
> From: sipping-admin@ietf.org 
[mailto:sipping-admin@ietf.org]On Behalf Of
Fairlie-Cuninghame, Robert
Sent: Friday, April 26, 2002 4:59 AM
To: 'jdrosen@dynamicsoft.com'
Cc: 'sipping@ietf.org'
Subject: [Sipping] RE: I-D
ACTION:draft-culpepper-sipping-app-interact-reqs-00.tx t

[snip]
I don't see any reason that it wouldn't be possible to place the markup in a
subscription .... or rather, I think perhaps a session is more appropriate
than a subscription for this model.
[snip]

_______________________________________________
Sipping mailing list  https://www1.ietf.org/mailman/listinfo/sipping
This list is for NEW development of the application of SIP
Use sip-implementors@cs.columbia.edu for questions on current sip
Use sip@ietf.org for new developments of core SIP