Come creare un bot musicale per Discord
In questa pagina
Un bot musicale è un bot Discord che entra in un canale vocale e riproduce audio. La parte del bot — comandi, una coda, un messaggio «in riproduzione» — è normale codice da bot. La parte difficile è l'audio: recuperare i brani, codificarli e trasmetterli nel canale vocale senza interruzioni.
Questa guida spiega i due modi di gestire l'audio, quali librerie funzionano ancora dopo le modifiche alla voce di Discord del 2026 e cosa un bot musicale può e non può riprodurre. Se non hai mai creato un bot, inizia da come creare un bot Discord.
Prima di tutto: la voce cifrata di Discord (DAVE)
Dal 1° marzo 2026 Discord consente solo chiamate vocali con crittografia end-to-end, tramite un protocollo chiamato DAVE. Un bot basato su una libreria che non lo supporta non può più entrare nei canali vocali. Ecco perché molti vecchi tutorial e repository di bot musicali hanno smesso di funzionare.
Prima di iniziare, assicurati che il tuo stack sia abbastanza recente:
| Libreria | Supporto DAVE dalla versione |
|---|---|
| discord.py | 2.7.0, installata come discord.py[voice] |
| @discordjs/voice | 0.19, che richiede Node.js 22.12 o successivo |
| Server Lavalink | 4.2.0 |
| discord-player | 7.2.0 |
Due modi per riprodurre audio: Lavalink o FFmpeg
| Lavalink | FFmpeg nel bot | |
|---|---|---|
| Come funziona | Un server audio separato trasmette la musica; il bot gli invia comandi | Il bot stesso decodifica e trasmette l'audio con FFmpeg |
| Al bot serve | Una libreria client per Lavalink | FFmpeg e Opus installati insieme al bot |
| Scala fino a | Molti server contemporaneamente; un solo Lavalink può servire più bot | Pochi server, prima che la CPU del bot diventi il limite |
| Ideale per | Qualsiasi bot che prevedi crescerà | Imparare, o un bot per un solo server |
La maggior parte dei bot musicali pubblici usa Lavalink. FFmpeg è più semplice per iniziare, perché c'è un solo programma da eseguire.
Librerie client Lavalink mantenute
Questi client sono nell'elenco ufficiale di Lavalink e hanno pubblicato release nel 2026 con le modifiche alla voce descritte sopra:
- JavaScript (discord.js): lavalink-client, Shoukaku, Riffy, Moonlink.js
- Python (discord.py): Wavelink, lavalink.py, mafic, pomice
- C#: Lavalink4NET
- Java (JDA): Lavalink-Client
Ognuno si collega a un server Lavalink con host, porta e password, e fornisce al tuo bot comandi come cerca, riproduci, salta e volume. La configurazione del server è spiegata in come ospitare un server Lavalink.
In JavaScript esiste anche discord-player, che gestisce l'audio all'interno del bot. La versione attuale non supporta più YouTube; riproduce SoundCloud, Vimeo, allegati e link di Spotify o Apple Music tramite altre fonti.
Il metodo FFmpeg, in poche righe
Per vedere la voce in funzione, riproduci un file di tua proprietà. In Python, installa l'extra voice e assicurati che ffmpeg sia presente nel sistema:
pip install "discord.py[voice]"
Poi, all'interno di uno slash command, entra nel canale di chi lo ha invocato e riproduci un file locale:
channel = interaction.user.voice.channel
voice = await channel.connect()
voice.play(discord.FFmpegPCMAudio("song.mp3"))
await interaction.response.send_message("Playing.")
In JavaScript l'equivalente è @discordjs/voice con @discordjs/opus e FFmpeg. Un bot vero aggiunge una coda, i comandi salta e stop, e lascia il canale quando resta vuoto.
Cosa può riprodurre un bot musicale
È qui che la maggior parte dei bot musicali finisce nei guai, quindi chiariscilo prima di costruire il tuo:
- I termini di YouTube non consentono di scaricare o ritrasmettere i suoi contenuti senza autorizzazione, né di aggirarne le protezioni. Grandi bot musicali sono stati chiusi proprio per questo.
- Le linee guida della community di Discord vietano di condividere contenuti che violano la proprietà intellettuale di chiunque, e il proprietario del bot è responsabile di ciò che fa.
- Fonti più sicure: musica di tua proprietà o per cui hai una licenza, librerie royalty-free e Creative Commons, radio online che lo consentono e file caricati dai tuoi membri con il diritto di condividerli.
Lavalink e i suoi plugin possono tecnicamente riprodurre da molti siti; se tu sia autorizzato a farlo è un'altra questione, e spetta a te rispondere.
Hosting di un bot musicale
Un bot musicale deve restare online e mantenere una connessione stabile durante lo streaming, cosa che un PC di casa in Wi-Fi raramente riesce a fare a lungo. Con l'hosting per bot Discord di HytHost:
- Il bot gira sul runtime Node.js, Python, Java, Go, C# o Bun che scegli al momento dell'ordine.
- Lavalink è un runtime a sé. Funziona come server separato: ordina un piano per il bot e uno con il runtime Lavalink oppure, su un piano con più slot per bot, chiedici di spostarne uno su Lavalink.
- Configura il client Lavalink del bot con l'indirizzo, la porta e la password del server Lavalink, come indicati nel suo pannello.
Come mantenere online il bot stesso, con riavvio automatico e il token al sicuro, è spiegato in come ospitare un bot Discord 24/7.
Esegui il bot e il suo server Lavalink sull'hosting per bot Discord di HytHost — Node.js, Python, Java, Lavalink e altro, da €0.89/mese.
Vedi i piani hosting per botDomande frequenti
Molto probabilmente per la voce cifrata di Discord. Dal 1° marzo 2026 solo i client che supportano il protocollo DAVE possono entrare nelle chiamate vocali. Aggiorna a discord.py 2.7, @discordjs/voice 0.19 o Lavalink 4.2 o successivi, e a un client Lavalink aggiornato.
No. Un bot piccolo può trasmettere direttamente con FFmpeg. Lavalink conviene quando il bot suona in più server contemporaneamente, perché toglie al bot il lavoro sull'audio.
Tecnicamente alcuni strumenti ci riescono ancora, ma i termini di YouTube non consentono di scaricare o ritrasmettere i suoi contenuti senza autorizzazione, e questi strumenti si rompono spesso. La musica di tua proprietà o con licenza è la scelta sicura.
Con discord.js, un client Lavalink come lavalink-client o Shoukaku; con discord.py, Wavelink o lavalink.py. Scegline uno con una release del 2026, così supporta la voce cifrata di Discord.
Il bot in sé è leggero; a pesare è il lavoro sull'audio. Con Lavalink, assegna al server Lavalink circa 1 GB per un bot piccolo (il nostro consiglio) e al bot ciò che gli servirebbe senza musica.
Metti online il tuo bot musicale
L'hosting per bot Discord di HytHost esegue il tuo bot e il tuo server Lavalink, con database MySQL e backup — da €0.89/mese.
Live chat 8 AM – 11 PM (Chișinău time) · tickets answered during business hoursQuesta guida ti è stata utile?