discord-cooldown 0.1.4

Creator: bradpython12

Last updated:

Add to Cart

Description:

discordcooldown 0.1.4

Package Name: discord_cooldown
A responsive package for Bot command cooldowns
• With this package you can create the command cooldowns which will not get reset whenever the bot re-run









Join Official Discord Server for more guidance !

Features

Cooldowns of Bot commands are stored in a DATABASE
Available Databases MySQL, PostgreSQL and Sqlite(Sqlite3)


Installation
Python 3.8 or higher is required !
# Linux/macOS
python3 -m pip install discord-cooldown

# Windows
# Method-1:
py -3 -m pip install discord-cooldown
# or
python -m pip install discord-cooldown
# Method-2:
pip install discord-cooldown

# Using GIT for ALPHA or BETA Versions
# Method-1:
pip install git+https://github.com/Modern-Realm/discord_cooldown
# Method-2:
pip install -U git+https://github.com/Modern-Realm/discord_cooldown

Note: For better stability install package from GitHub
using GIT

REQUIRED DEPENDENCIES

You can use ANY ONE of the below discord API Package



py-cord


nextcord


discord.pyV2.0


disnake
For disnake you should Refactor/ Shim all discord terms to disnake terms to make Package work


Note: Don't install more than one DEPENDENCY !

Other Dependencies

mysql-connector-python
psycopg2


QuickStart
from discord_cooldown.modules import MySQL
from discord_cooldown import Cooldown

import discord

from discord.ext import commands
from datetime import timedelta

TOKEN = ""
intents = discord.Intents.all()
client = commands.Bot(command_prefix="&", intents=intents)

# MySQL Database Setup
db = MySQL(
host="", db_name="",
user="", passwd=""
)

# For Indian timezone (UTC +5:30)
timezone = +timedelta(hours=5, minutes=30)


def CD():
return Cooldown(database=db, timezone=timezone)


@client.event
async def on_ready():
await client.change_presence(status=discord.Status.online, activity=discord.Game("&help"))
print("Bot is online")


@client.event
async def on_command_error(ctx, error):
if isinstance(error, commands.CommandOnCooldown):
return await ctx.send(
f"on cooldown retry after `{timedelta(seconds=error.retry_after)}`"
)
else:
# For resetting a command on any error other than CommandOnCooldown
return await CD().reset_cooldown(ctx.author, ctx.command.name)


@CD().cooldown(1, 2 * 60)
@client.command()
async def test(ctx):
await ctx.send("testing")


@CD().cooldown(2, 0, reset_per_day=True)
@client.command()
async def vote(ctx):
await ctx.send("done")


@CD().cooldown(3, 60)
@client.command()
async def test1(ctx, *, msg: str):
await ctx.send("message is " + msg)


if __name__ == "__main__":
client.run(TOKEN)


Project Links
You can get support/help/guidance from below social-media links

Home Page
Official Discord Server
PyPi Package

License

For personal and professional use. You cannot resell or redistribute these repositories in their original state.

Customer Reviews

There are no reviews.