The polling portion is easy.  When you receive presence from a person, just 
check there timezone using XEP-202.  This is much less work then PEP.

Are you already using PEP (XEP-0163)?  This is not something available by 
default.  Publishing GeoLocation is not mandatory with PEP either but just an 
example of what can be published.  Technically, you can publish anything you 
want to a PEP node.  That could include the timezone (XEP-202) information.  If 
pep is really the way you want to go, just publish the timezone data and not 
all of GeoLocation.  I still say your timezone doesn't change often enough to 
warrant PEP though.  It is also up to the client to publish this information 
and you can't be certain that every client will publish this information.

Just to ensure we are on the same page, when using PEP, every account has a 
pubsub nod.  You are automatically subscribed to the node of anyone in your 
roster.  If you have a lot of contacts, this could be a lot of subscritpions 
and a lot of data coming your way.  This seems overkill just for timezone 
information.

Just checking the timezone when presence changes seems like it would be much 
less work and traffic on the network then getting the information from pep.  

Thanks,
Todd

-----Original Message-----
From: standards-boun...@xmpp.org [mailto:standards-boun...@xmpp.org] On Behalf 
Of Jonny Lamb
Sent: Wednesday, May 16, 2012 10:14 AM
To: XMPP Standards
Subject: Re: [Standards] Timezone element in XEP-0080: User Location

On Fri, 2012-05-11 at 09:42 -0600, Peter Saint-Andre wrote:
> We do have a spec for "Entity Time"...
> 
> http://xmpp.org/extensions/xep-0202.html

Sorry, I had actually seen this, I should have referenced it in my first mail. 
The problems I see with the XEP-0202 approach and the advantages of adding a 
'timezone' element to the XEP-0080 are:

* The XEP-0202 approach requires you to poll all your contacts as there
  is no change notification.

* Having both location and timezone information in one PEP node
  guarantees atomicity. For example, it's easy to get into a situation
  where the XEP-0202 timezone reports Europe/London and the location PEP
  node reports you're in San Francisco.

* If you are publishing your location anyway in the XEP-0080 PEP node
  then it's one less thing to change, from the perspective of the client
  implementers and network traffic. 

One advantage of XEP-0202 over the XEP-0080 approach is that the latter will 
not work on Google's servers.

How about: said new 'timezone' element in the XEP-0080 PEP node which 
cross-references XEP-0202 in an attempt to keep them in sync?

--
Jonny Lamb


Reply via email to