rawon icon indicating copy to clipboard operation
rawon copied to clipboard

feat: Bunch of improvements and bug fixes as v4 being

Open Copilot opened this issue 2 months ago • 28 comments

Request Channel Feature - Complete Implementation

Latest Changes

  • [x] Remove ALL moderation features (commands, events, ModerationLogs)
  • [x] Translate requestChannel section to all 11 languages
  • [x] Remove "stay in voice" functionality (saves bandwidth)
  • [x] Replace all text-like emojis with styled versions (⏹️, ⏸️, ▶️, ⏭️)

Core Features

  • [x] Request channel with persistent player embed
  • [x] Interactive button controls (play/pause, skip, stop, loop, shuffle, volume ±10%, queue list)
  • [x] Auto-delete user messages for cleanliness
  • [x] Music command redirect warnings when request channel is set up
  • [x] Prefix commands work normally in request channel (deleted after 30s)

UI/UX Improvements

  • [x] Progress bar with aesthetic ▬▬▬🔘▬▬▬▬▬▬ style
  • [x] Footer shows "• Total song(s) in queue: X"
  • [x] Styled emojis (⏸️, ▶️, ⏭️, ⏹️)
  • [x] Guild icon as thumbnail when playing
  • [x] Song thumbnail syncs with current track
  • [x] Skip button is blue (Primary style)

Bug Fixes

  • [x] Remove VOLUME from Dockerfile (fixes Railway deploy, closes #1467)
  • [x] Fix MESSAGE_REFERENCE_UNKNOWN_MESSAGE error (closes #1470)
  • [x] Fix ephemeral deprecation warning
  • [x] Fix lyrics command with fallback API (lyrics.ovh)
  • [x] Remove duplicate emoji in error messages
  • [x] Fix CI lint errors

Removed Features

  • [x] Remove 24/7 command (StayInQueueCommand)
  • [x] Remove glitch/replit/heroku support completely
  • [x] Remove clear queue button (duplicates stop)
  • [x] Remove "stay in voice" feature (wastes bandwidth)
  • [x] Remove ALL moderation commands and features
Original prompt

Implement a new Discord music bot "request channel environment" where each guild can designate exactly one text channel as a music-only channel that contains a single persistent embed message acting as a live player and controller; this embed must always reflect the current playback state (current track, requester, progress, duration, volume, loop mode, and queue length) (always standby) and include interactive Discord message buttons for play/pause, skip, stop, loop toggle, volume up/down, and clear queue, while users request music simply by sending plain text messages (song titles, direct links, or playlist URLs from any supported source such as YouTube, Spotify links via search fallback, SoundCloud, etc.) into that channel without using commands; the bot should automatically join the requester’s voice channel if not connected, start playback immediately when idle or enqueue if already playing, delete or ignore non-request chatter for cleanliness, persist the request channel ID and player message ID so the system restores itself after restarts, reuse existing player logic where possible, handle permissions and error cases gracefully (user not in voice, invalid link, no results), and be built cleanly and modularly using discord.js with maintainable structure. make sure everything clear, smooth, and no error even warnings allowed.


💬 We'd love your input! Share your thoughts on Copilot coding agent in our 2 minute survey.

Copilot avatar Dec 15 '25 10:12 Copilot

@copilot "Copilot stopped work due to an error Copilot has encountered an error. See logs for additional details." apaansih lu error mulu, perasaan quota gw bayar lu masih ada dikit -_-...

Fixed paused/resumed auto-delete after 30s in commit.

Regarding prefix commands "only you can see this": This is technically impossible. Discord only supports ephemeral messages for interactions (slash commands, buttons). Prefix commands use regular message replies which cannot be ephemeral - all users can see them.

Current behavior keeps the channel clean:

  • User's command deleted after 30s ✓
  • Bot's reply deleted after 2min ✓

If you want true "only you can see this", users must use slash commands instead of prefix commands in the request channel. I can block prefix commands entirely in request channel and force slash commands only - let me know.

Copilot avatar Dec 16 '25 08:12 Copilot