Problematic
Users discover content publicly accessible (such as a public message or video…) on remote instances and wish to interact with on their own instance.
Solutions
The “paste URL way”
Easiest (and probably earliest) solution is to copy the URL of the content and paste it in the search bar.
AFAIK, Mastodon, Pleroma and PeerTube support this, but very probably many more.
The ostatus way
- Mastodon also supports asking your federated ID
profile@instance.tld
when you try to interact with the content and redirecting to your own instance depending on your input. It uses the same endpoint as for following users, taken from ostatushttp://ostatus.org/schema/1.0/subscribe
and available through WebFinger. The path is/authorize_interaction?acct={uri}
. - PeerTube does the same for comments under videos on other instances, but doesn’t support the redirection for interacting itself.
- Pleroma supports the redirection to the same endpoint for interaction, but doesn’t suggest interacting with it’s own public content. The path is
/ostatus_subscribe?acct={uri}
.
Note : This solution can be improved with a browser addon such as https://github.com/rugk/mastodon-simplified-federation
The protocol handlers way
- Mastodon had protocol handlers
web+mastodon
but they were removed. - Diaspora has registered the
diaspora://
URI scheme but it seems they aren’t really using it.
Even though it seems a good fit, there’s not much support for it, so…
Remarks
The “paste URL in search field” solution seems commonly used but users usually don’t know about and AFAIK no software makes any effort in this direction to let users know that you can put URLs in their search fields, so it’s more a hack than anything else.
As of now, the second solution seems more appropriate (even though quite laborious). What bothers me though, is having to use the same endpoint to remote follow someone and interact with some content.
I think it would be appropriate to have the equivalent of http://ostatus.org/schema/1.0/subscribe
for interactions (not sure whether it should use the ostatus namespace) and have it as well exposed through Webfinger.
Please tell me what you think about this and what I’ve probably missed on the subject.
Additional Links
Issues at Pleroma: https://git.pleroma.social/pleroma/pleroma-meta/issues/1 https://git.pleroma.social/pleroma/pleroma/issues/978
Issue at Pixelfed https://github.com/pixelfed/pixelfed/issues/1276
P.S: about sharing external content
It’s not really the same thing, but let’s note that Diaspora* uses the centralized service https://share.diasporafoundation.org to provide share buttons that ask for your federated ID (and store it locally afterwards) to redirect you to the content on your instance. But that’s for external content, not for internal one.
There’s https://aly-ve.github.io/Mastodon-share-button/ that kinda does the same for Mastodon.