feat: initial discord meeting bot
This commit is contained in:
@@ -0,0 +1,76 @@
|
||||
# Discord Meeting Summary Bot — Deployment
|
||||
|
||||
## Local testing
|
||||
|
||||
1. Create a `.env` file:
|
||||
|
||||
```env
|
||||
DISCORD_BOT_TOKEN=your_discord_bot_token
|
||||
OPENROUTER_API_KEY=your_openrouter_api_key
|
||||
```
|
||||
|
||||
2. Run locally with Python:
|
||||
|
||||
```bash
|
||||
cd /opt/data/discord-meeting-bot
|
||||
source .venv/bin/activate
|
||||
python3 bot.py
|
||||
```
|
||||
|
||||
3. In Discord:
|
||||
- `/set_output #your-channel`
|
||||
- `/join`
|
||||
- talk in voice
|
||||
- `/leave`
|
||||
|
||||
## Docker / CasaOS
|
||||
|
||||
This repository now includes:
|
||||
- `Dockerfile`
|
||||
- `docker-compose.yml`
|
||||
- `.dockerignore`
|
||||
|
||||
### Build and run with Docker Compose
|
||||
|
||||
```bash
|
||||
cd /opt/data/discord-meeting-bot
|
||||
docker compose up -d --build
|
||||
```
|
||||
|
||||
### Persistent data
|
||||
|
||||
The compose file stores:
|
||||
- `config.json` — saved channel settings
|
||||
- `recordings/` — 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:
|
||||
|
||||
```text
|
||||
/DATA/AppData/discord-meeting-bot
|
||||
```
|
||||
|
||||
Mount it so the container sees:
|
||||
- `/app/config.json`
|
||||
- `/app/recordings`
|
||||
|
||||
Make sure the container gets these environment variables:
|
||||
- `DISCORD_BOT_TOKEN`
|
||||
- `OPENROUTER_API_KEY`
|
||||
|
||||
### Logs
|
||||
|
||||
Check the container logs if something fails:
|
||||
|
||||
```bash
|
||||
docker compose logs -f
|
||||
```
|
||||
|
||||
## Notes
|
||||
|
||||
- The bot only responds to commands in the configured output channel, except `/set_output`.
|
||||
- `/join` requires the user to be in a voice channel.
|
||||
- `/leave` stops recording and posts the summary to the configured output channel.
|
||||
Reference in New Issue
Block a user