Limnoria/plugins/Fediverse
2021-10-08 00:15:45 +02:00
..
local Fediverse: First draft. 2020-05-09 19:27:34 +02:00
__init__.py all: Add generic 'The Limnoria Contributors' to copyright notices. 2021-08-01 21:54:49 +02:00
activitypub.py Fediverse: increase max heap size to mitigate crashes on pypy 2021-10-08 00:15:45 +02:00
config.py all: Add generic 'The Limnoria Contributors' to copyright notices. 2021-08-01 21:54:49 +02:00
plugin.py all: Add generic 'The Limnoria Contributors' to copyright notices. 2021-08-01 21:54:49 +02:00
README.rst all plugins: regenerate READMEs 2021-04-22 00:29:15 +02:00
test_data.py all: Add generic 'The Limnoria Contributors' to copyright notices. 2021-08-01 21:54:49 +02:00
test.py Fediverse & String: Increase test timeouts, they can be flaky on CIs 2021-09-21 21:19:03 +02:00

Documentation for the Fediverse plugin for Supybot

Purpose

Fetches information from ActivityPub servers.

Usage

Fetches information from ActivityPub servers.

Enabling Secure Fetch

The default configuration works with most ActivityPub servers, but not all of them, because they require an HTTP Signature to fetch profiles and statuses.

Because of how HTTP Signatures work, you need to add some configuration for Limnoria to support it.

First, you should set supybot.servers.http.port to a port you want your bot to listen on (by default it's 8080). If there are already plugins using it (eg. if Fediverse is already running), you should either unload all of them and load them back, or restart your bot.

Then, you must configure a reverse-proxy in front of your bot (eg. nginx), and it must support HTTPS.

Finally, set supybot.servers.http.publicUrl to the public URL of this server (when opening this URL in your browser, it should show a page with a title like "Supybot web server index").

Commands

profile <@user@instance>

Returns generic information on the account @user@instance.

status <url>

Shows the content of the status at <url>.

statuses <@user@instance>

Returned the last statuses of @user@instance.

Configuration

supybot.plugins.Fediverse.format

This is a group of:

supybot.plugins.Fediverse.format.statuses

This is a group of:

supybot.plugins.Fediverse.format.statuses.showContentWithCW

This config variable defaults to "True", is network-specific, and is channel-specific.

Determines whether the content of a status will be shown when the status has a Content Warning.

supybot.plugins.Fediverse.public

This config variable defaults to "True", is not network-specific, and is not channel-specific.

Determines whether this plugin is publicly visible.

supybot.plugins.Fediverse.snarfers

This is a group of:

supybot.plugins.Fediverse.snarfers.profile

This config variable defaults to "False", is network-specific, and is channel-specific.

Determines whether the bot will output the profile of URLs to Fediverse accounts it sees in channel messages.

supybot.plugins.Fediverse.snarfers.status

This config variable defaults to "False", is network-specific, and is channel-specific.

Determines whether the bot will output the content of statuses whose URLs it sees in channel messages.

supybot.plugins.Fediverse.snarfers.username

This config variable defaults to "False", is network-specific, and is channel-specific.

Determines whether the bot will output the profile of @username@hostname accounts it sees in channel messages.