RDMAss - A Python Discord bot creating an interaction with RDM API

Overview

RDMAss

A Python Discord bot creating an interaction with RDM API.

Features

  • Assignment Groups scheduled & instant
  • RDM Status
  • Clear All Quests
  • Reload All Instances

Requirements

  • Must be on Developemnt build of RDM
  • At least Python3.6 (virtualenv optional but welcome)
  • Discord Bot Token (enable presence intent, server members intent, message content intent and slash commands privilages)

Quick Setup

  1. Fetch repo, install packages from requirements.txt and copy config.example.json to config.json
  2. Edit config.json
  3. Start main.py

Detailed Setup

1. Fetch & install

git clone https://github.com/Pupitar/RDMAss.git rdmass && \
cd rdmass && \
pip3 install -r requirements.txt && \
cp config.example.json config.json

2. Edit config file

Additonal options are available in default.json

{
    "bot": {
        "token": "bot_token",                              // Discord Bot Token
        "hide_bot_message": true                           // Hide the bot mesage - true | false
    },
    "instance": {
        "discord": {
            "guild_id": 1234567890,                        // Add the Discord Guild ID for the server the bot will be run on
            "output_channel": 2345678901,                  // A discord channel where output of scheduled jobs will be sent.
            "enabled_roles": [3456789012, 4567890123]      // Discord Role ID's that you authorise to use the commands.
        },
        "rdm": {
            "api_endpoint": "http://127.0.0.1:9000",       // RDM front end Endpoint
            "username": "rdm_root_user",                   // RDM front end user (must have admin permissions)
            "password": "6d9fdb16ed509488eeef6af2f842a744" // Password for the front end user
        }
    },
    "locale": {
        "date_format": "YYYY.MM.DD",                       // Date format
        "time_format": "HH:mm:ss",                         // Time format
        "timezone": "UTC"                                  // Timezone (used for assignement scheduler)
    }
}

3. Starting

Directly

python3 main.py

PM2

Start RDMAss in PM2 with pm2 start main.py --name RDMAss --interpreter python3 from the root folder of RDMAss

Or you can copy and paste the following code below into an existing PM2 ecosystem file or start a new one in the root of RDMAss ecosystem.config.js (remember to change the location of cwd: "/home/user/RDMAss/", to your own directory.

module.exports = {
  apps: [
    {
      name: "RDMAss",
      script: "python3 main.py",
      cwd: "/home/user/rdmass/",
      instances: 1,
      autorestart: true,
      max_memory_restart: "1G",
      env_production: {
        NODE_ENV: "production",
      },
    },
  ],
};

systemd

Systemd user service template. Read for details

[Unit]
Description=rdmass
After=network.target

[Service]
ExecStart=python3 main.py
WorkingDirectory=/home/user/rdmass
Restart=always
RestartSec=10
StandardOutput=syslog
StandardError=syslog

[Install]
WantedBy=default.target
Nft-maker - Create your own NFT!

nft-maker How to If you're going to use this program, change the pictures in the "images" folder. All images must be of the same resolution and size.

Georgii Arakelian 4 Mar 13, 2022
A python Discord wrapper made in well, python.

discord.why A python Discord wrapper made in well, python. Made to be used by devs who want something a bit more, general. Basic Examples Sending a me

HellSec 6 Mar 26, 2022
A simple tool which automate commands of discord economy bots

A simple tool which automate commands of discord economy bots. Fully configurable using an intuitive configuration made in YAML

SkydenFly 5 Sep 18, 2022
This repository contains modules that extend / modify parts of Odoo ERP

Odoo Custom Addons This repository contains addons that extend / modify parts of Odoo ERP. Addons list account_cancel_permission Only shows the button

Daniel Luque 3 Dec 28, 2022
HackerNews and Reddit in one placce

EDIT: this project is 3.5 years old. I found it sad it's just laying around, so I did some minimal fixes and deployed it. Hope you enjoy! (PR's welcom

Hugo Montenegro 1 Nov 13, 2021
👾 Telegram Smart Group Assistant 🤖

DarkHelper 🌖 Features ⚡️ Smart anti-apam & anti-NFSW message checker Tag Members , Entertain facility , Welcommer ban , unban , mute , unmute , lock

amirali rajabi 38 Dec 18, 2022
Autofilterv5 With Same more Features

Autofilterv5 With Same more Features ✨ Imbd + Index +.....

Selfie SD 8 Oct 21, 2022
This is a simple code for discord bot !

Discord bot dice roller this is a simple code for discord bot it can roll 1d4, 1d6, 1d8, 1d10, 1d12, 1d20, 1d100 for you in your discord server. Actua

Mostafa Koolabadi 0 Jan 02, 2022
Бот Telegram для Школы в Капотне (ЦО № 1858)

co1858 Telegram Bot Активно разрабатывался в 2015-2016 году как учебный проект, с целью научиться создавать ботов для Telegram. Бот автоматически парс

Ilya Pavlov 4 Aug 30, 2022
A discord http interactions framework built on top of Sanic

snowfin An async discord http interactions framework built on top of Sanic Installing for now just install the package through pip via github # Unix b

kaj 13 Dec 15, 2022
Algofi Python SDK is useful for developers who want to programatically interact with the Algofi lending protocol

algofi-py-sdk Algofi Python SDK Documentation https://algofi-py-sdk.readthedocs.

Algofi 41 Dec 15, 2022
A simple python bot that serves to send some notifications about GitHub events to Slack.

github alerts slack bot 🤖 What is it? 🔍 This is a simple bot that serves to send some notifications about GitHub events to Slack channels. These are

Jackson Alves 10 Dec 10, 2022
OpenSource bot for control groups ...

⭕️ کمک به افراد برای اداره هرچه فان تره گروه 📟 همه گروه های بزرگ نیاز به یه بات خفن دارن تا از گروه مراقبت کنه این بات کارش همینه سعی کرده فیچر خیلی

Mehran Alam Beigi 2 Nov 26, 2021
Discord heximals: More colors for your bot

DISCORD-HEXIMALS More colors for your bot ! Support : okimii#0434 COLORS ( 742 )

4 Feb 04, 2022
Python wrapper for GitHub API v3

Squeezeit - Python CSS and Javascript minifier Copyright (C) 2011 Sam Rudge This program is free software: you can redistribute it and/or modify it un

David Medina 207 Oct 24, 2022
Simple python program to execute terminal commands on telegram chats directly.

Small python code which can be handy when using telegram and you don't want to use VPS again and again. By configuring the code in your VPS, You can execute commands and get your output within telegr

Veshraj Ghimire 34 Dec 05, 2022
A Terminal User Interface (TUI) for automated trading with Komodo Platform's AtomicDEX-API

PytomicDEX Makerbot A Terminal User Interface (TUI) for automated trading with Komodo Platform's AtomicDEX-API Install sudo apt install wget curl jq g

6 Aug 25, 2022
PyDiscord, a maintained fork of discord.py, is a python wrapper for the Discord API.

discord.py A modern, easy to use, feature-rich, and async ready API wrapper for Discord written in Python. The Future of discord.py Please read the gi

Omkaar 1 Jan 16, 2022
The Python version of the official Discord bot for the Astura Studios Discord community server.

About Astura (Python version) is the official Discord bot for the Astura Studios Discord community server developed and maintained by Ascendus and the

Ascendus 1 Apr 21, 2022
Spotify Top Lists - get the current top lists of a user from the Spotify API and display them in a Flask app

Spotify Top Lists This is a simple script that will get the current top lists of a user from the Spotify API and display them in a Flask app. Requirem

Yasin 0 Oct 16, 2022