I believe this is the right proposal... I plan on adding it to my peertube code.
- Having the comments url would allow apps to query it and display the paginated comments.
- Having the root "node", meaning the url of the PodcastEpisode object would allow app users to submit new comments (given the app implements some basic fediverse protocols for interaction).
--> FYI, the PodcastEpisode contains the comments url, so technically we could just have that.
Also, just to clear things up & sum up:
We ought to have a Youtube like - decentralized - commenting system under each episode, this means:
1. Having the same comments show up on all (listening) apps
2. Apps and hosting platforms would have to talk to each other. Which one keeps track of comments? Host? App? Both?
--> app users should be able to comment directly on an episode from their favourite app
3. Comments would have to be moderated
The solution: activitypub and some fediverse protocols
--> open and widely used protocols that could be extend if we have to
1. Having a root "node", meaning a link to a PodcastEpisode json object with the list of comments (on the host side). Apps would query the link to display comments for a given episode.
2. The listening app has to create activitypub actors in order to interact with the host (for commenting, replying to, liking comments, flagging...)
--> Which one keeps track of comments? Definitely the host (the source of truth). And maybe the app, if it wants to add a layer of moderation.
For example, whenever a user (actor) from a listening app submits a comment, it would be sent to the podcaster's (podcast actor) inbox.
Before doing anything with the comment, the podcaster could decide not to store it. And if it has gone through, the podcaster could decide to delete it.
This comes with having a UI for moderation on the host side. At the end of the day, when requesting the comments, those that were blocked would not show up in the app.
@agates @yassinedoghri @dave @martin No need to use coarse language to prove your point, it even tends to be counterproductive and that's a shame because it's an interesting one…
In the end it's a quite simple dichotomy:
- either you give your audience away to Apple and they take care of moderation.
- or you keep control but that comes at a price: you are in charge of moderation. That works pretty well for thousands of Mastodon instances, including this one, and this is no BS. 🙂
Thanks mate, I look forward to reading it.
Personally I'm starting to finally have a much better grasp about ActivityPub, and in many ways it's much simpler than I thought in the start - but I definitely overcomplicated it in my head, and I think that made me not understand fully when I heard other people talking about it.
Also I was probably biased in my way of thinking by my mission about having comments for ALL podcasts 🤔
The issue probably boils down to terminology. "Moderation" implies control. That (by definition) wouldn't be doable in the existing Fediverse systems.
All you can do is request that the propagated content be removed and cross your fingers that other systems comply.
I feel that's fine. The same if I make a website with something that turns out to be illegal. Can I control what's in browser caches? Or did users screenshot ut?
It's not exactly the same, but then at least the podcaster has done what they can.
Personally I would even lean towards not having moderation at all, but more have "default block lists" that people could then disable if they want all the crap, but unsure about legal ramifications here.
I don't think they can delete one of your posts in the UI. They could go in the database and do it though. But they can warn you, block your account or even delete it altogether. And if you come from a remote server, they can choose to block your account or the whole server. There is also anther "silence" option, not sure what it does exactly.
I believe peertube goes about it another way, not sure about the specifics though.
@StevenB Pretty much. Clearly that’s not 100% accurate since there are inboxes and outboxes and such. But that’s pretty much it at the end of the day.
Intended for all stake holders of podcasting who are interested in improving the eco system