Skip to content


Subversion checkout URL

You can clone with
Download ZIP


Atom and RSS format activity stream for user feed #55

evanp opened this Issue · 22 comments

For OStatus compatibility, make an Atom-encoded stream for each user.


I think this might be better done with a bridge than having it in the core software.

I think it's relatively easy to write a service that provides RSS or Atom feeds to anonymous clients for any user.

  • The URL should look something like https://something.example/user@domain.example
  • When this URL is hit, the service should register as an OAuth client for domain.example, if it isn't registered already.
  • It should then fetch the activity outbox of user@domain.example.
  • It can then transform the Activity Streams JSON into Activity Streams RSS or Activity Streams Atom.

Beg you pardon if that is a naive question, but does that mean that I won't be able to follow people via rss?
As today, with statusnet users, I simply copy a link in my rss reader (a link like ) and that's it; would I need to rely on a third party service for instances?
That would be weird, considering I can do the same (i.e. shove a rss link in my rss reader) with twitter (like ).


By the way, if this bug is fixed, could somebody tell me how to access my RSS feed?


#451 is closed, this issue is still open.
For now, you can get your feed in JSON format:
For example, mine is at:


@larjona thanks, the link gives me a "unauthenticated" error.
Evan, is that a bug or a feature? (evil grin)
It would be awesome to have a unauthenticated access to public data!


@Gratty you need to login first in the server, and then obtain the feed.
In my case, go to and login with your account, and after that, go to


Kudos to PyPump, I created a set of scripts that people might find useful as a starting point to create an RSS feed:
In general it shows how you can access the feed with a python script that - once it is registered as an OAuth client - can export to status updates as a list, which is easy to convert into a RSS stream.

I am not sure if this is the best way to do this though.


Thanks @larjona and @dirkk0 .
@evanp : I am not technical user, but having some sort of feed ( json, activitystream, atom, rss, whatever ) publicly available (without the need to be authorized) would:
1. avoid the problem of having to use another service to fetch such data (SaaS, privacy, possible failures, service discontinued)
2. allow general netizens to follow users

Your software, your call. Just pointing out the way I feel about it.


@DixieLad So, that's definitely the case. I think there are two big problems there.

  1. You always need software to fetch stuff, unless the feed is written on stone tablets and you can go pick it up manually.

  2. Other individual watchers is great; random software with bad intentions is less so. I'm not convinced that being watched by anonymous third parties in difficult-to-trace ways is what users want.

I am simply unsure about this stuff. It's also something that we can't undo once we do it.


@evanp I see. Couldn't this be configurable, with default 'public_feed': false ?

@mitsukarenai mitsukarenai referenced this issue from a commit in mitsukarenai/Projet-Autoblog
@mitsukarenai mitsukarenai REMOVE: Identica support bb80e0a

Is there any Activity Stream consumer in that could be used, for instance ?


I think this should be core. Activity Stream and RSS feeds are long established open standards that should be supported out of the box. I understand why (say) the twitter bridge would be separate, but really, this should be factored in.

Otherwise we loose all the people still on gnu social/statusnet, and that would be a shame.


I was relying on RSS to get new status updates from the people I follow. (In general, I rely on RSS to tell me when things change, and am unlikely to check for changes where RSS is unavailable.) I'm not sure whether this is the same issue being discussed here; apologies if not.


@anarcat I'm not supporting multiple output formats in core. is about doing things once, and doing them right. I don't want options. The bridge option will work fine.


Other individual watchers is great; random software with bad intentions is less so. I'm not convinced that being watched by anonymous third parties in difficult-to-trace ways is what users want.

I'm not sure there are practical downsides of this kind to RSS feeds? The posts are public.

FWIW, my 1.5c: this isn't a privacy matter, because it's about the public feed (unless I misunderstand this whole issue). Seemingly hide the content may provide users of with a false sense of privacy. OTOH, for external individual users, missing a straightforward RSS subscription is probably a usability drawback.


I've built a horrible workaround for this bug.;a=blob;f=misc/pumpRss.hs


Wonderful, now we only need some web app/service providing everyone with that horrible hack. :)
(Is that really easier that whatever API or federated system provides?)


Here's a solution similar to Joeys which also supports scraping public timelines on Twitter, I call it Tweeper:

Maybe just a little less horrible, but it really depends on how much xsl and xpath scare you :)


OK, so, I just put up a rudimentary service to handle this case:

The software is Open Source at e14n/pump2rss so I'm going to shift this discussion over there.

@evanp evanp closed this
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Something went wrong with that request. Please try again.