Skip to main content
Join the official 2019 Python Developers SurveyStart the survey!

Shared cogs and utilities for use in Discord bots

Project description

Bot Bin

Shared cogs and utilities for use in Discord bots. Some cogs require bot configuration; those that do expect a bot.config dict attribute.

bot_bin.bot

Contains an AutoShardedBot subclass. Contains custom error logging, customizable on_message bot ignoring, case insensitive prefixes, and database setup if the setup_db kwarg is set to True. Requires the config kwarg to be set to a dict. bot.config['tokens']['discord'] should be the bot's Discord token.

bot_bin.debug

Contains memory usage and performance debugging commands. Most other debug functionality is already provided by jishaku.

bot_bin.misc

Contains an uptime, ping, and copyright command. The latter requires bot.config['copyright_license_file'] to be set to a path to a text file, the contents of which will be sent when the user runs the copyright command.

Also contains various utilities:

  • codeblock wraps text in a markdown code block
  • absolute_natural_timedelta returns an English string representing an amount of seconds
  • natural_timedelta returns an English string representing the difference between two dates. This function differs from absolute_natural_timedelta in that it also supports years and months.
  • natural_rate returns an English string representing a rate of occurence.
  • plural is a format object which pluralizes strings. For example: f'Found {plural(len(results)):weapon}'
  • natural_join joins a sequence of strings according to English grammar
  • timeit is a context manager that times the code in the with block

bot_bin.sql

Contains SQL execution commands for asyncpg. Requires bot.pool to be set to either an asyncpg Connection or a ConnectionPool. Requires the bot_bin[sql] extra.

bot_bin.stats

Implements the guild count API for DBL, DBots, Bots For Discord, LBots, and Discord Boats. This is configured using bot.config['tokens']['stats']. Each key should be a domain, e.g. bot.config['tokens']['stats']['discordbots.org'] would be the bot's DBL token.

Defines a send-stats owner only command which sends the current guild counts to the configured APIs and reports any errors.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for bot-bin, version 1.1.0
Filename, size File type Python version Upload date Hashes
Filename, size bot_bin-1.1.0-py3-none-any.whl (13.9 kB) File type Wheel Python version py3 Upload date Hashes View hashes
Filename, size bot-bin-1.1.0.tar.gz (12.1 kB) File type Source Python version None Upload date Hashes View hashes

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN SignalFx SignalFx Supporter DigiCert DigiCert EV certificate StatusPage StatusPage Status page