- From: Evan Prodromou <evan@status.net>
- Date: Mon, 09 Jul 2012 11:34:53 -0400
- To: public-fedsocweb@w3.org
- Message-ID: <4FFAFA1D.5090605@status.net>
On 09/07/12 10:59 AM, Melvin Carvalho wrote: > > What you need is essentially a dictionary (data store) perhaps with > autocomplete that can match the literal string to a more meaningful > set of data (name, avatar, profile etc.). I was using Webfinger as the identifier, with associated lookup. Just describing a pattern, so I didn't get into the discovery particulars. > > 1. example.net <http://example.net> server requests an identity > from the user. > > > You'll need to identify & perhaps authenticate here. This is what the OAuth step is for. I think there are much better UI approaches than entering text by hand, but for the sake of exercise here, we'll ask the user to type it in. > > After the first request, the user should stay "logged in" to > example.net <http://example.net> and may continue interacting with > content there: > > 1. User evan@example.com <mailto:evan@example.com> navigates to > photo page http://example.net/joe/photo/2 > 2. User enters a comment in the comment box and clicks send. > 3. example.net <http://example.net> publishes a "post" activity > with a "comment" object with inReplyTo = > http://example.net/joe/photo/2 to evan@example.com > <mailto:evan@example.com>'s activity stream. > > Some kind of HTTP POST would work here http://www.w3.org/community/activitypub/ AtomPub meets ActivityStreams. > You need a set structure for a comment saying what the text is, who > the user is and what the comment is in relation to. > > post :hasComment > { user : user, type : comment, comment : blah } In ActivityStreams JSON format (http://activitystrea.ms/), it would look something like this: { "actor": { "id": "http://example.com/evan" }, "verb": "post", "object": { "objectType": "comment", "inReplyTo": { "objectType": "photo", "url": "http://example.net/joe/photo/2" } "content": "Nice photo!" } } For ActivityPub, you can leave off the "actor" since it's implied. > > Pattern is pretty great, but understand that if you're going to do a > lookup on strings, make it a reverse lookup on a (hopefully cached) > data store. Try to give everything you care about a URI and ulimately > link that from your profile page. > > A lot more needs to be done on access control, but we're working on > it! :) Thanks for the feedback! -Evan -- Evan Prodromou, CEO and Founder, StatusNet Inc. 1124 rue Marie-Anne Est #32, Montreal, Quebec, Canada H2J 2B7 E: evan@status.net P: +1-514-554-3826
Received on Monday, 9 July 2012 15:35:32 UTC