Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • World
  • Users
  • Groups
Skins
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (Darkly)
  • No Skin
Collapse

Chebucto Regional Softball Club

  1. Home
  2. Uncategorized
  3. What would cross-posting between instances look like in ActivityPub?
A forum for discussing and organizing recreational softball and baseball games and leagues in the greater Halifax area.

What would cross-posting between instances look like in ActivityPub?

Scheduled Pinned Locked Moved Uncategorized
threadiversecrosspostactivitypub
17 Posts 10 Posters 2 Views
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • julianJ This user is from outside of this forum
    julianJ This user is from outside of this forum
    julian
    wrote on last edited by
    #1
    Following up on [this question I asked back in late March](https://community.nodebb.org/topic/18735/how-do-piefed-lemmy-mbin-handle-cross-posting), I wanted to continue thinking about how one would handle cross-posting between categories/communities, given that there isn't current consensus on it, and _especially_ given that NodeBB—as of v4.3.0—[can now see and browse remote categories](https://community.nodebb.org/topic/18788/nodebb-v4.3.0-remote-categories-are-a-go). From that original topic, we can distil the following: 1. Both PieFed and Mbin do not natively handle cross-posts, a new entity is made with the crucial bits (link, text, possibly title) copied over and changed if needed, sometimes a _"cross-posted from..."_ helper text is prepended. 1. There are legitimate concerns that a cross-post might not succeed depending on privilege settings on the receiving end, so a pre-flight check (or explicit rejection) of some kind might be required. 1. Cross-posting can be done by the original author, or another user. So were an FEP to be written, we'd center it around the following assumptions: * "A user (which may or may not be the object author) is sharing an object to additional audiences" * We would use the existing `Announce(Object)` model * We would not use `Announce(Activity)` because it is not the original object _creation_ that is being announced, but the object itself, to a new audience. * Some form of `Reject` handling would be required for cases where the cross-post is not allowed * How the receiver handles the activity is out-of-scope of the FEP. It could be that the original object is contained within multiple categories/communities, or a duplicate object could be created — implementor's choice. This is **very similar** to an existing announce/boost/reshare, except that instead of addressing the activity to followers list you are addressing it to a group actor's inbox. Some additional questions: 1. Is there desire from PieFed/Lemmy/Mbin for supporting incoming (and possibly outgoing) federation of cross-posting? 1. What exactly happens currently if a Group actor receives an `Announce(Object)`? My guess is nothing, currently, but let me know otherwise 😄 1. Would this allow you to accept cross-posts from other AP applications without needing to refactor any existing code? 1. Duplicating the object would mean the discussion is split between objects. The ideal implementation would be the **same** object present in multiple categories/communities. Is there desire for this in the threadiverse? [@rimu@piefed.social](https://community.nodebb.org/user/rimu%40piefed.social) [@andrew_s@piefed.social](https://community.nodebb.org/user/andrew_s%40piefed.social) [@melroy@kbin.melroy.org](https://community.nodebb.org/user/melroy%40kbin.melroy.org) [@bentigorlich@gehirneimer.de](https://community.nodebb.org/user/bentigorlich%40gehirneimer.de) [@nutomic@lemmy.ml](https://community.nodebb.org/user/nutomic%40lemmy.ml) [@angusmcleod@mastodon.social](https://community.nodebb.org/user/angusmcleod%40mastodon.social)
    1 Reply Last reply
    0
    • ActivityPubA ActivityPub shared this topic on
    • ludrol@szmer.infoL This user is from outside of this forum
      ludrol@szmer.infoL This user is from outside of this forum
      ludrol@szmer.info
      wrote on last edited by
      #2
      As far as I am aware Lemmy doesn't have cross-posts like you are imagining. There are two parts to this: 1. There is an indicator if there is other post that links to the same website/image. 2. Crosshposts are just a copy of the text with quote markdown.
      julianJ 1 Reply Last reply
      0
      • ? Offline
        ? Offline
        Guest
        wrote on last edited by
        #3

        @julian
        It is great to see NodeBB trying to work with other platforms to solve issues.

        It is supposed to be a federated network, cross-posting is important for many fedi users.

        also, if platforms intergrated better it would help discovery and help new and old users of fedi.

        1 Reply Last reply
        0
        • ludrol@szmer.infoL ludrol@szmer.info
          As far as I am aware Lemmy doesn't have cross-posts like you are imagining. There are two parts to this: 1. There is an indicator if there is other post that links to the same website/image. 2. Crosshposts are just a copy of the text with quote markdown.
          julianJ This user is from outside of this forum
          julianJ This user is from outside of this forum
          julian
          wrote on last edited by
          #4
          [@ludrol@szmer.info](https://community.nodebb.org/user/ludrol%40szmer.info) yes, you're right about that. The silver lining here is that we're at a point where the major players' implementations are **local-only**, so we don't have to work around with a pre-existing implementation and ensure compatibility. The second point is that a "cross-post" could have multiple meanings, including manually creating a new post about a link already present in multiple communities. What I'm _hoping_ to describe is a common way that items can be cross-posted natively between instances, while hopefully preserving their reply-trees.
          1 Reply Last reply
          0
          • KirkK This user is from outside of this forum
            KirkK This user is from outside of this forum
            Kirk
            wrote on last edited by
            #5

            @julian @rimu @andrew_s @melroy @BentiGorlich @nutomic @angusmcleod

            I am posting to this from Mastodon, which interfaces with communities on lemmy/pie very awkwardly (but not zero percent).
            A good cross posting solution would be one where a user can simply tag the extra communities, like a reply, as then it would be relatively cross platform friendly, and the communities on the other side/server would look for in their database posts with the community tagged / mentioned group 'superuser', say @ examplecommunity @ server.com when they load the community page, regardless if on the actual creation event they only 'officially' store it under one community.
            IDK yet (I'll prolly look it up someday) how all these different platforms are organizing their database, but I'm imagining a table like poster | category | tags + msg + mentions | getting pulled when you go to a category; then you could turn off looking at cross-posts that are only in the category because of a tag/mention.

            julianJ 1 Reply Last reply
            1
            0
            • KirkK Kirk

              @julian @rimu @andrew_s @melroy @BentiGorlich @nutomic @angusmcleod

              I am posting to this from Mastodon, which interfaces with communities on lemmy/pie very awkwardly (but not zero percent).
              A good cross posting solution would be one where a user can simply tag the extra communities, like a reply, as then it would be relatively cross platform friendly, and the communities on the other side/server would look for in their database posts with the community tagged / mentioned group 'superuser', say @ examplecommunity @ server.com when they load the community page, regardless if on the actual creation event they only 'officially' store it under one community.
              IDK yet (I'll prolly look it up someday) how all these different platforms are organizing their database, but I'm imagining a table like poster | category | tags + msg + mentions | getting pulled when you go to a category; then you could turn off looking at cross-posts that are only in the category because of a tag/mention.

              julianJ This user is from outside of this forum
              julianJ This user is from outside of this forum
              julian
              wrote on last edited by
              #6
              [@kirkmoodey@universeodon.com](https://community.nodebb.org/user/kirkmoodey%40universeodon.com) yes, Mastodon compatibility is lacklustre but that's partly because the _architecture_ of Mastodon doesn't lend itself well to categorical organization. That's not a criticism, merely a difference that we have to consider. Currently, when a user addresses multiple communities, then the existing software (NodeBB included) uses the first one. How the rest of the addressed communities are handled is what's of interest here.
              1 Reply Last reply
              0
              • ? Offline
                ? Offline
                Guest
                wrote on last edited by
                #7

                @julian @rimu @andrew_s @melroy @BentiGorlich @nutomic @angusmcleod say I make a video and post it somewhere I can set comments subject to approval. A forum or link aggregator whose moderation I trust posts a link to my video. I think I would like to approve a whole discussion that I am confident is moderated appropriately, but not all discussions, and also treat my reactions to individual comments as approvals for display at the publication site.

                So I think I would want granularity, deciding whether my content is linked or cross posted, and whether I want to treat the remote discussion as a cross post to my comments section. But I would definitely want it to be the same object. In as far as I would have any duplication the cross post would be best thought of as nested under the post object.

                1 Reply Last reply
                0
                • ? Offline
                  ? Offline
                  Guest
                  wrote on last edited by
                  #8

                  @julian @kirkmoodey Mastodon is currently working on a spec for their groups implementation. Maybe get everybody together to hash out a common spec, including those who already have a group implementation like Friendica/Hubzilla, Misskey/IceShrimp/Sharkey, Pleroma/Akkoma?

                  ? 1 Reply Last reply
                  0
                  • RimuR This user is from outside of this forum
                    RimuR This user is from outside of this forum
                    Rimu
                    wrote on last edited by
                    #9
                    IMO The simplest way would be to garnish a bit of extra data onto the normal FEP 1b12 process. Create a new post (Create -> Page to the instance that hosts the community, which in turn does Announce -> Create -> Page to followers) and add an extra field to the `Page` which is the URL of the original post. That will establish the association. To reject the cross-post, return HTTP 400 (403?) to the POST to the inbox on the initial Create -> Page ? Or send a Reject activity, either way is fine but the 400 seems easiest. Lemmy returns 400 for a lot of things, PieFed just blindly accepts everything.
                    julianJ 1 Reply Last reply
                    0
                    • ? Guest

                      @julian @kirkmoodey Mastodon is currently working on a spec for their groups implementation. Maybe get everybody together to hash out a common spec, including those who already have a group implementation like Friendica/Hubzilla, Misskey/IceShrimp/Sharkey, Pleroma/Akkoma?

                      ? Offline
                      ? Offline
                      Guest
                      wrote on last edited by
                      #10
                      gunchleoc:

                      Mastodon is currently working on a spec for their groups implementation.

                      Any links to this and/or discussion of how it relates to other FEPs?

                      ? 1 Reply Last reply
                      0
                      • ludrol@szmer.infoL This user is from outside of this forum
                        ludrol@szmer.infoL This user is from outside of this forum
                        ludrol@szmer.info
                        wrote on last edited by
                        #11
                        >Duplicating the object would mean the discussion is split between objects. The ideal implementation would be the **same** object present in multiple categories/communities. Is there desire for this in the threadiverse? If the link goes to a controversial news article and it's get posted into pro- and against- community/group the comments will spiral out of control and it won't be a pleasant place. Maybe it could be implemented as a toggle per group/instance within one fedi software. It shouldn't be in Activity Pub protocol.
                        1 Reply Last reply
                        0
                        • ? Guest
                          gunchleoc:

                          Mastodon is currently working on a spec for their groups implementation.

                          Any links to this and/or discussion of how it relates to other FEPs?

                          ? Offline
                          ? Offline
                          Guest
                          wrote on last edited by
                          #12

                          Link Preview Image
                          Add groups support by ClearlyClaire · Pull Request #19059 · mastodon/mastodon

                          ⚠️ Do not merge ⚠️ This PR is not intended to be merged outside of purely development environments until it's finished. While it has reached a pretty stable state, groups are a complicated topic, ...

                          favicon

                          GitHub (github.com)

                          ? 1 Reply Last reply
                          1
                          0
                          • ? Guest

                            Link Preview Image
                            Add groups support by ClearlyClaire · Pull Request #19059 · mastodon/mastodon

                            ⚠️ Do not merge ⚠️ This PR is not intended to be merged outside of purely development environments until it's finished. While it has reached a pretty stable state, groups are a complicated topic, ...

                            favicon

                            GitHub (github.com)

                            ? Offline
                            ? Offline
                            Guest
                            wrote on last edited by
                            #13

                            THanks ... turns out I knew about that: the implementation for the NLNet grant, but never released. My impression is that it's been on hold since then, and there's so much other discussions of group-releated FEPs that I certainly hope they'll incorporate newer thinking if and when it moves forward.

                            julianJ 1 Reply Last reply
                            0
                            • ? Guest

                              THanks ... turns out I knew about that: the implementation for the NLNet grant, but never released. My impression is that it's been on hold since then, and there's so much other discussions of group-releated FEPs that I certainly hope they'll incorporate newer thinking if and when it moves forward.

                              julianJ This user is from outside of this forum
                              julianJ This user is from outside of this forum
                              julian
                              wrote on last edited by
                              #14
                              I haven't looked into the differences between their implementation and how groups are implemented using 1b12, but what I have discovered is that the 1b12 community is much larger than I gave it credit for.
                              1 Reply Last reply
                              0
                              • projectmoonP This user is from outside of this forum
                                projectmoonP This user is from outside of this forum
                                projectmoon
                                wrote last edited by
                                #15
                                How would this work on the NodeBB side? Multiple categories associated with one topic?
                                1 Reply Last reply
                                0
                                • julianJ This user is from outside of this forum
                                  julianJ This user is from outside of this forum
                                  julian
                                  wrote last edited by
                                  #16
                                  [projectmoon@forum.agnos.is](https://community.nodebb.org/user/projectmoon%40forum.agnos.is) basically, yes. It would be a little too involved to upend the entire system to support **multiple cids per topic** — a lot of our existing code relies on `cid` being a single value. This would be an add-on logic of sorts, where each topic has a _canonical category_, but can also be cross-posted to other communities/categories.
                                  1 Reply Last reply
                                  0
                                  • RimuR Rimu
                                    IMO The simplest way would be to garnish a bit of extra data onto the normal FEP 1b12 process. Create a new post (Create -> Page to the instance that hosts the community, which in turn does Announce -> Create -> Page to followers) and add an extra field to the `Page` which is the URL of the original post. That will establish the association. To reject the cross-post, return HTTP 400 (403?) to the POST to the inbox on the initial Create -> Page ? Or send a Reject activity, either way is fine but the 400 seems easiest. Lemmy returns 400 for a lot of things, PieFed just blindly accepts everything.
                                    julianJ This user is from outside of this forum
                                    julianJ This user is from outside of this forum
                                    julian
                                    wrote last edited by
                                    #17
                                    Hey [rimu@piefed.social](https://community.nodebb.org/user/rimu%40piefed.social) thanks for responding (and sorry for the late reply!) I am not married to the `Announce([Article|Note|Page])` approach, so I am definitely open to `Create([Article|Note|Page])` with a back-reference. I think I went the former direction because there is a known fallback mechanism — the `Announce` is treated as a share/boost/repost as normal. However, sending the `Create` also is fine I think. 1. However, **do we need a backreference**? In my limited research, it seems that Piefed, et al. picks the first `Group` actor and associates the post with that community. If I sent over a `Create(Article)` with two `Group` actors addressed, could Piefed associate the post with the first, and initiate a cross-post with the remaining `Group` actors? 2. Secondly, is how to handle sync. 1b12 relies on communities having reciprocal followers in order for two-way synchronization to be established. On my end since I know it is cross-posted I will now send `1b12` activities to cross-posted communities, but can Piefed, et al. send 1b12 activities back as well, _in the absence of followers_? cc [andrew_s@piefed.social](https://community.nodebb.org/user/andrew_s%40piefed.social) [nutomic@lemmy.ml](https://community.nodebb.org/user/nutomic%40lemmy.ml) [melroy@kbin.melroy.org](https://community.nodebb.org/user/melroy%40kbin.melroy.org) [bentigorlich@gehirneimer.de](https://community.nodebb.org/user/bentigorlich%40gehirneimer.de)
                                    1 Reply Last reply
                                    0

                                    Reply
                                    • Reply as topic
                                    Log in to reply
                                    • Oldest to Newest
                                    • Newest to Oldest
                                    • Most Votes


                                    • Login

                                    • Don't have an account? Register

                                    • Login or register to search.
                                    Powered by NodeBB Contributors
                                    • First post
                                      Last post
                                    0
                                    • Categories
                                    • Recent
                                    • Tags
                                    • Popular
                                    • World
                                    • Users
                                    • Groups