Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

225
Vistas
Enviar un archivo de sonido aleatorio como respuesta no funciona

Estoy tratando de hacer un comando de ben parlante para mi bot, y simplemente no funciona. Quiero que el bot envíe un clip de audio como respuesta cada vez que alguien haga una pregunta y, si no especifican una pregunta, el bot enviará un efecto de sonido "ben". No hay respuesta al comando en Discord en absoluto.

Aquí está el código:

ben.js :

 const Discord = require('discord.js'); const yes = new Discord.MessageAttachment( 'https://soundboardguy.com/sounds/talking-ben-yes_scachnw/', ); const no = new Discord.MessageAttachment( 'https://soundboardguy.com/sounds/talking-ben-no/', ); const laugh = new Discord.MessageAttachment( 'https://soundboardguy.com/sounds/talking-ben-laugh/', ); const uhh = new Discord.MessageAttachment( 'https://www.101soundboards.com/sounds/726466-uhh', ); const ben = new Discord.MessageAttachment( 'https://www.101soundboards.com/sounds/726450-ben', ); module.exports = { name: 'ben', description: 'talking ben command', async execute(client, message, args) { if (!args[0]) return ben; let benreplies = [yes, no, laugh, uhh]; let result = Math.floor(Math.random() * benreplies.length); message.channel.send(replies[result]); }, };

main.js :

 const Discord = require('discord.js'); const client = new Discord.Client({ intents: ['GUILDS', 'GUILD_MESSAGES'] }); const prefix = '.'; const fs = require('fs'); client.commands = new Discord.Collection(); const commandFiles = fs .readdirSync('./commands/') .filter((file) => file.endsWith('.js')); for (const file of commandFiles) { const command = require(`./commands/${file}`); client.commands.set(command.name, command); } client.once('ready', () => { console.log('Blueberry bot is online!'); }); client.on('messageCreate', (message) => { if (!message.content.startsWith(prefix) || message.author.bot) return; const args = message.content.slice(prefix.length).split(/ + /); const command = args.shift().toLowerCase(); // ... else if (command === 'ben') { client.commands.get('ben').execute(message, args, Discord); } });
about 4 years ago · Juan Pablo Isaza
2 Respuestas
Responde la pregunta

0

Primero, debe asegurarse de que los enlaces a los archivos de sonido sean válidos. Actualmente está utilizando enlaces que apuntan a una página HTML, no a los archivos mp3.

En segundo lugar, debe usar un objeto con una propiedad de files para enviar un archivo. Consulte las opciones de MessageOptions . los files también deberán ser una matriz. Lo siguiente funcionará:

 let sounds = [ { id: 'ben', link: 'https://soundboardguy.com/wp-content/uploads/2022/03/talking-ben-ben.mp3', }, { id: 'laugh', link: 'https://soundboardguy.com/wp-content/uploads/2022/02/Talking-Ben-Laughing-Sound-Effect-1.mp3', }, { id: 'no', link: 'https://soundboardguy.com/wp-content/uploads/2022/03/Talking-Ben-No-Sound-Effect.mp3', }, { id: 'uhh', link: 'https://soundboardguy.com/wp-content/uploads/2021/06/huh-uhh.mp3', }, { id: 'yes', link: 'https://soundboardguy.com/wp-content/uploads/2022/03/talking-ben-yes_SCacHNW.mp3', }, ]; let randomSound = sounds[Math.floor(Math.random() * sounds.length)]; message.channel.send({ files: [new MessageAttachment(randomSound.link, `${randomSound.id}.mp3`)], });

ingrese la descripción de la imagen aquí

about 4 years ago · Juan Pablo Isaza Denunciar

0

Los enlaces son incorrectos, usó los enlaces que tienen una interfaz de usuario, donde el usuario puede ver el audio, iniciar sesión, ver audios "relacionados", etc., no el archivo mp3 de audio fuente real.

Por ejemplo, ese enlace: https://www.101soundboards.com/sounds/726450-ben es incorrecto. Reemplácelo con https://www.101soundboards.com/storage/board_sounds_rendered/726450.mp3 ¡Haga exactamente lo mismo con cada archivo y estará listo para empezar!

about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda