Understanding ActivityPub and Federation

I have tried to understand how Federation works but I’m getting a feeling that there’s some rather large gaps here. My first attempt was to find an API implementation in python, 3 wasted hours of my life later and I’m making requests.request() calls like it’s 2007. And I still can’t access the content as presented on the webinterfaces. There doesn’t seem to be a way to access eg the communities tab via activitypub? Any Help?

@programming

  • Hexorg@beehaw.orgM
    link
    fedilink
    arrow-up
    9
    ·
    1 year ago

    ActivityPub is what instances use to talk to each other, not what the web interface uses. So the way Communities are propagated over the ActivityPub depends on what lemmy does, not what ActivityPub wants. Are you trying to develop your own instance or are you trying to make a 3rd party UI for lemmy?

    • @mastodon.socialOP
      link
      fedilink
      arrow-up
      2
      ·
      1 year ago

      @Hexorg I’ve begun yesterday with the question “why can’t I access information without first having to know where it is?” I’ve now basically gone through confusion, anger, disbelieve and now acceptance that there really is nothing to find. In the end the concept of federation says that stuff should be accessible from anywhere. But it isn’t. Which is a pretty big problem imo.
      My goal is to indeed create a generic fediverse reader, not using any specific platform APIs.

      • Hexorg@beehaw.orgM
        link
        fedilink
        arrow-up
        5
        ·
        1 year ago

        Well mastodon doesn’t have the concept of communities. You’re kinda saying “I’m trying to implement a generic html reader, why can’t I find the search bar” - it’s because not every site uses/needs it.

      • evilviper@beehaw.org
        link
        fedilink
        arrow-up
        1
        ·
        1 year ago

        I’m working on something similar in swift and started my project with the assumption that I’ll need different API classes for every type of “instance” I want to gather data from (mastadon, lemmy, kbin, etc) and custom server model objects for each instance (as while some properties might be standard across all instances there will probably be some that are specific to an instance(s)).

        Then I’ll need those objects to be wrapped in a unified protocol to access and display them. Certainly not ideal, and does seem counterintuitive to the idea of the fedi-verse; but hopefully something for activity pub to work towards.

    • pcouy@lemmy.pierre-couy.fr
      link
      fedilink
      arrow-up
      2
      ·
      1 year ago

      I skipped through the ActivityPub spec a few days ago, and from the top of my head I think there is a section about Client-Server interactions (as opposed to Server-Server).

    • @mastodon.socialOP
      link
      fedilink
      arrow-up
      1
      ·
      1 year ago

      @Hexorg can’t directly reply to your comment because that wasn’t federated (oh the sweet irony) :D
      Anyway, it’s more like I’m trying to write a usenet reader, fully expecting to have to create a curated list of of instances but then finding out there is no way to see what any given instance actually contains outside of writing specific code for each and every one of them.