1.9 KiB
1.9 KiB
Discord Meeting Summary Bot — Deployment
Local testing
- Create a
.envfile:
DISCORD_BOT_TOKEN=your_discord_bot_token
OPENROUTER_API_KEY=your_openrouter_api_key
- Run locally with Python:
cd /opt/data/discord-meeting-bot
source .venv/bin/activate
python3 bot.py
- In Discord:
/set_output #your-channel/join- talk in voice
/leave
Docker / CasaOS
This repository now includes:
Dockerfiledocker-compose.yml.dockerignore
Build and run with Docker Compose
cd /opt/data/discord-meeting-bot
docker compose up -d --build
Persistent data
The compose file stores:
data/config.json— saved channel settingsrecordings/— temporary meeting audio
CasaOS setup
In CasaOS, create a custom app from the compose file or use the Docker custom app UI and point it at this repo.
Use a persistent directory like:
/DATA/AppData/discord-meeting-bot
Mount it so the container sees:
/app/data/app/recordings
Make sure the container gets these environment variables:
DISCORD_BOT_TOKENOPENROUTER_API_KEY
Logs
Check the container logs if something fails:
docker compose logs -f
Auto-start on reboot
The compose file already includes:
restart: unless-stopped
That means the bot container will come back automatically after a reboot as long as the Docker service itself starts at boot.
On the server, enable Docker once:
sudo systemctl enable docker
sudo systemctl restart docker
You can verify both pieces with:
cd /DATA/AppData/discord-meeting-bot
docker compose ps
sudo systemctl is-enabled docker
Notes
- The bot only responds to commands in the configured output channel, except
/set_output. /joinrequires the user to be in a voice channel./leavestops recording and posts the summary to the configured output channel.