Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/prodbyeagle/recordingbot
https://github.com/prodbyeagle/recordingbot
Last synced: about 1 month ago
JSON representation
- Host: GitHub
- URL: https://github.com/prodbyeagle/recordingbot
- Owner: prodbyeagle
- Created: 2024-11-26T05:22:19.000Z (about 1 month ago)
- Default Branch: main
- Last Pushed: 2024-11-26T06:48:43.000Z (about 1 month ago)
- Last Synced: 2024-11-26T07:25:06.990Z (about 1 month ago)
- Language: TypeScript
- Size: 14.6 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Discord Recording Bot 🎙️
A Discord bot for automatically recording voice channels, developed with Discord.js and TypeScript.
## Features 🌟
- **Automatic Recording** - Automatically records voice channels
- **Auto-Join System** - Automatically joins specific users
- **Server Configuration** - Individual settings per Discord server
- **Logging** - Detailed logging of all bot activities## Commands 🛠️
### Auto-Join Commands
- `/autojoin add ` - Add a user to the auto-join list
- `/autojoin remove ` - Remove a user from the auto-join list
- `/autojoin list` - Show all auto-join users### Settings Commands
- `/settings autojoin ` - Enable or disable auto-join feature
- `/settings channel ` - Set the recording output channel
- `/settings maxlength ` - Set maximum recording length
- `/settings retention ` - Set how long recordings are kept
- `/settings show` - Display current settings## Installation 📥
1. Clone the repository
```bash
git clone https://github.com/prodbyeagle/RecordingBot
cd RecordingBot
```2. Install dependencies
```bash
npm install
```3. Configure environment variables
Create a `.env` file with the following variables:
```env
TOKEN=your_discord_bot_token
SUPABASE_URL=your_supabase_url
SUPABASE_KEY=your_supabase_key
RECORDINGS_PATH=./recordings
FFMPEG_PATH=path/to/ffmpeg.exe
```4. Start the bot
```bash
npm run start
```## Technical Requirements 🔧
- Node.js 16.x or higher
- FFmpeg
- TypeScript
- Discord.js v14
- Supabase for data storage## Database Schema 📊
### auto_join_users
- `id` - Primary key
- `user_id` - Discord user ID
- `guild_id` - Discord server ID
- `created_at` - Creation timestamp### bot_config
- `id` - Primary key
- `guild_id` - Discord server ID
- `log_channel_id` - Log channel ID
- `created_at` - Creation timestamp
- `updated_at` - Last update timestamp## Development 👨💻
This project uses TypeScript for better code quality and maintainability. The project structure is as follows:
```
src/
├── commands/ # Discord slash commands
├── events/ # Discord event handlers
└── utils/ # Helper functions and utilities