Skip to content

Piero Bosio Social Web Site Personale Logo Fediverso

Social Forum federato con il resto del mondo. Non contano le istanze, contano le persone

ActivityPub user and category outboxes coming soon

NodeBB Development
1 1 0
  • Up until today, when you queried a NodeBB user or category's outbox, you would receive an empty OrderedCollection. This was done because the property's inclusion in the actor object was required, but it was not immediately apparent in 2024 how many people utilised this property. Thus it was easier to just send the empty outbox and pursue more urgent functionality.

    While sending that empty outbox has not broken any implementations, but it has come to my attention that a few (read: more than 1) other implementors already do, or plans to, read from an actor outbox for backfill purposes.

    The upcoming NodeBB v4.10.0 will contain an outbox populated by the contributions by that user or category.

    Here's how that works...

    For both users and categories, a standard OrderedCollection is returned, with first, last, prev, and next properties for navigation.

    For users:

    • A combined set of the user's activity is returned in the form of activities (Create, Like, etc.) — these activities include the user's posts, votes (both up and down), and shares.
    • Unlike other collections, this one uses a cursor. You can pass ?before= or ?after= values in the query string to retrieve items 20 at a time.

    For categories:

    • A set of posts curated by this category is shown. It can contain both posts local to the instance, and remote posts from outside of the instance.
    • All posts are wrapped in the Announce activity. If the post is local, it is an Announce(Create(Note/Article)), if it is a remote post, then it is just an Announce(Object) by reference.
    • This collection is paged like other collections served by NodeBB.

    It is possible that this implementation serves data in an unexpected manner. If this is the case, please reply here to contact me directly so it can be fixed.

    I used my best judgement for what to include in the outboxes, as well as using Piefed as a reference implementation. @rimu@piefed.social, I notice that Piefed's community outboxes serve up Announce(Create(Page)) even if the Page is not local to the instance. I was under the assumption that remote content couldn't (shouldn't?) be expanded in this manner because you cannot guarantee the integrity of the data, and so announcing the object by reference is preferred. Just wondering your thoughts on that.

  • julian@activitypub.spaceundefined julian@activitypub.space shared this topic

Gli ultimi otto messaggi ricevuti dalla Federazione
  • Up until today, when you queried a NodeBB user or category's outbox, you would receive an empty OrderedCollection. This was done because the property's inclusion in the actor object was required, but it was not immediately apparent in 2024 how many people utilised this property. Thus it was easier to just send the empty outbox and pursue more urgent functionality.

    While sending that empty outbox has not broken any implementations, but it has come to my attention that a few (read: more than 1) other implementors already do, or plans to, read from an actor outbox for backfill purposes.

    The upcoming NodeBB v4.10.0 will contain an outbox populated by the contributions by that user or category.

    Here's how that works...

    For both users and categories, a standard OrderedCollection is returned, with first, last, prev, and next properties for navigation.

    For users:

    A combined set of the user's activity is returned in the form of activities (Create, Like, etc.) — these activities include the user's posts, votes (both up and down), and shares. Unlike other collections, this one uses a cursor. You can pass ?before= or ?after= values in the query string to retrieve items 20 at a time.

    For categories:

    A set of posts curated by this category is shown. It can contain both posts local to the instance, and remote posts from outside of the instance. All posts are wrapped in the Announce activity. If the post is local, it is an Announce(Create(Note/Article)), if it is a remote post, then it is just an Announce(Object) by reference. This collection is paged like other collections served by NodeBB.

    It is possible that this implementation serves data in an unexpected manner. If this is the case, please reply here to contact me directly so it can be fixed.

    I used my best judgement for what to include in the outboxes, as well as using Piefed as a reference implementation. @rimu@piefed.social, I notice that Piefed's community outboxes serve up Announce(Create(Page)) even if the Page is not local to the instance. I was under the assumption that remote content couldn't (shouldn't?) be expanded in this manner because you cannot guarantee the integrity of the data, and so announcing the object by reference is preferred. Just wondering your thoughts on that.

    read more

  • Right now, when you cross-post something to your forum, it is represented by the "clone" icon, or two overlapping squares.

    d26d9d3e-7130-418e-af8b-cf4e86a7a550-image.jpeg

    Do you think the "shuffle" icon works better?

    eab40481-634a-439d-855d-d66d143a7177-image.jpeg

    read more

  • jlgourley everything is handled on Transifex, so I'd just go ahead and start translating!

    read more

  • I'm running back through the Spanish translation files, and there's actually a lot that isn't translated (the strings are in English). I'm going to start going through and cleaning things up.

    Is there anyone I should be working with, or checking in with, or should I just submit my edits and reviews of content?

    read more

  • ireneista@adhd.irenes.space the root post was originally published with a far future timestamp but that has since been updated to reflect the actual posting date.

    Was a bug with the original federation code but I'm surprised your still seeing this post as from the future?

    read more

  • We have just released v4.6.0 of NodeBB, containing fixes to our ActivityPub integration, minor fixes with SCSS, and some new functionality with topic templating.

    :globe_with_meridians: ActivityPub Fixes WordPress blogs can be properly pulled into NodeBB (via their URL) now Fixed an error when moving a remote topic to another category This also fixed the issue where moved topics didn't update topic/post counters Fixed bug where NodeBB could not properly process Link headers when it contained the standalone crossorigin directive Notifications for replies to topics made in remote categories now show the appropriate user Fixed bug where remote users were not able to post to a local category if registered-users privilege was removed (now checks fediverse pseudo-user) Nested remote categories can now be removed from the ACP Remote categories can be renamed for de-duplication purposes Improved title generation for quote-posts Core fixes Persona theme now shows hidden (zero-character) links in post content _variables.scss page in ACP > Appearance can now override Bootstrap variables A template can be provided in a category's settings. This template is auto-populated in the composer when a new topic is being authored.
    read more

  • @KirillEvo the translations are pulled in daily ☺️

    Thanks for offering to help!

    read more

  • Good day!
    How often are the translations updated?

    I want to do translation into Russian.

    read more
Post suggeriti
  • 1 Votes
    5 Posts
    27 Views
    @apps@toot.fedilab.app appreciate the open API but of course be wary of abuse. I would not be opposed to registering for an API key when needed 🙂
  • 1 Votes
    6 Posts
    24 Views
    test refederation
  • 0 Votes
    1 Posts
    11 Views
    Moin,aus aktuellem Anlaß, auf den ich später noch mit mehr Details zurückkommen will, darf ich (noch) einmal auf mein Projekt eines eigenen #Fediverse-Servers namens #Mammuthus hinweisen, in den ich demnächst mehr Zeit investieren will.Dazu sei auch auf vier auf #Mammuthus laufende Accounts meinerseits hingewiesen, die ich in Zukunft hoffentlich auch aktiver mit sinnvollen Beiträgen bestücke... :-)@nick@hhmx.de ⚫ Mein allgemeiner Account auf meiner als Single-Account-Instanz genutzten Umgebung, die in der Regel als erstes eine neue #Mammuthus-Version einsetzt, sobald sie aus meinem Labor kommt... ;-)@nick@mammuthus.de ⚫ Auf diesem Account schreibe ich technische Punkte (auf Deutsch und Englisch) bezüglich #ActivityPub & Co.@nick@rahlstedt.de ⚫ Mit rahlstedt.de, rahlstedt.biz und rahlstedt.social will ich meinen Stadtteil ins #Fediverse bringen... Details zur Entwicklung, ggf. auch Umfragen zwecks Meinungseinholung in Bezug auf meine lokalen bzw. regionalen #Hamburg-#Rahlstedt-Aktionen hier...@nick@rahlstedt.social ⚫ Auch lokal... ein bißchen persönlicher...Mehr demnächst...Wem Unstimmigkeiten oder Probleme mit o.g. Accounts (und/oder den sie betreibenden Instanzen) auffallen, bitte gern an mich durchmelden. Mit Details & Co.Notfalls an meinen #Mastodon-Account @nick@norden.social (der bleibt als Backup und langjähriger fediversaler Account natürlich bestehen).Soweit erst einmal,einen schönen Abend in die fediversale Runde!The Future Is Federated
  • 0 Votes
    26 Posts
    111 Views
    @julian that might be it, yeah. languages outside of javascript generally don't make a distinction between null and undefined, and even in javascript these are used inconsistently. for example localStorage.getItem will return null for a missing key. practically speaking, the "intentionally" distinction is a distinction without a difference in most processing contexts.