[standards-jig] LAST CALL: JEP-0085 (Chat State Notifications)

Nathan Walp faceprint at faceprint.com
Thu Jan 15 00:55:52 UTC 2004


On Wed, 2004-01-14 at 17:40, Sebastiaan Deckers wrote:
> Hello,
> 
> While I do not oppose the idea of explicitly adding the PAUSED state to 
> the specification, I would like to point out that the described scenario 
> can also be achieved by extra logic in the recipient's client.
> The PAUSED state is nothing more than an ACTIVE state received after a 
> COMPOSING state has been received, but before the next message or 
> COMPOSING/INACTIVE has been received.
> 
> Example:
>  0. Juliet has not received any chatstatus from Romeo
>  1. Juliet receives a message with the ACTIVE chatstate attached
>  2. Romeo starts composing a new message
>     -> Romeo's client sends the COMPOSING state
>     -> Juliet's client shows that Romeo is composing a new message
>  3. Romeo pauses
>     -> Romeo's client sends the ACTIVE state
>     -> Juliet's client shows that Romeo has PAUSED
> 4a. Romeo decides to send the message anyway
>     -> Romeo's client adds the ACTIVE state to his message
>     -> Juliet's client returns to step 1
> 4b. Romeo re-composes his message
>     -> Romeo's client sends the COMPOSING state
>     -> Juliet's client returns to step 2
> 4c. Romeo decides he has nothing to say and closes the window
>     -> Romeo's client sends the INACTIVE state
>     -> Juliet's client returns to step 0
> 
> One advantage to the explicit PAUSED state would be that Romeo's client 
> can announce a difference between ACTIVE-as-in-PAUSED and 
> ACTIVE-but-not-PAUSED.
> 
> Just a quick back-of-the-napkin idea.

The way things are currently, sending state ACTIVE can mean one of two
things:

1. Romeo has paused typing  (maybe he forgot how to spell Capulet)
2. Romeo decided that he wants to hear Juliet's response before seding
anything else, so he erases everything in his client's entry widget

Since Juliet's client has no way of knowing which of these events has
occurred, so the best thing for her client to do is to pretend the
second possibility happened.  With a PAUSED state, her client could know
that Romeo is just pausing (or a reeeally slow typer) and that she
should expect to see a message relatively soon.  

Nathan
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 189 bytes
Desc: This is a digitally signed message part
URL: <http://mail.jabber.org/pipermail/standards/attachments/20040114/74f65472/attachment.sig>


More information about the Standards mailing list