Limnoria/plugins/Fediverse
Mattia Rizzolo a0b1334034 increase the timeout for Fediverse's tests
At least in Debian CI they routinely timeout when they run in the
busiest server.

Signed-off-by: Mattia Rizzolo <mattia@mapreri.org>
2021-06-01 08:58:56 +02:00
..
local Fediverse: First draft. 2020-05-09 19:27:34 +02:00
__init__.py Fediverse: Remove duplicate documentation 2021-04-18 15:36:18 +02:00
activitypub.py Fediverse: Cache host support for webfinger before snarfing. 2020-05-14 21:33:34 +02:00
config.py Fediverse: Add URL snarfer. 2020-05-10 14:52:55 +02:00
plugin.py httpserver, Fediverse: show an error message on 404 2021-04-18 16:25:37 +02:00
README.rst all plugins: regenerate READMEs 2021-04-22 00:29:15 +02:00
test_data.py Fediverse: black 2020-05-16 23:14:46 +02:00
test.py increase the timeout for Fediverse's tests 2021-06-01 08:58:56 +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.