Multiple handles for Activity Intents
-
You’re exactly right, and I don’t see it as a criticism at all. It’s an on-ramp that lets people explore slowly, then add capabilities gradually. It’s a checked-and-egg problem.
I also want a “reply” activity as well, but I’m afraid nobody would support it yet.
So I look for {inReplyTo} in the create response to see if replies are possible, then register a “synthetic” activity for the application to discover. This lets me turn buttons on and off based on your servers abilities.
-
You’re exactly right, and I don’t see it as a criticism at all. It’s an on-ramp that lets people explore slowly, then add capabilities gradually. It’s a checked-and-egg problem.
I also want a “reply” activity as well, but I’m afraid nobody would support it yet.
So I look for {inReplyTo} in the create response to see if replies are possible, then register a “synthetic” activity for the application to discover. This lets me turn buttons on and off based on your servers abilities.
@benpate@mastodon.social "You’re exactly right" triggered <img class="not-responsive emoji" src="https://activitypub.space/assets/plugins/nodebb-plugin-emoji/emoji/android/1f631.png?v=c296be88e23" title="
" />I think it's wise to be hesitant about it. I think a Create intent with
inReplyTodoes already mean "Reply", so right now I don't see any reason to introduce a new intent.I had a similar thought about unvoting, which is something NodeBB does but isn't captured by ActivityStreams. We had to map it to Undo(Vote). So I was wondering if
Undowould make sense in 3b86, but the Undo Intent already exists and would be more cromulent. -
I know.. agreement on the Fediverse is so rare, it’s almost scary

Yeah, Undo sounds like it makes sense in your case. I didn’t think of any in the beginning, so just overlooked it.
One complicating factor is in showing the “state” of things in the remote site - we’d need a way to know that you voted for something first, so then we could undo it.
But yeah, let’s add that into 3b86 as well. What kinds of parameters would you want to pass? Or, would you just want to write a PR?
-
I know.. agreement on the Fediverse is so rare, it’s almost scary

Yeah, Undo sounds like it makes sense in your case. I didn’t think of any in the beginning, so just overlooked it.
One complicating factor is in showing the “state” of things in the remote site - we’d need a way to know that you voted for something first, so then we could undo it.
But yeah, let’s add that into 3b86 as well. What kinds of parameters would you want to pass? Or, would you just want to write a PR?
> @benpate@mastodon.social said:
>
> But yeah, let’s add that into 3b86 as well. What kinds of parameters would you want to pass? Or, would you just want to write a PR?No, I think we'd want to KISS. If you upvote something with your fediverse account, and it doesn't "show" on the site that you upvoted, I think that's ok.
The "you're exactly right" thing was an LLM joke <img class="not-responsive emoji" src="https://activitypub.space/assets/plugins/nodebb-plugin-emoji/emoji/android/1f606.png?v=0e8330245d8" title="
" />Okay. One-way 3b86 support is pushed to activitypub.space. Excuse the occasional broken language string, that'll get fixed up later. NodeBB will now let you register handles and can redirect to supported Like, Dislike, Create, and Follow handlers. @benpate@mastodon.social if you could give it a whirl.
The other direction, there's almost no support right now. We just expose
Objectintent, but I will flesh out the same intents soon, so NodeBB users can consume Activity Intents too. -
@benpate@mastodon.social in 4.6 Create Intent, can you add a new parameter
{audience}? I will use it to target a specific category/community for threadiverse posting. -
@julian For sure. I'm probably tied up through the afternoon, but will put that together soon.
-
@julian This is fantastic. You're awesome, Julian!
I'll try to take a look at this tonight/tomorrow.
Once you're at a stopping point, would it be possible for you to list out the intents you publish and receive? I'd love to include that in the Implementations section at the bottom of the document.
-
Also, how far along are you? If you’d like, you’re welcome to use, fork, or be inspired by my JS library - https://github.com/EmissarySocial/camperjs
I still need to do some better documentation for it, but let me know if you’re interested and I’ll get writing today.
@benpate@mastodon.social too bad I didn't know about camperjs and hand rolled my own dialogs.
Just as well, I'd want them to look like my own dialogs anyway

-
@julian Yeah, it’s probably a good learning experience, too.
Camper doesn’t do the dialogs, though. It’s behind the scenes turning buttons on and off based on what it can find in the WebFinger results.
It might be useful to look at - and certainly feel free to steal any good ideas for your own code.
-
@julian This is fantastic. You're awesome, Julian!
I'll try to take a look at this tonight/tomorrow.
Once you're at a stopping point, would it be possible for you to list out the intents you publish and receive? I'd love to include that in the Implementations section at the bottom of the document.
> @benpate@mastodon.social said:
>
> Once you're at a stopping point, would it be possible for you to list out the intents you publish and receive?NodeBB as a home server will support Object, Create, Like, Dislike, and Follow.
As a client, we have buttons for Create (topic creation and reply), Like/Dislike (upvote and downvote), and Follow.
-
@julian I'm writing this up now. Do you also use the {context} property? Should I include this as well?
-
@julian I'm writing this up now. Do you also use the {context} property? Should I include this as well?
@benpate@mastodon.social it wouldn't hurt, but no, I don't use it. However, I can use it! So it would be helpful <img class="not-responsive emoji" src="https://activitypub.space/assets/plugins/nodebb-plugin-emoji/emoji/android/1f604.png?v=8bcefe1b72a" title="
" />When you reply to a topic, it's easiest to reply to a specific post, so that's why I'm using
{inReplyTo}. When composing a new topic,{audience}is used to target the category.Replying to a topic isn't really supported on the fediverse (usually you just reply to the root-level post), but it is supported in NodeBB.