Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

seabird-proxy-plugin

Static Badge GitHub Actions Workflow Status

Dependencies

  • seabird-core

Configuration

Environment Variables

Common settings:

  • SEABIRD_HOST (required) - this is the URL of the seabird-core instance. Most users should use https://core.seabird.chat
  • SEABIRD_TOKEN (required) - the seabird token

Proxy-specific settings

  • PROXY_CONFIG_FILE (required) - path to the config file for the plugin
  • RUST_LOG (optional, defaults to info,seabird-proxy-plugin=debug) - this is a common rust environment variable documented here because we set a default. All seabird functionality is exposed under the seabird logger.

Config File

The config file is a list of proxied channels, each containing the following structure:

  • source (required) - the Seabird Channel ID messages should be copied from
  • target (required) - the Seabird Channel ID messages should be copied to
  • user_prefix - a raw string to insert before the username in proxied messages
  • user_suffix - a raw string to insert between the username and text in proxied messages

Note that we use source and target rather than linked_channels or something similar. This is to allow configuring the user_prefix and user_suffix on a per-target-channel basis.

A few helpful user_prefix/user_suffix combinations:

# Discord target
user_prefix: "**"
user_suffix: " (Source Name)**"

# IRC target
user_prefix: "\u0002"
user_suffix: "[source name]\u000f"

# Minecraft target
user_prefix: ""
user_suffix: " (Source Name)"

Runtime Config Updates

In order to force the config to reload, send a SIGHUP to the seabird-proxy-plugin process.