How does one go about detecting duplicate activities, and what is the best practice for senders?

I ask because following a hashtag served by relay.fedi.buzz responds with an Accept with id https://relay.fedi.buzz/activity/accept/{actor}/{requesterInbox}

Because that URL does not have a random/time-based component, an unfollow followed by a refollow will lead to an Accept with the exact same id.

In NodeBB's case, it detects this as "already seen" and silently drops it.

I could ask @astro@c3d2.social to add a timestamp in the ID, but I was wondering if my duplicate detection strategy was naive :smile:

 

Hi @astro@c3d2.social, I think I found a bug with FediBuzz and how it does its Webfinger responses.

In a nutshell, FediBuzz tag actors have preferredUsername set to tag-whatever, but the corresponding webfinger lookup ?resource=acct:tag-whatever@relay.fedi.buzz fails with a 404, but whatever@relay.fedi.buzz works fine.

cc @evan@cosocial.ca

AI slop explanation follows (feel free to ignore!):

> tags.pub does it correctly: > > json > { > "id": "https://tags.pub/user/nodebb", > "preferredUsername": "nodebb" > } > > > WebFinger acct:nodebb@tags.pub โ†’ resolves to https://tags.pub/user/nodebb โœ… > > FediBuzz breaks the round-trip: > > json > { > "id": "https://relay.fedi.buzz/tag/nodebb", > "preferredUsername": "tag-nodebb" > } > > > WebFinger acct:tag-nodebb@relay.fedi.buzz โ†’ 404 โŒ > > Yes, it's a FediBuzz bug. preferredUsername must match the WebFinger subject so that acct:{preferredUsername}@{hostname} resolves back to the actor's id. FediBuzz added a tag- prefix to preferredUsername but didn't update WebFinger to match. > > They should either use preferredUsername: "nodebb" (matching tags.pub) or serve WebFinger for acct:tag-nodebb@relay.fedi.buzz.

 

httpsig.org is a site with one sole purpose, to advocate for the adoption of RFC 9421 HTTP Signatures. It has a "Libraries" tab that does exactly what it advertises, it lists a bunch of libraries for you to use so you don't have to roll your own.

If you want to integrate AP today, but you don't want to roll your own everything, where do you go? Who do you ask?

All I know is:

Do we even have a list sorted by language? This would be huge. What other AP frameworks do you know of?

Granted, I didn't do a lot of thinking and deep diving before I listed those two examples, but even then, that's 1 more example than is listed on https://activitypub.rocks, so I think I might be on to something here from a developer advocacy point of view.

If I were looking to integrate AP, one of the first conclusions I'd come to is that the protocol itself is fairly complex and a library or framework might help.

I don't think there is a list that plainly lists supported libraries by language.

 

The annual Social Web Operations Survey from IFTAS is open! With 50,000 active nodes federating we want the community's voice to be heard. Whether you're running a personal node, a relay, or a larger community, your feedback directly shapes the tools, resources and advocacy IFTAS takes on. The survey takes less than ten minutes to complete: https://tally.so/r/81MW6k

@jaz@mastodon.iftas.org is looking for feedback especially from NodeBB instance admins, so if you have a NodeBB forum, he'd love to hear from you!

 

Started working on bringing ActivityPub Polls to NodeBB :clipboard:

First step is adding in separate handling of the Question object. Right now NodeBB treats it as a "Note-like" and renders it like a post :smile: 50% of the way there... will need to link it to nodebb-plugin-poll...

One complication... the plugin ties votes to users. This data isn't reflected over-the-wire in AP, only the aggregate voter counts are shared :thinking_face:

https://github.com/NodeBB/nodebb-plugin-poll/pull/157

 

So, this meme.

tl;dr Mastodon users occasionally spam mentions and Lemmy (and probably Piefed) ingests them all and makes the post across all of the mentioned communities.

Sucks, right, because on the theadiverse, you're not actually able to do that so easily.

Basically, it's because Mastodon mixes mentions with addressing. Every mentioned person gets addressed, even though sometimes you don't mean for it to go into that community.

So what if Lemmy, Piefed, Mbin, and NodeBB made it so that only the first matching community gets the post? We can already tell which posts come from threadiverse software and which don't (because we use audience, Mastodon doesn't.)

Just an idea, I can't speak for the other softwares.

view more: next โ€บ