Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Check out any other software that might be worth supporting #143

Open
nanos opened this issue Jul 2, 2024 · 25 comments
Open

Check out any other software that might be worth supporting #143

nanos opened this issue Jul 2, 2024 · 25 comments
Labels
enhancement New feature or request

Comments

@nanos
Copy link
Owner

nanos commented Jul 2, 2024

See here for list of software: https://fedidb.org/software

@nanos nanos added the enhancement New feature or request label Jul 2, 2024
@nanos
Copy link
Owner Author

nanos commented Jul 3, 2024

The following are the ones that I encounter the most frequently on my own instance's home timeline:

GoToSocial:

Friendica

  • I supposed to have a Mastodon compatible API https://wiki.friendi.ca/docs/api-mastodon
  • But I get either a 404 or other error when I try to fetch context.
  • The documentation seems to imply (although this is not explicit) that all methods require authentication.
  • Therefore we probably can't implement it.

WordPress

  • My Googleing fails me - I cannot find their API docs

@colinstu12
Copy link

I found a friendica post that seems to properly fetch when I search for it in masto web (doesn't work in Ivory however):
https://friendica.myportal.social/display/e65e1095-2066-778e-a9b1-719897452963
Not sure why friendica is so hard to explore / seems so locked down, not sure if that's just an instance configuration thing or what.

@nanos
Copy link
Owner Author

nanos commented Jul 3, 2024

Thanks @colinstu12

I did try this. According to the docs, the API to get context should be the same as Mastodon: GET /api/v1/statuses/:id/context. However, when I try to get https://friendica.myportal.social/api/v1/statuses/e65e1095-2066-778e-a9b1-719897452963/context I only get back a 404. So I'm not sure if I need to convert that UUID into a different ID, or if the docs are wring, or if the endpoint requires auth, and the 404 is just a masked 403.

All very confusing 🤔

@nanos
Copy link
Owner Author

nanos commented Jul 3, 2024

OK, so I'm a little bit closer here: Looking at the source code I find a reference to a numeric ID for this post, and if I use that it works:

https://friendica.myportal.social/api/v1/statuses/45055616/context

But how can I convert the GUID to a numeric ID?

@edent
Copy link

edent commented Jul 3, 2024

For WordPress, are you looking at ActivityPub powered ones, or just regular blogs?

@nanos
Copy link
Owner Author

nanos commented Jul 3, 2024

@edent Yes, ActivityPub ones. Here is a node info example response:

{
  "version": "2.0",
  "software": {
    "name": "wordpress",
    "version": "6.5"
  },
  "usage": {
    "users": {
      "total": 1,
      "activeMonth": 1,
      "activeHalfyear": 1
    },
    "localPosts": 340,
    "localComments": 11
  },
  "openRegistrations": true,
  "services": {
    "inbound": [
      "atom1.0",
      "rss2.0",
      "pop3"
    ],
    "outbound": [
      "atom1.0",
      "rss2.0",
      "wordpress",
      "smtp"
    ]
  },
  "protocols": [
    "activitypub"
  ],
  "metadata": {
    "generator": {
      "name": "NodeInfo WordPress-Plugin",
      "version": "2.3.1",
      "repository": "https://github.com/pfefferle/wordpress-nodeinfo/"
    },
    "nodeName": "Symfony Station / The Payload Newsletter",
    "nodeDescription": "The Symfony Station Fediverse Account and Newsletter",
    "nodeIcon": "https://newsletter.mobileatom.net/wp-content/uploads/2023/12/cropped-Symfony-Station-No-Text-Astronaught-2C.png"
  }
}

@edent
Copy link

edent commented Jul 3, 2024

Sorry if I've misunderstood this, but I think this is the way to do it.

If you look at my blog's WebFinger - https://shkspr.mobi/blog/.well-known/webfinger?resource=acct:blog@shkspr.mobi - that points to https://shkspr.mobi/blog/@blog

If you request that with Accept: application/activity+json, you'll get back a standard AP document which says the outbox is https://shkspr.mobi/blog/wp-json/activitypub/1.0/actors/0/outbox

That's paginated, so should let you backfill all the contents.

@nanos
Copy link
Owner Author

nanos commented Jul 3, 2024

Thanks @edent very helpful.

And would you know how I can fetch replies/context using ActivityPub? I think I looked into that a while ago, but didn’t get very far as it seemed extremely complicated (and iirc mastodon doesn’t even implement it, or something like that, which is why we now got the mess of implementing various APIs, rather than ‘just’ ActivityPub)

@SimplyCorbett
Copy link

Any chance you can add partial support for the iceshrimp.net beta? It has mastodon compatible api but is missing features currently.

https://is.ready.social/swagger/ for a list of the api. You can select mastodon from the dropdown in the top right.

@nanos
Copy link
Owner Author

nanos commented Aug 1, 2024

FediFetcher does already support ice shrimp. Is there any specific issue you’ve encountered?

@SimplyCorbett
Copy link

FediFetcher does already support ice shrimp. Is there any specific issue you’ve encountered?

I wasn’t able to get it to work with iceshrimp.net but could with mastodon. Are you talking about iceshrimp.js? I’m talking about their new codebase on the beta/dev channel at iceshrimp.net. The software isn’t finished yet.

@nanos
Copy link
Owner Author

nanos commented Aug 2, 2024

@SimplyCorbett I'm talking about the software IceShrimp, rather than about a specific server.

As of today, iceshrimp.net doesn't appear to be hosting a Fediverse instance. The .well-known/nodeinfo endpoint is a simple redirect to a code repo, as is host-meta

curl -i https://iceshrimp.net/.well-known/nodeinfo                                                                                                                                                                                                                                                                                                               
HTTP/2 301
alt-svc: h3=":443"; ma=2592000
location: https://iceshrimp.dev/iceshrimp/iceshrimp.net
server: Caddy

@colinstu12
Copy link

What about https://next.iceshrimp.dev ?

@nanos
Copy link
Owner Author

nanos commented Aug 2, 2024

Thanks @colinstu12

if they do support the mastodon api then it should be really straightforward to implement. I’ll have a look at it some time next week

@nanos
Copy link
Owner Author

nanos commented Aug 3, 2024

@SimplyCorbett @colinstu12 can one of you test if #153 works correctly with Iceshrimp.NET?

@colinstu12
Copy link

colinstu12 commented Aug 3, 2024

@SimplyCorbett @colinstu12 can one of you test if #153 works correctly with Iceshrimp.NET?

They appear to still be in closed beta stage. But it sounded like late 2024 or early 2025 there'd be a release. All of the Iceshrimp.js team has swapped over to the .net one it sounds like so it's good to support it, but can't quite test yet. If those iceshrimp.net folks run across this or if they're reached out to on fedi maybe they can assist further.

@nanos
Copy link
Owner Author

nanos commented Aug 3, 2024

They appear to still be in closed beta stage.

then why did @SimplyCorbett ask for support? 🤔😁

@SimplyCorbett
Copy link

It’s open beta. They are targeting an official release by the end of 2024.

I’m asking for support because I use iceshrimp.net as my daily driver.

I will give #153 a shot, thanks!

@nanos
Copy link
Owner Author

nanos commented Aug 3, 2024

Thanks for the clarification @SimplyCorbett

if your feedback is positive I’ll be happy to merge.

@SimplyCorbett
Copy link

Thanks for the clarification @SimplyCorbett

if your feedback is positive I’ll be happy to merge.

I didn’t run into any issues and it finished successfully, but I also dont have a lot of things setup in the config.

So it appears to work, thanks!

@nanos
Copy link
Owner Author

nanos commented Aug 3, 2024

Great, thanks for the feedback @SimplyCorbett

@colinstu12
Copy link

Hello @nanos , why exactly can GoToSocial not be supported? I have a friend on a GTS instance now and I notice in my fedifetcher logs this now: unknown server api for social.bateleur.org
I seem to be able to pull up context just fine from Masto Web UI and from Ivory client (when using both the gotosocial post link or my instance's local copy of the post too)? Why can't fedifetcher perform the same context retrieves etc?
Thank you

@nanos
Copy link
Owner Author

nanos commented Nov 27, 2024

@colinstu12 see the 2nd comment in this thread: GTS requires authentication for their api, so we cannot support them. In the linked issue the maintainer explains their rationale..

@colinstu12
Copy link

@colinstu12 see the 2nd comment in this thread: GTS requires authentication for their api, so we cannot support them. In the linked issue the maintainer explains their rationale..

Would #183 help at all with this?

@nanos
Copy link
Owner Author

nanos commented Dec 5, 2024

No, sadly not. #183 means that you can run (some parts of) FediFetcher if your home instance is GoToSocial.

But it does nothing for fetching stuff from remote instances.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

4 participants