social
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Social] Private Messaging Plugin


From: Blaine Cook
Subject: Re: [Social] Private Messaging Plugin
Date: Fri, 25 Jun 2010 16:25:32 +0100

On 24 June 2010 23:12, Sean Corbett <address@hidden> wrote:
>
> I don't think this should be a choice for the user, because this will make
> implementation much more difficult. While I'm pretty sure that push is how
> notices are distributed between StatusNet servers at the moment (someone
> please correct me if that's wrong), pull is probably the way to go,
> especially since this gels better with the Webfinger auth scheme
> (authorization happens on request of content).

I agree that the protocol should operate in exactly one way, but
probably the best way is to use PSHB and push. To clarify, PSHB does
full-content push to the subscriber – the "ping" aspect is only
Publisher-to-Hub. In the case of Status.net / GNU Social installs, the
publisher is the hub, so we don't have to worry about not receiving
full content here.

The auth scheme that I'm working on is only necessary the first time
two people interact (technically, once per direction). So far, I've
described it in terms of a subscription relationship – that is, Alice
sends Bob a subscription request, and later on Bob sends Alice
content. It can also work the other way, where Bob sends Alice an
invitation to subscribe, possibly with content. The mechanics are the
same, but the payload is different.

Put another way, Alice verifies Bob's invitation in the same way that
Bob verifies Alice's subscription request, but whereas the payload of
Alice's subscription request is just that – a subscription request,
the payload of Bob's invitation is a direct message (of some sort) and
comes with it an implied request to be allowed to send messages in the
future.

Probably the best way to think of this is like email, with verifiable
senders – Instead of the email scenario, where you have to accept all
messages for fear that you might lose a message that you actually care
about, using webfinger to do auth means we can have a whitelist like
social networks have. You can only send me messages if we're
"friends", but unless I've blocked you, you can always send me friend
requests.

As far as distributing content that "doesn't fit" in push
notifications, everything should just be links; those links can be
capability URLs, so that the user (or their delegate server / client)
can fetch the content without having to log in. Flickr does exactly
this with their share functionality; you can set up a private
collection of photos, or even just a single photo, and share that link
with people who aren't even Flickr users via email. The only
difference in the Status.net / GNU Social world is that this linking
would be automatic and behind the scenes.

Hopefully that all makes sense! It's a bit of a challenge to explain
in a coherent way, but I promise it's actually all very simple. ;-)

b.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]