You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+22-6Lines changed: 22 additions & 6 deletions
Original file line number
Diff line number
Diff line change
@@ -1,14 +1,14 @@
1
1
# Discord Radio Bot
2
2
3
-
A simple Discord bot that streams radio stations in voice channels and updates its status with the current song title. This bot can join a voice channel, play a specified radio stream, adjust volume, and provide a custom help command for bot commands. It integrates with Discord Rich Presence to display the currently playing song.
3
+
A simple Discord bot that streams radio stations in voice channels and updates its status with the current song title. This bot can join a voice channel, play a specified radio stream, adjust volume, and provide a custom help command for bot commands. It integrates with Discord Rich Presence to display the currently playing song and features automatic recovery from disconnections.
4
4
5
5
## Features
6
6
7
7
-**Stream Radio**: Plays a specified radio stream in a voice channel.
8
8
-**Volume Control**: Adjusts playback volume with a simple command.
9
9
-**Custom Help Command**: Provides a list of available commands with a user-friendly interface.
10
10
-**Discord Rich Presence**: Displays the current song title in Discord Rich Presence.
11
-
-**Automatic Presence Update**: Updates Rich Presence every 30 seconds with the current song title.
11
+
-**Automatic Presence Update**: Updates Rich Presence every 120 seconds with the current song title.
12
12
-**Role-based Permissions**: Commands are restricted to users with specific roles.
13
13
-**Channel Restriction**: Commands can only be used in a designated control channel.
14
14
-**Join and Leave Voice Channels**: Commands to join or leave voice channels.
@@ -17,6 +17,11 @@ A simple Discord bot that streams radio stations in voice channels and updates i
17
17
-**Update Default Stream URL**: Change the default stream URL used by the bot.
18
18
-**Add and List Radio Stations**: Add new radio stations to the configuration and list available stations.
19
19
-**Fetch Cover Image**: Fetches cover images from Spotify for the currently playing track.
20
+
-**Auto-Reconnect**: Automatically reconnects and resumes playback when disconnected.
21
+
-**Stream State Management**: Maintains stream state across channel moves and reconnections.
22
+
-**Enhanced Error Handling**: Better error feedback and recovery mechanisms.
23
+
-**Automatic Stream Recovery**: Recovers stream playback when moved between channels.
24
+
-**Dynamic Nickname Updates**: Updates bot nickname to reflect current station.
20
25
21
26
## Commands
22
27
@@ -26,14 +31,15 @@ A simple Discord bot that streams radio stations in voice channels and updates i
26
31
-`!stop`: Stops the playback.
27
32
-`!vol <volume>`: Adjusts the playback volume (0-100).
28
33
-`!setdefault <url>`: Updates the default stream URL in the configuration.
29
-
-`!stations`: Displays a list of available radio stations with indices.
34
+
-`!radio`: Shows an interactive menu of available radio stations.
30
35
-`!add <name> <url>`: Adds a new radio station to the configuration.
31
-
-`!remove`: Removes a radio station from the configuration file.
36
+
-`!remove`: Shows an interactive menu to remove radio stations.
32
37
-`!restart`: Restarts the bot.
33
38
-`!reload`: Reloads the configuration file.
34
39
-`!commands`: Displays the list of available commands.
35
40
-`!status`: Shows the current station and playing title.
36
41
-`!stats`: Shows bot statistics.
42
+
-`!fix`: Fixes stream playback issues by restarting the current stream.
37
43
38
44
## Setup
39
45
@@ -98,15 +104,25 @@ To run the bot using Docker, follow these steps:
98
104
99
105
This will create and run a Docker container with your bot, including FFmpeg for streaming.
100
106
101
-
## Rich Presence
107
+
## Rich Presence and Status Updates
102
108
103
-
The bot uses Discord Rich Presence to show the current song title. Ensure that the `client_id`in your `config.ini` is set correctly for Rich Presence to work.
109
+
The bot uses Discord Rich Presence to show the current song title and updates its status every 120 seconds. It also maintains a dedicated update channel where it posts currently playing tracks with cover art from Spotify.
110
+
111
+
## New Features in v1.1.1
112
+
113
+
- **Auto-Reconnect**: Bot now automatically reconnects when disconnected
114
+
- **Stream Recovery**: Maintains playback state when moved between channels
115
+
- **Enhanced Stability**: Better error handling and recovery mechanisms
116
+
- **Interactive Menus**: New dropdown and button interfaces for station selection
117
+
- **Improved Status Updates**: More reliable song title and cover art updates
104
118
105
119
## Troubleshooting
106
120
107
121
- **Bot not updating Rich Presence**: Ensure that Discord is running and that you have set the correct `client_id`in`config.ini`.
108
122
- **Bot not joining the voice channel**: Verify that the bot has the necessary permissions and that the `default_voice_channel_id` is correct.
123
+
- **Stream interruptions**: Use the `!fix`command to restart the current stream if you experience playback issues.
109
124
- **Error installing dependencies**: Ensure you have Python 3.11 or later and that `ffmpeg` is properly installed.
125
+
- **Bot disconnecting**: The bot will now automatically attempt to reconnect and resume playback.
0 commit comments