this post was submitted on 08 Jun 2025
57 points (96.7% liked)

Fediverse

34721 readers
231 users here now

A community to talk about the Fediverse and all it's related services using ActivityPub (Mastodon, Lemmy, KBin, etc).

If you wanted to get help with moderating your own community then head over to !moderators@lemmy.world!

Rules

Learn more at these websites: Join The Fediverse Wiki, Fediverse.info, Wikipedia Page, The Federation Info (Stats), FediDB (Stats), Sub Rehab (Reddit Migration)

founded 2 years ago
MODERATORS
 

My friend is working on adding ActivityPub support to his blog platform (BDServer) so people can follow/comment from Mastodon, Lemmy, etc.

Current status: Lemmy and Misskey can find and follow his account (@blenderdumbass@blenderdumbass.org), but Mastodon can't find it at all, even though he sees proper ActivityPub requests hitting his server.

The technical details are pretty gnarly - RSA signature verification, HTTP header recreation, multi-threading issues. He wrote up the full journey here: Please Help Me With Activity Pub

If anyone has ActivityPub experience or wants to take a look at the code (Python), we have a Matrix room for BDServer development. Any insights on why different platforms behave differently would be super helpful.

https://matrix.to/#/#bdserver:tchncs.de

Source code: ActivityPub.py

top 19 comments
sorted by: hot top controversial new old
[โ€“] rglullis@communick.news 9 points 2 weeks ago (1 children)

Maybe this kind of discussion will get more interested people on !activitypub@programming.dev .

[โ€“] iso@lemy.lol 3 points 2 weeks ago

Happy cake day! ๐ŸŽ‚

[โ€“] irelephant@lemmy.dbzer0.com 5 points 2 weeks ago* (last edited 1 week ago) (2 children)

Did something change since this was posted?
I can look it up properly on mastodon.
You have to be signed in to fetch accounts on mastodon, is that the problem?

Are you using any framework to build the site? There's a few libraries for activitypub.
These links could be helpful: https://codeberg.org/fediverse/delightful-activitypub-development/

[โ€“] blenderdumbass@lm.madiator.cloud 3 points 2 weeks ago (3 children)

Seems like somebody mentioned the account on the fediverse that started a chain reaction of various instances requesting a bunch of stuff. Which made it to Mastodon.social too. It still doesn't work though.

The server is written in python and the idea is to make it deploy-able without needing to install anything extra. So I'm trying to implement my own activity pub.

[โ€“] julian@community.nodebb.org 4 points 2 weeks ago

For what it's worth your blog does show up fine in NodeBB as well. Perhaps you are missing the @context property and so Mastodon is refusing to parse it?

[โ€“] rglullis@communick.news 2 points 2 weeks ago (1 children)

It's for django, but take a look into my ActivityPub Toolkit. It is designed to be compliant with ActivityPub and not with any particular implementation, so it should be easy for you to adapt to your own needs.

[โ€“] blenderdumbass@lm.madiator.cloud 1 points 2 weeks ago (1 children)

This doesn't have any link to code. And all the other buttons say that the docs are not implemented yet.

[โ€“] rglullis@communick.news 2 points 2 weeks ago* (last edited 2 weeks ago)
[โ€“] irelephant@lemmy.dbzer0.com 0 points 2 weeks ago (2 children)

Running curl https://blenderdumbass.org/activitypub/account/blenderdumbass -H "Accept: application/activity+json" twice in a row outputs some bunkerweb anti-spam stuff.

[โ€“] Madiator2011@lm.madiator.cloud 2 points 2 weeks ago (1 children)
[โ€“] irelephant@lemmy.dbzer0.com 1 points 2 weeks ago (1 children)

Also: bunker blocks me 100% of the time on individual articles.

Should not too I removed all blocks.

[โ€“] blenderdumbass@lm.madiator.cloud 2 points 2 weeks ago (1 children)

try spoofing a user-agent or torifying it maybe

[โ€“] irelephant@lemmy.dbzer0.com 2 points 2 weeks ago

While I'm sure that would let me see the article, mastodon probably wouldn't handle it well.

I would say for now the most issue is about acually pulling posts.

[โ€“] irelephant@lemmy.dbzer0.com 4 points 1 week ago* (last edited 1 week ago)

I just took another look at it,

Comparing it to another random note, the to and cc fields are supposed to be arrays, rather than just a string.

Its also missing a url field, which is supposed to link to the user-facing url of the post.

cc: @blenderdumbass@lm.madiator.cloud

[โ€“] flamingos@feddit.uk 3 points 2 weeks ago* (last edited 2 weeks ago) (1 children)

I'm not the most knowledgeable about Mastodon's APub implementation, but having a look at the Actor of that profile, it might be because it's invalid JSON-LD. Now, Mastodon doesn't actually do proper JSON-LD checks, you can follow PieFed profiles from Mastodon and they don't produce proper JSON-LD, but they do include "https://w3id.org/security/v1" in their @context, and doing a code search of Mastodon's source code does show some checks for if that's included.

Lemmy's I am familiar with and irrc it doesn't even check if @context is present.

[โ€“] irelephant@lemmy.dbzer0.com 1 points 1 week ago (1 children)

I was trying something on lemmy a while ago and it required an @context.

[โ€“] flamingos@feddit.uk 1 points 1 week ago

I don't know if somethings changed, but it actually doesn't. This lines would need to be WithContext<SharedInboxActivities>> for that to be the case, and just to make sure I tested against a local running main and was able to send activities to it without the @context just fine.