A fresh, new project!
Clip That is a discord bot that records voice call audio and, upon saying “Clip that”, saves it to a text channel for permanent storage.
It will only listen to people who are opted in (the default is opted out), keep just the last 30s of audio in memory, and never save anything unless someone says “Clip that”.
(The clip duration will be configurable. 30s will be the default.)
I’m making Clip That because I’ve had many moments where I wish I had been recording as my friends said something funny, so Clip That is my way of solving this problem.
Discord’s new end-to-end voice encryption broke my original library of choice, py-cord, so I used Claude to research alternative, working libraries, leading me to a patched discord-ext-voice-recv commit.
Currently, I have:
- An opt-in/out system where users can easily choose to not be recorded;
- A rolling 30 second buffer (only the last 30 seconds of audio are kept), stored entirely in memory, for each opted-in user;
- I learned I should use monotonic time instead of time.time() to avoid system time weirdness when hosting on NEST
- Manual /listen, /dump and /unlisten commands to control the bot’s actions (these will later be automated);
- SQLite database for keeping track of users’ consent status.
The leaderboard title is gold now too!
