Skip to content

ActivityPub Web Handler

The ActivityPub (activitypub.js) provides ActivityPub support currently compatible with Mastodon and perhaps similar ActivityPub systems within the Fediverse allowing direct and public messaging, following/followers, etc. to be integrated with the ENiGMA½ BBS system.

  • ActivityPub with Mastodon support
  • Users are generated a random avatar once enabled with the ability to change them within their ActivityPub configuration
  • Social Manager
  • Actor search (that is, other users within the Fediverse)
  • Private and public messaging to/from the Fediverse

Full ActivityPub support requires the Web Server module be enabled as well as a number of Web Handlers. Each handler configured within the contentServers.web.handlers block keys below of your config.hjson must be set to enabled: true:

HandlerKeyDescriptionDefault
WebFingerwebFingerAllows other servers to discover your user/Actorsdisabled
System GeneralsystemGeneralServes avatar imagesenabled
NodeInfo2nodeInfo2Allows other systems to query information about your nodeenabled
ActivityPubactivityPubDescribed within this filedisabled

Example

contentServers: {
web: {
handlers: {
webFinger: {
enabled: true
}
// ...
activityPub: {
enabled: true
}
}
}
}
KeyDescription
enabledBoolean. Set to true to enable WebFinger services
selfTemplateString. Provide a fully qualified, or relative to static root path to a template file for fetching profile information. Defaults to the same file used for WebFinger queries; See WebFinger for more information.

General ActivityPub configuration can be found within the activityPub block:

KeyDescriptionDefault
autoSignaturesInclude auto-signatures in ActivityPub outgoing message/Notes?false
maxMessageLengthMax single message/Note length in characters. Note that longer lengths are generally allowed by remote systems.500

Settings applied to new users or users first enabling ActivityPub are found within users.activityPub with the following members:

KeyDescriptionDefault
enabledEnabled for users by default?false
manuallyApproveFollowersDo users need to manually approve followers?false
hideSocialGraphHide users social graph? (followers, following, …)false
showRealNameShow real name?true