[Top][All Lists]

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

Re: [Social] Private Messaging Plugin

From: Melvin Carvalho
Subject: Re: [Social] Private Messaging Plugin
Date: Thu, 1 Jul 2010 11:02:51 +0200

On 25 June 2010 17:25, Blaine Cook <address@hidden> wrote:
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 / 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

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

Does this limit interoperability to only those systems that run a webfinger server?

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 / 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. ;-)


reply via email to

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