Documentation

Setting up Server Companion

Setting up the Server Companion to secure your community is simple.

  • Invite the bot using this link:
https://discord.com/oauth2/authorize?client_id=1299295562536976414
  • Go into the server settings > roles and drag the Server Companion to the top of the list.
  • Create a private channel called automod, give the Server Companion permission to access that channel, this is where all auto moderation logs are posted.

You are now set to start using the Server Companion to protect your community.

Needed permissions:

  • Ban Members
  • Embed Links
  • Kick Members
  • Read Messages
  • Manage Channels
  • Read message history
  • Send message
  • Use Slash Commands
  • Send Messages in threads
  • Manage messages

Or you can just give administrator permissions.

Some of these roles are enabled for plugins that are planned for 2025 and onwards, if enabled they will be seamlessly integrated into your communities when released.

/feedback

*The feedback command is available to server admins to give general feedback, issues and bug reporting and to request features.

Community Safe Plugin

This is our flagship plugin, we have a list of currently used Discord server invites URLs and keyword/phrases that are used to scam your community members, this plugin searches new and edited messages for these URLs and keywords/phrases and if found they then ban the member that post’s them, there userID is then saved to our list of known userID’s that are known for scamming and if that user tries to join a discord community using our app then they are rejected and banned from that community ensuring that they have not been granted access to your community to perform their malicious actions.

Security Message

When a new member join’s you’re community a message is automatically sent to the new member advising on how to prevent been scammed whilst using discord, this message is designed to educate individuals using discord, on the dangers and the methods malicious users are using the platform to scam, phish and deliver malware and gives general advise to make themselves and there discord account more secure.

Custom Scam Plugin

Not all URL’s are bad, take for instance discord invite scam’s use the same URL for legitimate communities as well as the scamming communities this means that you might not want to ban all discord server invites for your community.

Another example would be, a reddit post may miss-lead members into signing up or registering to an external site that is used by scammers, you may want to block the URL to the post with a given keyword or phrase.

With this plugin you set the URL that you want to ban and add a keyword or phrase, the plugin will look for that URL and when found it will look for a custom Keyword that you have set, if found the message will be deleted and a message posted to the automod channel with action taken and the userID of the message creator.

To add a URL and or keyword:

/customscam add <URL> and or <keyword>

The plugin works by finding a URL in a new message and then looking through the list of keywords.

Command options: /customscan <add>/<delete>/<list>

Auto Responder

Auto responders allow you to cut down on the amount of time your answering repeated question, they also allow you to give information to your community when they type a keyword.

Example:
A member wants help with a software that you provide and they get “monitor failed” error message indicating there is a NAT issue.

member: Why does is say monitor failed?
Bot: The status monitor failed indicates that there is a NAT issue, a possible solution would be to manually port forward or set the UPNP setting’s in the setting tab.

The auto responder looks for a sentence with a question mark at the end and then matches a keyword or phrase that you have answered.

To set this up you would add a auto responder.

/autoresponder add <question> <answer>

*without question mark

/autoresponder add/delete/list

URL Blocker

At the time of writing we hold over 800,000 known malicious URL’s in our database, our partners are actively maintaining and updating this list several times a day so it is always kept updated.

  • Porn – site of an adult nature.
  • Scam sites – websites designed to scam.
  • Phishing sites – sites that try to get your information.
  • Redirect – redirects from intended sites.
  • Abuse – sites created to deceive.
  • Fraud – known sites created to defraud.

Spam Detection

The scam detection plugin is simple and fast, it detects duplicate messages across channels if found then the member will be reminded of community rules and not to spam as it can lead to a ban from your community, if they persist they will be banned.

The current settings are 3 messages within 3 seconds to detect duplicate messages.

Update soon:

We will be updating this plugin so you can set your own xx number of messages to trigger the plugin within xx seconds.
also an implementation of instances they are warned and muted, then banned all customizable by you.

Profanity filter

We currently have over 800 words and phrases to combat adult related words and bullying in a community.

Any messages containing offensive words or phrases will be deleted and a DM warning sent to the member about community rules and been family friendly.

We understand that people sometimes may get upset or irritated so we give them 5 chances to stop posting abusive or offensive messages, if they continue to post these type of messages then at 5 or more posts then they will be banned, with a DM stating why they where banned and to contact an admin to appeal the ban

Update soon:

You will soon be able to customize the number of infractions, time period to check for infractions against community rules before the infractions count is reset.
Also we are implementing custom actions to take i.e. 3 infractions – mute for 1hr, 5 infractions – temporary ban for xx hr’s, 8 infractions – ban.

Giving Feedback

We make giving feedback so simple, you can do it through the discord client using our slash command.

  • General Feedback
  • Request a feature/plugin
  • Report a bug or issue

Simply use the slash command /feedback and we will get receive it instantly.

/feedback

*When requesting a feature or plugin give detailed example of what you want it to do, do you want to access it through slash commands ect.

Testing Phase

Account age

The Account age plugin lets you select the age of the account that you want to except into your community.

A lot of scammers create new accounts to keep performing their activities within communities and by limiting the age of an account stops them from joining your server meaning that you can keep them out for longer.

Testing Phase

Anti Raid

The anti raid plugin is designed to monitor the amount of new members joining your community and if xx amount of joins occur within xx seconds it disables members from been able to join your community for a time period of your choice.

Defaults set to 10 joins in 10 seconds disables joining for 1hr.

Testing Phase

Social Media Notifications

You can get social media notifications for the following platforms:

  • YouTube
    Get notifications when a subscribed channel goes live or posts a new video.
  • Twitch
    Get notifications when a subscribed user goes live or posts a new video.

To set up for notifications.

/social add <platform> <identifier>
<platform>
* youtube or twitch
<identifier>
* Twitch channel https://www.twitch.tv/ninja/videos
Where ninja is the channel identifier.
* Youtube channel ID beginning with "UC" or you can use a website like https://commentpicker.com/youtube-channel-id.php


/social set_channel <platform> <channel>
<platform>
* youtube or twitch
<channel>
* The channel id you want notifications to reside per platform.


/social list
lists all the followed channels for your guild


/social delete <platform> <identifier>
<platform>
* youtube or twitch
<identifier>
identifier of the channel to delete

Example Usage for Twitch

Add the Subscription: Use the username as the identifier in your command.

Go to the Streamer’s Page: Visit the Twitch streamer’s page, for example: https://www.twitch.tv/streamername.

Identify the Username: The username is the part of the URL after twitch.tv/. For example, in the URL https://www.twitch.tv/ninja, the username is ninja.

/social add platform=Twitch identifier=ninja

Testing Phase

Message Forwarders

Message Forwarders are a great way to provide support over multiple social media platforms by forwarding messages on Reddit or Telegram to selected discord channels you are centralising your support to yr community.

These can also be a great way to expand your community to other platforms.

  • Reddit
    Get notifications for a new post.
  • Telegram
    Get notifications following a discussion on a Telegram channel.

Reddit message forwarding

To set up for message forwarding.

/reddit add <subreddit>

The sub-Reddit Identifier is the part after the /r/ https://www.reddit.com/r/Discord_Bots/ so Discord_Bots would be the identifier.

Set the notification channel.

/reddit set_channel <channel_id>

List Reddit channels followed

/reddit list


Delete a Reddit channel

/reddit delete <subreddit>

Telegram forwarder

To set up for message forwarding.

In Telegram:

To find your Telegram chat ID, add this bot to your Telegram group (Server Companion) and use the command /get_chat_id in the group.
The bot will respond with the chat ID, which you can then use with other commands. 
Alternatively, go to manage the group and copy the exact name of the group. You can then use this name with the /telegram add command in Discord.
This can take a little bit of time please be patient.


In the Discord client

/telegram <add>

The /telegram <add> command is where you add your telegram chat id.

Listing Telegram channels followed:

/telegram list

The /telegram list command lists the currently followed telegram chat groups.

Deleting followed Telegram chat groups:

/telegram delete <chat_id>

The /telegram delete <chat_id> deletes a followed chat id/group/channel

COMING SOON!!

Advanced Poll’s

The advanced polling system bot allows guild administrators to create and manage polls with various features such as single voting, anonymous voting, result visualization, and exporting results to Google Sheets.

Features

  • Create polls with multiple options
  • Single vote option (users can vote only once)
  • Anonymous voting option
  • Result visualization with charts option
  • Google Sheets integration for exporting results option
  • Poll closure notifications option
  • Ephemeral messages for user-specific poll results

Prerequisites

  • You must have administrator permissions in your Discord server.
  • The bot must have the necessary permissions to manage messages and reactions.
  • Google Sheets API credentials (optional).

Commands
Creating a Poll

To create a poll, use the /poll command. This command is only available to administrators.

Command:

/poll


Poll Management

Viewing Current Poll Results

Once a user votes, the bot will send the current poll results to the user via an ephemeral message.

Poll Closure Notification

If the notify option is set to true, the bot will send a notification to the channel when the poll closes.

2. Integrating Google Sheets

To integrate Google Sheets for exporting poll results, follow these steps:

  1. Create a Service Account:
  • Go to the Google Cloud Console: https://console.cloud.google.com/
  • Create a new project or select an existing project.
  • Navigate to “APIs & Services” > “Credentials”.
  • Click “Create credentials” and select “Service account”.
  • Fill in the required details and create the service account.
  • Go to the service account, click on “Keys”, and create a new key. Download the JSON key.
  1. Share Google Sheets:
  • Create a new Google Sheets document or use an existing one.
  • Share the document with the service account email (found in the JSON key) with edit permissions.
  1. Set Credentials in Bot:
  • Use the /set_credentials command to set the Google Sheets API credentials.

Setting Google Sheets API Credentials

To set up Google Sheets API credentials for exporting poll results, use the /set_credentials command. This command is only available to administrators.

Command:

/set_credentials json_content:<your_google_sheets_api_credentials>

Example:

/set_credentials json_content:{
  "type": "service_account",
  "project_id": "your_project_id",
  "private_key_id": "your_private_key_id",
  "private_key": "-----BEGIN PRIVATE KEY-----\nYOUR_PRIVATE_KEY\n-----END PRIVATE KEY-----\n",
  "client_email": "your_client_email@your_project_id.iam.gserviceaccount.com",
  "client_id": "your_client_id",
  "auth_uri": "https://accounts.google.com/o/oauth2/auth",
  "token_uri": "https://oauth2.googleapis.com/token",
  "auth_provider_x509_cert_url": "https://www.googleapis.com/oauth2/v1/certs",
  "client_x509_cert_url": "https://www.googleapis.com/robot/v1/metadata/x509/your_client_email@your_project_id.iam.gserviceaccount.com"
}

Notes

  • Ensure the bot has permission to manage messages and reactions in the server.
  • We may remove polls and results from our database following a 3 month period after a poll has expired

More features coming soon

We are committed to our app and your communities and as such we are are adding more features to enable you gain more control and automation to interact with you’re community as such we are always open to suggestions for requested features.

We want you to grow and develop our app to cover the most entertaining and to be the go to app to secure your communities.