Brion ( et al.)

   I think you are capturing the essense of this fairly well.  While Evan
was kind in calling me exceptional, many have called me far worse, and
perhaps in the context of this discussion, a bit edgy....

   Yet I think we should be more concerned with where the devices claim to
be than where the individual claims to be.  Let me present a hypothetical,
that I hope illustrates some of the issues.

   In my sense of solidarity with the pro-democracy forces in Iran, I set my
profile location to be Tehran several months ago, and I wish to display this
as my profile location.

   My home desktop establishes an XMPP connection a few months later,
identifying it as being in Woodbridge, Connecticut.  Any messages from this
device, with its specific JID should be geotagged Woodbridge, Connecticut.

   There is a conference in Washington DC on Iranian relations.  I cannot
make it to DC, but several of my friends are gathering at a coworking
facility in New York City which I go to.  The facility is near the United
Nations and during lunch I head over to a demonstration there, leaving my
laptop at the coworking facility, but taking my cellphone with me.  I send
out the following set of messages:

   6:40 (from my desktop at home)  Heading into NYC to meet with friends and
cover the Iraning Relations conference
- My profile would say Tehran, my XMPP connection would say Woodbridge, CT

   8:12 (from my cellphone on the train)  Just passed a disabled north bound
train.
- My profile still says Tehran.  My cellphone, with its GPS updates my XMPP
location to specify that I'm in Larchmont, NY

   8:55 set up new XMPP connection from my laptop.  Specify coworking
location.
   8:55 (from my laptop at the coworking location)  Finally made it to NYC.
Setting up shop.  Chatting with friends.  Stop by to join the fun.
- Profile says Tehran, XMPP connection says coworking, NYC

   9:15  Conference starts in DC.  I am connected via webconference.  I want
to microblog my messages as being from the conference instead of the
coworking facility.  I set my laptops XMPP location to DC
   9:15 (from laptop)  As usual, conference is finally starting.  #iranrel
- Profile Tehran, physical location of me and laptop is coworking in NYC,
location on XMPP is DC

   10:45 The device connected to my home computer notes that my latest batch
of hard cider needs racking, and sends XMPP message

   10:45 (from desktop) Latest batch of hard cider is ready to rack!
- Profile Tehran, I'm in NYC, liveblogging a DC event.  My home desktop has
XMPP of Woodbridge CT.

   11:14 - more tweets from my laptop.....

   12:15 I head over to the demonstration at the UN, taking my laptop.  I
send messages from the XMPP client on my cellphone which again uses GPS to
get my location.  Now, I have a message coming from a new location in NYC,
while my laptop is in a different NYC location but used to send messages
claiming to be in DC while my profile says I'm in Tehran.

   With this, I've now sent messages from five different locations, each one
properly geotagged based on the JID, depending on either a fixed location
JID, an input JID, which might or might not be my physical location, as well
as a couple based on GPS locations associated with a JID.  All of these are
more accurate and different from my profile location.

   While I admit that some of this is a bit contrived (my hard cider
probably won't be ready for racking for another two weeks), I believe this
is a good illustration of uses cases of why JID specific locations is
preferable to profile based locations.

Aldon


-----Original Message-----
From: [email protected]
[mailto:[email protected]]on Behalf Of Brion Vibber
Sent: Monday, December 14, 2009 12:13 PM
To: [email protected]
Subject: Re: [StatusNet-dev] XMPP Notice Location


On 12/14/09 8:09 AM, Evan Prodromou wrote:
> Aldon Hynes wrote:
>> As a person who regularly microblogs from my desktop, my laptop and my
>> mobile device, I am a regular with the edge case that Craig described
>> as are
>> many of the people that I live microblog from at conferences.
>>
>> I think Craig's approach makes a lot more sense.
> Aldon, I think you're an exceptional person, but even you aren't ever in
> two places at the same time.

The difficulty I think is that XEP-0080 specifies that location updates
are sent asynchronously in a pub-sub manner, so we have to save the
updates to attach the location to a future message that might come in
from the same client.

http://xmpp.org/extensions/xep-0080.html#transport

So if we consider this (I think not too off-the-wall) case:

* desktop computer stays logged in all the time at home/work
* laptop or phone roves around, sometimes logs in

While the human is only in one place at a time, he/she may easily have
two or more connections open and reporting their -- separate -- locations.

If the desktop was the last to send a location ping with "Hey! I'm in
San Francisco", I don't want that to override my laptop's having said
"Hey! I'm in Montreal" if I post from the laptop when traveling.


 From what I understand, associating the last-reported location with the
complete jid (including resource, to distinguish between separate
connections) would indeed handle these cases nicely if we're only
interested in using the XMPP location info for XMPP-sourced messages.

I'm not sure we'd want to update the profile location unless we want to
carry the location updates over to notices sent from other communication
channels... personally I tend to think of profile fields as something I
fill out manually, with the 'location' or 'city' field referring to my
home base.

If we do want it to auto-update, we might want to present it
differently, more as a "last known location"... and have it also update
when sending notices if we get updated locations from the web interface
or API postings.

-- brion vibber (brion @ status.net)
_______________________________________________
StatusNet-dev mailing list
[email protected]
http://lists.status.net/mailman/listinfo/statusnet-dev

_______________________________________________
StatusNet-dev mailing list
[email protected]
http://lists.status.net/mailman/listinfo/statusnet-dev

Reply via email to