On Wednesday 15 October 2008 05:18:39 Peter Saint-Andre wrote: > Marcus Lundblad wrote: > > tis 2008-10-14 klockan 11:56 -0600 skrev Peter Saint-Andre: > >> Marcus Lundblad wrote: > >>> There is no way for a client to "push" this information as part of it's > >>> presence. One workaround could be to issue an <iq/> requesting "last" > >>> info when we receive an updated presence from a contact. But this > >>> wouldn't allow a client to be idle while still remaining "available", > >>> which could be desirable. > >> > >> I think the natural way to send idle time would be to include a notation > >> when changing from available to away, or > >> from away to extended away. > > > > Sounds reasonable. > > Indeed, the existing namespace could be used here: > > <presence from='[EMAIL PROTECTED]/orchard'> > <show>away</show> > <query xmlns='jabber:iq:last' seconds='720'/> > </presence> > > <presence from='[EMAIL PROTECTED]/orchard'> > <show>xa</show> > <query xmlns='jabber:iq:last' seconds='7200'/> > </presence> > > Shall I add an example of that to the spec?
I don't think iq:last really tracks idle. To track idle you need the help of the client, but iq:last is handled by the server. At best, the value of iq:last is the last network activity from the client. I notice on jabber.org that if I do iq:last on a particular person who is online, I get a 13 hour time and "Logged Out" string. Weird. This leads me to believe that iq:last is used mostly to finding the time an offline user was last online, and it is not something you'd use on an online user. Maybe not all servers behave this way, but one thing is true in all cases: the value is never the idle time. With that in mind, I wonder if it would be confusing to use iq:last in a presence packet to indicate idle, when in the last 8 years iq:last was not at all used for reporting idle. Clients would be pushing their own time value which would differ from what an <iq> for iq:last might return. -Justin
