Skip to content
/ radio Public

24/7 Discord radio bot with real-time stream and station control.

License

Notifications You must be signed in to change notification settings

jevenchy/radio

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

18 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation


Radio-bot
Radio-bot

24/7 Discord radio bot with real-time stream and station control.

Features

Bot in action

  • 24/7 streaming in voice channels
  • Interactive station switcher (via dropdown)
  • Real-time stream display (embed)
  • Automatic reconnect to the designated voice channel if disconnected
  • Voice channel control: Ensure the bot only operates in the designated voice channel

Setup

npm install
cp env.example .env

Edit .env with your bot credentials:

DISCORD_TOKEN=your_token_here
GUILD_ID=...
EMBED_CHANNEL_ID=...
VOICE_CHANNEL_ID=...

Start the bot:

npm start

File Structure

radio/
├── config/                 # Environment config
├── img/                    # Assets (avatar, embed)
└── src/
    ├── core/               # Streaming logic (stationlist, initialize, player)
    ├── embed/              # Embed builder (menu, interaction)
    ├── events/             # Event listeners
    └── utils/              # Logger, time formatter

Update Available Radio Stations

- BBC Radio 1
- BBC Radio 2
- BBC Radio London
- BBC Radio 6 Music
- Capital FM
- ABC triple J
- CBC Radio One
- Radio Disney - DFW
- Radio Disney - SA
- NetRadio
- KEXP 90.3 FM
- NPR Radio
- 108 JAMZ
- Deutschlandfunk
- RAI Radio 1
- RAI Radio 2
- SBS PopAsia
- Chillout Antenne
- Virgin Radio
- HITS Mandarin
- Mandarin Station
- Classic Rock Florida
- 977 Today HITS
- Smooth Radio
- Olímpica Stereo

Requirements

  • Node.js v18+ (recommended: v20 via .nvmrc)
  • FFmpeg (included via ffmpeg-static)
  • Discord bot token with voice permissions
  • Voice encryption dependency: tweetnacl

Update Notes

Major Fixes:

- Automatic reconnection: Bot will now reconnect and play the last station if disconnected from the voice channel.
- Stable error handling: If the bot is unable to connect to the voice or text channel, the process will exit with a clear error log.