Sign inSign up

coder93/concierge-bot

By coder93

โ€ขUpdated 7 months ago

Image
0

679

coder93/concierge-bot repository overview

โ Concierge

A professional Discord bot acts as a Concierge for your serverโ€”managing dynamic voice channels, creating private lobbies, and handling room service (with a few chaotic twists).

โ Features

โ ๐ŸŽ™๏ธ Dynamic Voice Channels
  • Auto-Creation: Join "โž• Create Channel" to be assigned your own room.
  • Smart Inheritance: Channels created in a "Private Lobby" category automatically inherit private permissions.
  • Forever Alone: If you're alone for 60s, your channel renames to "Forever Alone" (and restores when someone joins).
  • Auto-Cleanup: Empty channels are swept away automatically.
โ ๐ŸŽ›๏ธ Room Service (Buttons)
  • ๐Ÿ”’ Lock: Sets the user limit to the current number of members.
  • ๐Ÿ”“ Unlock: Removes the user limit.
  • ๐Ÿ‘ฅ Role Limit: Restrict your channel to a specific role (e.g., "Subscribers Only").
  • โœ๏ธ Rename: Instructions on how to rename your channel.
โ ๐Ÿ› ๏ธ User Customization
  • !setname <name>: Set a permanent custom name for your rooms (e.g., !setname Magdi's Lounge).
  • !resetname: Reset your channel name to default.
โ ๐ŸŽฒ Fun & Chaos
  • !roulette: Russian Roulette. 1 in 6 chance to get kicked from the channel.
  • !flip: Flip a coin (Heads/Tails).
  • !bonk @user: Send a user to AFK jail and back (requires them to be in VC).
  • !ride @user: Send a user on a rollercoaster ride through random channels.
  • !mimic @user: The bot mimics the user's nickname for 2 minutes.
  • !lag @user: Simulates lag by moving the user between channels rapidly.
  • !mute_roulette: Mutes a random user in your voice channel for 30 seconds.
โ ๐Ÿ‘‘ Admin Commands
  • !create_lobby "<Name>" [@Role]: Create a new category and trigger channel.
    • Example Public: !create_lobby "General Lounge"
    • Example Private: !create_lobby "VIP Area" @VIP

โ Prerequisites

  • Python 3.13+ (for local development)
  • Pipenv (for dependency management)
  • Docker (optional, for containerized deployment)
  • Discord Bot Token: Get one from the Discord Developer Portalโ .

โ Docker Setup

โ 1. Configure Environment

Create a .env file in the project root:

DISCORD_TOKEN=your_token_here
DB_PATH=/data/concierge.db
MOD_CHANNEL_ID=123456789012345678  # Optional: ID for error logging
docker-compose up -d
  • Logs: docker-compose logs -f
  • Restart: docker-compose restart
  • Stop: docker-compose down
โ 3. Manual Docker Run

If you prefer not to use Compose:

Build the image:

docker build -t concierge-bot .

Run the container:

docker run -d \
  --name concierge_bot \
  --restart always \
  --env-file .env \
  -v $(pwd)/concierge.db:/data/concierge.db \
  concierge-bot

โ Local Development

  1. Install Dependencies

    pipenv install
    
  2. Activate Virtual Environment

    pipenv shell
    
  3. Run the Bot

    python bot.py
    

    Or one-liner: pipenv run python bot.py

โ Configuration Reference

VariableDescriptionDefault
DISCORD_TOKENRequired. Your Discord Bot Token.-
DB_PATHPath to the SQLite DB.concierge.db
MOD_CHANNEL_IDChannel ID to log bot errors.None

โ Troubleshooting

  • Bot not creating channels? Ensure the bot has "Manage Channels" and "Move Members" permissions.
  • Commands not working? Check if the bot has "Message Content Intent" enabled in the Discord Developer Portal.
  • Database errors? Ensure the DB_PATH directory is writable.

Tag summary

Content type

Image

Digest

sha256:6064eb46aโ€ฆ

Size

67.1 MB

Last updated

7 months ago

docker pull coder93/concierge-bot