#Debugging #activitypub implementations seems to be quite hard. I've got a pretty simple server set up that for now only serves information for one Actor
of type Service
. My goal at some point is to have this be a working bot that does things. But for the time being I'm still struggling to get other servers to actually consume that actor from my server. I've got #webfinger working I believe correctly (here) and the ID it returns responds with what seems to me like a valid Actor
json-id (here). However the several instances I've tried accessing it from all seem to not be able to consume that for any reason. Misskeys end up with an An error has occurred
message, mastodons just say they're not finding anything.
With the misskeys at least I see a request coming in to /.well-known/webfinger
, but mastodon instances don't seem to attempt to make any call, even if I search directly for the URL of the actor object. Meanwhile fedify lookup
seems to be fine with what it gets from the webfinger request since it then proceeds to hit the actor URL as well and prints out the json-ld it gets from it.
There don't seem to be any tools that I can point at a resource and have them tell me what it is I haven't implemented properly which is a bit frustrating.
Helge
in reply to ΠΡ π§π¬πͺπΊ:neobear_devil_blank_hammer_fire_laptop: • • •I wrote a tool verify.funfedi.dev that tests these kinds of things:
babelbot
to match your webfingerHope this helps.
ΠΡ π§π¬πͺπΊ:neobear_devil_blank_hammer_fire_laptop:
in reply to Helge • • •awesome! This is exactly the type of thing I wanted to find!
I'm not sure about the timeouts, it's a quart app that's running asynchronously, and it basically does no IO except the network requests themselves. But I am currently running it like a trash goblin, just firing up the dev server behind a caddy to terminate the tls, so that might not be great. I'll try running it properly with hypercorn later to see if that helps. The server itself isn't really seeing much traffic right not so that it would hit any performance issues, I can see requests overnight from the people that have replied to this and not much more.
Helge
in reply to ΠΡ π§π¬πͺπΊ:neobear_devil_blank_hammer_fire_laptop: • • •First, I could lookup dev.fedi-babel.xyz/@babelbot from mastodon.social. So the first round of problems seems to be solved.
Regarding timeouts. verify.funfedi.dev tries to post to the inbox. It might be related to that. It might also be due to the signed get. Are you using something synchronous for HTTP requests? (e.g. the requests library instead of httpx or asyncio).
Second do you know about my library bovine. It might simplify your implementation.