Re: [Standards] roster schema

2007-07-06 Thread Tomasz Sterna
Dnia 05-07-2007, czw o godzinie 16:49 -0600, Peter Saint-Andre
napisał(a):
  If the server could handle and client knows it could handle, it could
  use longer names.
 
 How does the client know?

It tried to put a long name in a minute ago and it succeeded. 


  640KB SHOULD be enough for anyone.
 
 We're talking about a handle for an IM contact or the name of a roster
 group here, not the functioning of a complete operating system. Get some
 perspective.

I'm giving you the perspective.

We'll defining standards for future use and we simply cannot envision
what will be the future requirements. Many tried and failed miserably.

Ergo - let's not introduce arbitrary restrictions where these are not
needed.
This is an implementation issue, so let the implementer and
administrator decide.


Your concern is clients failing roster sets.
Mridul recommended a MINIMUM though and I'm all for for it.
When you specify that server MUST handle at least 163 characters (yes
Unicode characters, not bytes - again this is an implementation issue),
then client authors could set the max limit on 163 and live perfectly
fine.



-- 
Tomasz Sterna
Xiaoka Grp.  http://www.xiaoka.com/



Re: [Standards] private storage revisited

2007-07-06 Thread Ian Paterson

Peter Saint-Andre wrote:

Whenever a client publishes the first item to a node that ends in
+[accessmodel], the pubsub service MUST create the node with a default
access model equal to the specified model (that is open or presence
or roster or authorize or whitelist). [1] For such a node, the
access model MUST remain fixed and a pubsub service MUST return an error
if the node owner tries to change it.

[1] In fact roster doesn't make sense here since you need to specify
the roster group. And BTW the list for whitelist must start out empty,
i.e., only the node owner can publish or subscribe. 


I think I agree with everything above except the proposed syntax. *If* 
we agree on the functionality, then IMHO it *should* be trivial to come 
up with a more appropriate syntax.


I strongly disagree with overloading the node attribute with the access 
model. IMHO, mixing an identifier and a configuration parameter into the 
same attribute would be a horrible (and unnecessary) hack.


Instead of:
publish node='http://jabber.org/protocol/activity+whitelist'

I could live with this syntax:
publish node='http://jabber.org/protocol/activity' 
access_model='whitelist'


However, IMHO, the following example stanza would fit better with the 
rest of the protocol. That would make it easier for developers, since 
they could simply reuse their existing configure/ element processing code:


iq from='[EMAIL PROTECTED]/balcony' type='set' id='create-presence'
 pubsub xmlns='http://jabber.org/protocol/pubsub'
   publish node='http://jabber.org/protocol/activity'
 item
   activity xmlns='http://jabber.org/protocol/activity'
 relaxing
   partying/
 /relaxing
 text xml:lang='en'My nurseapos;s birthday!/text
   /activity
 /item
   /publish
   configure
 x xmlns='jabber:x:data' type='submit'
   field var='FORM_TYPE' type='hidden'
 valuehttp://jabber.org/protocol/pubsub#node_config/value
   /field
   field var='pubsub#access_model'
 optionvaluewhitelist/value/option
   /field
 /x
   /configure
 /pubsub
/iq

I stress that the functionality associated with the above example would 
be absolutely identical to that which Peter described above.


- Ian

P.S. I put Ralph on copy because, although he has been very busy 
recently, we're not going to move forward on this without his input and 
eventual acceptance (he's both a principle author of the PubSub protocol 
and a council member).




Re: [Standards] Proposed XMPP Extension: Getting a User's Attention

2007-07-06 Thread Daniel Noll
On Friday 06 July 2007 06:49, XMPP Extensions Editor wrote:
 The XMPP Extensions Editor has received a proposal for a new XEP.

 Title: Getting a User's Attention

 Abstract: This document defines an XMPP protocol extension for getting a
 user's attention.

I know it doesn't have the humour tag, but I still can't tell if this is a 
joke or not.  Either way, it sounds like it has the potential to be the most 
abused feature ever.  :-)

It may even be desirable to enable this per-user.  Whether this means giving 
different users different disco results or giving the same result and 
silently dropping the packet, I'm not sure.  I think I would prefer the third 
option, the sender getting a not-authorized error back.

Daniel


pgpmIhloIvzBa.pgp
Description: PGP signature


Re: [Standards] XEP-0115 is harmful and should be deferred

2007-07-06 Thread Kevin Smith

On 6 Jul 2007, at 13:06, Daniel Noll wrote:
But mobile client users and authors are still going to object to  
receiving

data they didn't ask for, especially if it's the same size as what was
already being sent in the presence. :-)


Remember that if the server supports the caps optimisation you'll  
only receive caps when it changes, because it'll be stripped out of  
subsequent presence packets to you.


/K


--
Kevin Smith
KTP Associate - Exeter University / ai Corporation
Psi Jabber client developer/project leader (http://psi-im.org/)
XMPP Standards Foundation Council Member (http://xmpp.org)




Re: [Standards] XEP-0108: registry?

2007-07-06 Thread Daniel Noll
On Friday 06 July 2007 01:53, Peter Saint-Andre wrote:
 We *could* do that with the video phone activity. It's a bit of a
 borderline case, but IMHO it's going to be common enough that we want to
 define a separate activity for it.

Video phones may become common enough one day (when Cisco stop thinking the 
privilege is worth paying four times the price of a normal phone, there will 
probably be a boom in them) but if you want other types of phone that are 
already common enough to split into their own sections, I'm sure there are 
plenty.  Talking on a mobile vs. talking on a landline, for instance?  
Talking on a VOIP softphone vs. using a real phone?

    2. We already have presence for the other user to determine if I'm
       contactable.  i.e. can I not just set DND while on a video call?

 XEP-0108 is for things that are much more granular than showdnd/show.

That's why I will suggest doing both.  Set activity to on the phone and 
status to dnd.  That's more specific than doing either independently, and 
doesn't even require inventing a new type of phone which may not even add any 
useful information to the other user.

Daniel


pgpy1fhx1BcxZ.pgp
Description: PGP signature


Re: [Standards] Proposed XMPP Extension: Getting a User's Attention

2007-07-06 Thread Kevin Smith

On 6 Jul 2007, at 13:13, Daniel Noll wrote:

Title: Getting a User's Attention
I know it doesn't have the humour tag, but I still can't tell if  
this is a
joke or not.  Either way, it sounds like it has the potential to be  
the most

abused feature ever.  :-)


Some users want such a feature; I guess most clients would just have  
an option to ignore the tag.


/K

--
Kevin Smith
KTP Associate - Exeter University / ai Corporation
Psi Jabber client developer/project leader (http://psi-im.org/)
XMPP Standards Foundation Council Member (http://xmpp.org)




Re: [Standards] Proposed XMPP Extension: Getting a User's Attention

2007-07-06 Thread Andreas Monitzer

On Jul 06, 2007, at 14:13, Daniel Noll wrote:

It may even be desirable to enable this per-user.  Whether this  
means giving

different users different disco results or giving the same result and
silently dropping the packet, I'm not sure.  I think I would prefer  
the third

option, the sender getting a not-authorized error back.


Isn't not-authorized an iq result, and thus not applicable for a  
message stanza?


andy



Re: [Standards] roster schema

2007-07-06 Thread Michal 'vorner' Vaner
Hello

On Fri, Jul 06, 2007 at 10:54:01AM +0100, Richard Dobson wrote:
  It would be handy to also specify an extended additional error along with 
  the not-allowed/ so that the client can know what part of the roster item 
  is wrong which would add to the flexibility, e.g. name-limit-exceeded 
  xmlns=urn:xmpp:roster:errors/ and groupname-limit-exceeded 
  xmlns=urn:xmpp:roster:errors/.

Maybe even add the longest allowed item in the error so the client can
know how much it must restrict the user?

Like name-limit-exceeded xmlns=urn:xmpp:roster:errors max-len=511/

-- 
A nuclear war can ruin your whole day.

Michal 'vorner' Vaner


pgp1GdqT4liGm.pgp
Description: PGP signature


Re: [Standards] XEP-0115 is harmful and should be deferred

2007-07-06 Thread Peter Saint-Andre
Daniel Noll wrote:
 On Friday 06 July 2007 09:00, Peter Saint-Andre wrote:
 Robin Redeker wrote:
 And I think announcing capabilities seems to be a great application
 of PEP/PubSub. I can already imagine the client setting:
 PEP depends on XEP-0115. Circular dependencies seem like a bad idea.
 
 To point out the obvious, there are two non-circular solutions:
 
   1. Assume that caps is present and make PEP depend on caps (current option)

It's the current option because it's reality.

/psa



smime.p7s
Description: S/MIME Cryptographic Signature


Re: [Standards] Proposed XMPP Extension: Getting a User's Attention

2007-07-06 Thread Peter Saint-Andre
Andreas Monitzer wrote:
 On Jul 06, 2007, at 17:55, Peter Saint-Andre wrote:
 
 Isn't not-authorized an iq result, and thus not applicable for a message
 stanza?

 If the message contains only the attention element (as it certainly
 should), then the recipient can simply ignore it. It's not necessary to
 return an error, IMHO.
 
 On mixed messages, my implementation just ignores the attention part and
 displays the body-part like any other message when this feature is
 disabled. That's also how I specified it in the XEP.
 Note that my example actually is a mixed message. Of course, that's not
 necessary, and my implementation can't send such a stanza either (it'd
 be complicated UI-wise to do that).

How do other services implement this kind of poke feature? I assume in
the UI you can right-click or whatever to choose poke stpeter and your
client sends this special message off to me. I think it's less likely
that you'd send a message (hey pay attention!) with the poke, but
naturally you could do that. If my client didn't know anything about the
poke namespace (or was configured to ignore pokes) then it would simply
ignore that part of the stanza.

/psa



smime.p7s
Description: S/MIME Cryptographic Signature


Re: [Standards] Proposed XMPP Extension: Getting a User's Attention

2007-07-06 Thread Andreas Monitzer

On Jul 06, 2007, at 18:31, Peter Saint-Andre wrote:

How do other services implement this kind of poke feature? I  
assume in
the UI you can right-click or whatever to choose poke stpeter and  
your

client sends this special message off to me.


Usually, it's a button in the message window I think.


I think it's less likely
that you'd send a message (hey pay attention!) with the poke, but
naturally you could do that. If my client didn't know anything  
about the
poke namespace (or was configured to ignore pokes) then it would  
simply

ignore that part of the stanza.


Yes, that's what I was thinking.

andy



Re: [Standards] Proposed XMPP Extension: Getting a User's Attention

2007-07-06 Thread Rachel Blackman
How do other services implement this kind of poke feature? I  
assume in
the UI you can right-click or whatever to choose poke stpeter and  
your

client sends this special message off to me. I think it's less likely
that you'd send a message (hey pay attention!) with the poke, but
naturally you could do that. If my client didn't know anything  
about the
poke namespace (or was configured to ignore pokes) then it would  
simply

ignore that part of the stanza.


We have a poke function in Astra, and basically it's just a little  
shaky-window icon in the toolbar.  Works with the AIM, MSN, Yahoo,  
etc. pokes; I'll make it work with this.  (Obviously, it's something  
which can be turned off, and which personally I /do/... but it was a  
very highly-requested feature, so.)


Since poke (or buzz) is usually just implemented on any service or  
client as your message window jittering around on the recipient's  
desktop like a toddler who's just drunk a venté espresso, people tend  
to send a message, then hit poke.


--
Rachel Blackman [EMAIL PROTECTED]
Trillian Messenger - http://www.trillianastra.com/




Re: [Standards] Proposed XMPP Extension: Getting a User's Attention

2007-07-06 Thread Peter Saint-Andre
Rachel Blackman wrote:
 How do other services implement this kind of poke feature? I assume in
 the UI you can right-click or whatever to choose poke stpeter and your
 client sends this special message off to me. I think it's less likely
 that you'd send a message (hey pay attention!) with the poke, but
 naturally you could do that. If my client didn't know anything about the
 poke namespace (or was configured to ignore pokes) then it would simply
 ignore that part of the stanza.
 
 We have a poke function in Astra, and basically it's just a little
 shaky-window icon in the toolbar.  Works with the AIM, MSN, Yahoo, etc.
 pokes; I'll make it work with this.  (Obviously, it's something which
 can be turned off, and which personally I /do/... but it was a very
 highly-requested feature, so.)
 
 Since poke (or buzz) is usually just implemented on any service or
 client as your message window jittering around on the recipient's
 desktop like a toddler who's just drunk a venté espresso, people tend to
 send a message, then hit poke.

I guess we can't call it poke, since that's already taken by XEP-0132.
But buzz is fine with me unless it's trademarked by one of the
existing IM services -- attention is kind of boring if you ask me. ;-)

/psa





smime.p7s
Description: S/MIME Cryptographic Signature


Re: [Standards] private storage revisited

2007-07-06 Thread Peter Saint-Andre
Ian Paterson wrote:
 Peter Saint-Andre wrote:
 Whenever a client publishes the first item to a node that ends in
 +[accessmodel], the pubsub service MUST create the node with a default
 access model equal to the specified model (that is open or presence
 or roster or authorize or whitelist). [1] For such a node, the
 access model MUST remain fixed and a pubsub service MUST return an error
 if the node owner tries to change it.

 [1] In fact roster doesn't make sense here since you need to specify
 the roster group. And BTW the list for whitelist must start out empty,
 i.e., only the node owner can publish or subscribe. 
 
 I think I agree with everything above except the proposed syntax. *If*
 we agree on the functionality, then IMHO it *should* be trivial to come
 up with a more appropriate syntax.
 
 I strongly disagree with overloading the node attribute with the access
 model. IMHO, mixing an identifier and a configuration parameter into the
 same attribute would be a horrible (and unnecessary) hack.

One nice thing about the NodeID hack is that the client knows
immediately what the access model (e.g., if the node already exists and
it receives data published to that node by another resource).

 Instead of:
 publish node='http://jabber.org/protocol/activity+whitelist'
 
 I could live with this syntax:
 publish node='http://jabber.org/protocol/activity'
 access_model='whitelist'

Haven't we been down this road before? See for instance Example 5 here:

http://www.xmpp.org/extensions/attic/jep-0163-0.2.html

Yet we moved away from that. See here (Ralph objecting to the 'access'
attribute):

http://mail.jabber.org/pipermail/standards/2006-May/011315.html

And further discussion:

http://mail.jabber.org/pipermail/standards/2006-May/011383.html
http://mail.jabber.org/pipermail/standards/2006-May/011414.html
http://mail.jabber.org/pipermail/standards/2006-May/011417.html
http://mail.jabber.org/pipermail/standards/2006-June/011496.html
http://mail.jabber.org/pipermail/standards/2006-June/011572.html

This is essentially publish+configure all over again, but limited to the
access model.

 However, IMHO, the following example stanza would fit better with the
 rest of the protocol. That would make it easier for developers, since
 they could simply reuse their existing configure/ element processing
 code:
 
 iq from='[EMAIL PROTECTED]/balcony' type='set' id='create-presence'
 pubsub xmlns='http://jabber.org/protocol/pubsub'
   publish node='http://jabber.org/protocol/activity'
 item
   activity xmlns='http://jabber.org/protocol/activity'
 relaxing
   partying/
 /relaxing
 text xml:lang='en'My nurseapos;s birthday!/text
   /activity
 /item
   /publish
   configure
 x xmlns='jabber:x:data' type='submit'
   field var='FORM_TYPE' type='hidden'
 valuehttp://jabber.org/protocol/pubsub#node_config/value
   /field
   field var='pubsub#access_model'
 optionvaluewhitelist/value/option
   /field
 /x
   /configure
 /pubsub
 /iq
 
 I stress that the functionality associated with the above example would
 be absolutely identical to that which Peter described above.

Right.

It's publish+configure. Again. Do you think we'll make more progress
this time?

Peter

-- 
Peter Saint-Andre
XMPP Standards Foundation
http://www.xmpp.org/xsf/people/stpeter.shtml



smime.p7s
Description: S/MIME Cryptographic Signature


[Standards] RC2 of bis drafts

2007-07-06 Thread Peter Saint-Andre
As previously mentioned, I provisionally removed server dialback from
rfc3920bis in preparation for moving that documentation to a XEP:

http://www.xmpp.org/extensions/inbox/dialback.html

Unfortunately, the Council has not yet approved publication of the
server dialback proto-XEP. Therefore I cannot submit version -03 of
rfc3920bis to the IETF until after the next Council meeting, which means
I will miss the IETF's July 09 deadline, which means the -03 versions
won't be published until at least July 23 (at the soonest).

However, this isn't necessarily a bad thing, because before submitting
these drafts to the IETF I'd like to re-read them at least one more time
and compare them to the marked-up paper copies I used for editing.

If you too would like to read these drafts before they are submitted, I
have posted RC2 files here:

http://www.xmpp.org/internet-drafts/draft-saintandre-rfc3920bis-03.html

http://www.xmpp.org/internet-drafts/draft-saintandre-rfc3920bis-03.html

Thanks!

Peter

-- 
Peter Saint-Andre
XMPP Standards Foundation
http://www.xmpp.org/xsf/people/stpeter.shtml



smime.p7s
Description: S/MIME Cryptographic Signature


Re: [Standards] private storage revisited

2007-07-06 Thread Peter Saint-Andre
Thanks for the helpful post, Ralph. Comments inline.

Ralph Meijer wrote:

 First of I want to restate the issue: the publisher wants to publish an
 item to a node that has a certain access model. There are two ways to
 solve this:
 
 1. No auto create.
 
 In this case, there is no magical node creation on publish. A publish to
 a non-existing node fails, the client will create a node with the
 desired configuration and then republishes.

I agree with you that this is fine behavior. But we let auto-create
sneak in last year and people don't want to let go of it now...

 2. Auto create.
 
 Here, as long as all nodes are to be created equal, with the default
 configuration, all is well. However, if you are having a service that
 hosts both extended presence nodes and private access nodes, you will
 want to have different configurations for the nodes that are created
 automatically on publish. Obviously you can check before each publish,
 but that is undesirable for various reasons.

snip/

 I still oppose the idea of publish+configure because it is not what it
 seems. What we want is this: on publish, if the node exists, only
 process the request if the node has this access model, or, if the node
 does not exist, create a node that has this access model.

Correct.

 So whatever you would add to the request, doesn't actually
 (re-)configure the node. It is some kind of precondition for the publish
 request to succeed. The auto node creation is a side effect.

Also correct.

 But having the one-trick pony of an attribute for the access model feels
 icky to me. What if we do allow the publisher to attach a form with
 'publishing options', 'publishing conditions', or whatever we want to
 call them? Something not called configure/.

That seems acceptable to me, because as you say it's not really a
configuration. And people seem to be interested only in access models,
not in configuring every possible option (at least for now as you say).

 For now we would only have a check on the access model in there. But it
 does leave the door open for future enhancements.

Though probably *not* every possible configurable option (friendly name
of the node, default language, or whatever).

 Ian seemed to agree on this idea.

Great.

 I do want to note that prefer 1) from above more, but if we have 2),
 like we do now, I think this is the next best thing.

Or the next-least-worst thing. ;-)

So we'd have something like this:

iq from='juliet at capulet.com/balcony' type='set' id='foo'
  pubsub xmlns='http://jabber.org/protocol/pubsub'
publish node='http://jabber.org/protocol/activity'
  item
activity xmlns='http://jabber.org/protocol/activity'
  relaxing
partying/
  /relaxing
  text xml:lang='en'My nurseapos;s birthday!/text
/activity
  /item
/publish
preconditions
  x xmlns='jabber:x:data' type='submit'
field var='FORM_TYPE' type='hidden'
  valuehttp://jabber.org/protocol/pubsub#node_config/value
/field
field var='pubsub#access_model'
  optionvaluewhitelist/value/option
/field
  /x
/preconditions
  /pubsub
/iq

If the node exists and the precondition is not met (in this case, if the
access model is something other than whitelist), then the publish
fails with a suitable error condition (probably conflict/ along with
some pubsub-specific condition).

If the node exists and the precondition is met, then the publish succeeds.

If the node does not exist, then the service auto-creates the node with
default configuration in all respects except those specified in the
preconditions (in this case, the node would be created with an access
model of whitelist) and the publish succeeds.

Correct?

Peter

-- 
Peter Saint-Andre
XMPP Standards Foundation
http://www.xmpp.org/xsf/people/stpeter.shtml



smime.p7s
Description: S/MIME Cryptographic Signature


Re: [Standards] Proposed XMPP Extension: Getting a User's Attention

2007-07-06 Thread Rachel Blackman

Since poke (or buzz) is usually just implemented on any service or
client as your message window jittering around on the recipient's
desktop like a toddler who's just drunk a venté espresso, people  
tend to

send a message, then hit poke.


I guess we can't call it poke, since that's already taken by XEP-0132.
But buzz is fine with me unless it's trademarked by one of the
existing IM services -- attention is kind of boring if you ask  
me. ;-)


Most clients just call it 'buzz' that I've seen, since on some it  
makes a buzzing noise, and even if not the window jittering around  
rapidly looks a bit like a buzzer going off.


--
Rachel Blackman [EMAIL PROTECTED]
Trillian Messenger - http://www.trillianastra.com/




Re: [Standards] XEP-0115 is harmful and should be deferred

2007-07-06 Thread Daniel Noll
On Saturday 07 July 2007 02:04, Peter Saint-Andre wrote:
 Daniel Noll wrote:
  On Friday 06 July 2007 09:00, Peter Saint-Andre wrote:
  Robin Redeker wrote:
  And I think announcing capabilities seems to be a great application
  of PEP/PubSub. I can already imagine the client setting:
 
  PEP depends on XEP-0115. Circular dependencies seem like a bad idea.
 
  To point out the obvious, there are two non-circular solutions:
 
1. Assume that caps is present and make PEP depend on caps (current
  option)

 It's the current option because it's reality.

But of course.  It's reality because it was the option which was chosen.

Daniel


pgpG9cIvrmEEF.pgp
Description: PGP signature


Re: [Standards] XEP-0115 is harmful and should be deferred

2007-07-06 Thread Daniel Noll
On Friday 06 July 2007 22:19, Kevin Smith wrote:
 On 6 Jul 2007, at 13:06, Daniel Noll wrote:
  But mobile client users and authors are still going to object to
  receiving
  data they didn't ask for, especially if it's the same size as what was
  already being sent in the presence. :-)

 Remember that if the server supports the caps optimisation you'll
 only receive caps when it changes, because it'll be stripped out of
 subsequent presence packets to you.

He'll still get a cap flood on login though, unless we can optimise that too.

But I suspect mobile users will eventually use gateway tricks to reduce their 
bandwidth instead of relying on specs being tailored for their requirements.

As time goes forward, more people's mobiles are on unlimited data accounts, 
and their bandwidth is increasing (256k on a phone is doable by EDGE, which 
is not even considered to be 3G.)  The importance of saving bandwidth for the 
few guys not on thse plans will be like optimising a web site for a 56k modem 
user -- nobody will even think about it, and they probably shouldn't.

Daniel


pgpU0eCXfneVz.pgp
Description: PGP signature


Re: [Standards] Proposed XMPP Extension: Getting a User's Attention

2007-07-06 Thread Daniel Noll
On Saturday 07 July 2007 01:55, Peter Saint-Andre wrote:
 If the message contains only the attention element (as it certainly
 should), then the recipient can simply ignore it. It's not necessary to
 return an error, IMHO.

To some extent though I'd like to know if I prod someone whose client claimed 
to support the feature, and for some reason they don't get prodded.

On the other hand you can solve the same problem by telling some users you 
support it and other users you don't.  So those other users don't even get 
the button in the first place.

Daniel


pgpsZRDr7lo3U.pgp
Description: PGP signature