Podcastindex-org / pi-activitypub-server

An activitypub bridge for the podcast index api
MIT License
13 stars 3 forks source link

Going to a podcast on Mastodon from a web browser just gives a 404 #5

Open backache opened 3 months ago

backache commented 3 months ago

I am trying to open a podcast with the ID 6661055 in my web browser in such a way as to then have it open the podcast in Mastodon.

I believe the correct format should be as follows but just gives a 404 with the text "NOT FOUND"

https://ap.podcastindex.org/@6661055

This was the article I was trying to follow

https://mastodon.social/@box464/112227449775389292

This second one would be the next evolution and uses the

https://eschatologist.net/blog/?p=309

this seems to be saying that the following should work

acct:6661055@ap.podcastindex.org

but whilst it redirects to the webfinger server

https://ap.podcastindex.org/.well-known/webfinger?resource=acct:6661055@ap.podcastindex.org

webfinger then redirects to the root without passing the ID (https://ap.podcastindex.org/) which results in a 404's again.

daveajones commented 3 months ago

The PI-ActivivityPub bridge uses the following actor url scheme: https://ap.podcastindex.org/podcasts?id=6661055

Since it is just meant to bridge low level activity from podcast feeds to ActivityPub, we don't have an HTML, pretty interface for the Actor on the bridge itself. We should probably redirect requests for Accept: text/html to the podcast's own website, or if there isn't one defined in the feed we could land on the PI page for that show.

backache commented 3 months ago

Thanks Dave, I see your point.

I wonder though if it be better to "go with the flow", the uri scheme that seems to dominant is https://servername/@serverid so if you could just make the server addtionally recognise that @ symbol and ID as another kind of valid URL, it'd then be just a matter of getting finger to work correctly.

The last peice then of the puzzle is working out what the majority of activitysubs site are outputing as xml or a redirect to make the subscribe work.

If a non interactive way can't be found for the final peice and you have to use a webpage, I don't think it needs a pretty, it could just be a butt ugly generated list of the "subscribe to me" link formats of the most popular mastodon sites, (like those personal link aggrator sites) so someone can choose thier server maually, for example https://mastodon.online/@6661055@ap.podcastindex.org or https://mastodon.online/@6661055@ap.podcastindex.org

Anyway, thanks for coming back to me, it'd be interesting to hear others thoughts as well.

Neil

daveajones commented 3 months ago

What are you trying to implement? Is there some sort of integration you are thinking of or building or are you just thinking about general user friendliness?

Asking because the bridge implements web finger already, so I think I’m not following what you’re idea is.

backache commented 3 months ago

I do voluntary work on the database behind Wikipedia called "wikidata", if we can get this working it'll mean the people, apps or whatever using the database can follow any of the 4800 podcasts it has PI ids from Mastodon or whatever.

What's nice about wikidata is that it acts as a bi-direction hub so as well as bringing users to you it also allows your users to constantly enrich the information about the podcasts (or whatever) people are viewing as people are always building new integrations for it, the ones I help with are the most common type which works via the URLs using regex.

For example the PI ID in my example maps to the WD entry https://www.wikidata.org/wiki/Q123434415

It can also be good for data cleansing for example, it picked up you have duplicate entries for this podcast.

qazmlp commented 2 months ago

While it may be helpful to reply with redirects to /@… paths, I don't think it would be a good idea to assume a certain URL format, since this is heterogeneous across the fediverse.

If I check the most popular software at https://fedidb.org/software, I get the following schemes:

software account page path format for @user@domain
Mastodon /@user, /@user@domain (defective for local users)
Misskey /@user, /@user@domain
Lemmy /u/user, /u/user@domain, /c/user, /c/user@domain
PeerTube (different versions?) /accounts/user, /accounts/user@domain, /a/user, /a/user@domain, /c/channel, /c/channel@domain
Pixelfed /user
Micro.blog /user, /activitypub/user (via WebFinger as profile-page/text/html, redirect)
Pleroma /users/user
Writefreely /user/

Mastodon itself uses the actor's url property, which it populates verbatim from the url property in the federated object.