I promised Brion Vibber some thoughts on how a gateway between Usenet and ActivityPub might work. This is very blue-sky thinking at present; let’s give it the codename “beanie”.
The idea here is to represent Usenet as ActivityPub, not to run ActivityPub over NNTP or whatever.
(Usenet doesn’t get all that much traffic these days, so I make no claim that this is actually useful…)
Representations of Usenet entities on the ActivityPub side
Article: Every Usenet article posted to monitored groups is turned into a Note on the gateway. Quoted sections at the top and bottom of the text are trimmed, but the sig stays intact. Is there a length issue with existing ActivityPub clients?
Poster: Every poster to Usenet is represented by an ActivityPub Actor (probably a Person), @firstname.lastname@example.org (where 123 is an arbitrary number, and example.com is the ActivityPub server). [I’m giving the webfinger form as might be used by Mastodon, but the URL is easily derivable.] The ActivityPub object at that URL is minimal. Attempts to follow it are immediately rejected. Direct messages are discarded? The HTML version includes a note that the page is only a gateway placeholder, and information on how the poster can opt out of their posts passing this gateway.
Group: Here I’m not sure. Options include a magic Actor which can be followed, which only boosts articles from the group, or some sort of timeline. In any case must be discoverable, it must be followable, and it must be possible to post an article to the group which isn’t a reply. Initially we only support alt.test.
newsrc: Again, I don’t know.
Representations of ActivityPub entities on the Usenet side
Actors: If an ActivityPub Actor posts to Usenet, we represent them as “email@example.com”. There is no relay of direct messages.
Notes: Notes become articles. If they are replies (to other Notes which were originally generated from Usenet articles, or to other Notes which have already become Articles), the article will be a reply to that note. How on earth do we enforce setting Subject lines?