2020-09-06 15:22:07 +02:00
2020-09-06 15:22:07 +02:00
2020-09-06 15:00:35 +02:00
2020-08-30 15:01:26 +02:00
2020-08-30 17:14:37 +02:00
2020-09-06 15:22:07 +02:00
2020-07-20 23:26:42 +02:00
2020-08-30 15:01:26 +02:00
2020-08-30 17:19:11 +02:00

Scc Count Badge Total alerts Language grade: Python Coverage Status

Miniscord

A minimalist discord bot API

from miniscord import Bot
import discord


async def hello(client: discord.client, message: discord.Message, *args: str):
    await message.channel.send("Hello!")


bot = Bot(  
    "test-app",     # name
    "0.1-alpha",    # version
    alias="|"       # respond to '|command' messages
)  
bot.register_command(
    "hello",                    # command text (regex) 
    hello,                      # command function
    "hello: says 'Hello!'",     # short help
    f"```\n"                    # long help
    f"* |help\n"
    f"\tSays 'Hello!'.\n"
    f"```"
)
bot.start()
# this bot respond to "|help", "|info" and "|hello"

⚠ Disclaimer: I intend to use this project personally, I'm open to ideas but I don't care if it doesn't work for you. Same for the name, feel free to use it, I'm not registering it on PyPI

Features

TODO

Installation

1. Install package

pip install git+git://github.com/Klemek/miniscord.git

2. Make a .env file as following

#.env
DISCORD_TOKEN=<bot token from discordapp.com/developers>

Documentation

Bot init

bot = Bot(  
    "test-app",     # name
    "0.1-alpha",    # version
    alias="|"       # respond to '|command' messages
)  

Bot configuration properties

  • token_env_var (default: "DISCORD_TOKEN")
    • Which var to read in the .env file.
  • remove_mentions (default: True)
    • Remove any mention in the message / arguments.
  • any_mention (default: False)
    • If the bot respond to a mention in the middle of messages.
  • log_calls (default: False)
    • Log any calls to the Python logging.
  • guild_logs_file (default: "guilds.log")
    • Log guilds join/leave on a file.
  • enforce_write_permission (default: True)
    • If the bot can't respond on a channel it was called, it sends a DM to the caller.
  • lower_command_names (default: True)
    • Use lowercase on command names (if false, commands are case-sensitive).
  • game_change_delay (default: 10)
    • Change the game status every n seconds.
  • error_restart_delay (default: 2)
    • On crash, restart after n seconds.

Registering commands

TODO

Game status

TODO

Exposed utility functions

TODO

Versions

  • v0.0.1 (WIP) : initial version

TODO

  • Finish README.md
  • Write more tests
  • Add comments to code
  • Separate branches
  • Working CI
  • Fix bugs
S
Description
A minimalist discord bot API 🤖
Readme GPL-3.0 139 KiB
Languages
Python 100%