From 856172c0f944e6acfd8895f1e27947557b54df50 Mon Sep 17 00:00:00 2001 From: sooryaprakash0000-beep Date: Sun, 24 May 2026 15:11:35 +0530 Subject: [PATCH] Update voiceStateUpdate.js --- src/events/voiceStateUpdate.js | 29 ++++++++++++++++++++++------- 1 file changed, 22 insertions(+), 7 deletions(-) diff --git a/src/events/voiceStateUpdate.js b/src/events/voiceStateUpdate.js index 15a5268de..db3978002 100644 --- a/src/events/voiceStateUpdate.js +++ b/src/events/voiceStateUpdate.js @@ -165,14 +165,29 @@ if (now - lastCreation < VOICE_CREATE_COOLDOWN_MS) { logger.info(`Creating temporary channel for user ${member.id} with user limit: ${userLimit}`); - const channelName = sanitizeVoiceChannelName(formatChannelName(nameTemplate, { - username: member.user.username, - userTag: member.user.tag, - displayName: member.displayName, - guildName: guild.name, - channelName: triggerChannel.name - })); +const existingChannels = guild.channels.cache.filter(c => + c.parentId === triggerChannel.parentId && + c.name.startsWith(triggerChannel.name) +).size; + +let finalName; + +if ( + nameTemplate.includes('{username}') || + nameTemplate.includes('{displayName}') +) { + finalName = formatChannelName(nameTemplate, { + username: member.user.username, + userTag: member.user.tag, + displayName: member.displayName, + guildName: guild.name, + channelName: triggerChannel.name + }); +} else { + finalName = `${triggerChannel.name} ${existingChannels + 1}`; +} +const channelName = sanitizeVoiceChannelName(finalName); if (!member.voice?.channel || member.voice.channel.id !== triggerChannel.id) { logger.debug(`Member ${member.id} no longer in trigger channel ${triggerChannel.id}, aborting temporary channel creation`); channelCreationCooldown.delete(cooldownKey);