Skip to content

Bot de música ​

Um bot que entra na sala de voz de quem chamou e toca links, com fila. O código completo está no repositório do Zynko, em bots/musica, feito com a biblioteca para JavaScript.

Comandos ​

Os comandos aparecem ao digitar / no app (/tocar, /fila...) e também funcionam com ! no lugar da barra. Ao começar cada música, o bot manda um cartão "Tocando agora" com o título, quem pediu, o volume, as próximas da fila e os botões Pausar, Pular e Parar; o cartão se atualiza a cada clique. As respostas a comandos com / aparecem só para quem usou.

comando
/tocar link ou !tocar <link>Toca, ou põe na fila se já estiver tocando.
!pularVai para a próxima da fila.
!pararPara e esvazia a fila.
!pausar, !continuar
!filaO que está tocando e as próximas.
!tocandoO que está tocando.
!volume <0-200>Volume em porcentagem; sem número, mostra o atual.
!sairSai da sala.
!testeToca um tom de 3 segundos.
!ajudaA lista.

O bot entra na sala de quem mandou o comando e sai sozinho quando fica um minuto sem ninguém.

Qualquer coisa que o ffmpeg abra: links diretos de mp3, ogg, wav, flac e rádios por stream.

Com YTDLP=1, os links passam antes pelo yt-dlp, que entende páginas de muitos sites, e o título vem do próprio site. Respeite os termos de uso dos sites e os direitos de quem fez a música.

Rodar ​

  1. Crie o bot em dev.zynko.org. No convite, marque Ver canais, Enviar mensagens, Ler o histórico, Adicionar reações, Entrar em salas e Falar, e adicione ao seu servidor.
  2. Instale o Node.js 22 e o ffmpeg.
  3. No bots/musica:
sh
npm install
ZYNKO_TOKEN=bot_... npm start
variável
ZYNKO_TOKENO token do bot.
PREFIXO começo dos comandos. Padrão: !.
YTDLP1 para usar o yt-dlp do PATH, ou o caminho dele.
FFMPEG_PATHO ffmpeg, se não estiver no PATH.

Com Docker ​

O Dockerfile da pasta já traz o Node e o ffmpeg:

sh
docker build -t zynko-musica -f bots/musica/Dockerfile .
docker run -d --restart unless-stopped -e ZYNKO_TOKEN=bot_... zynko-musica

O build parte da raiz do repositório, porque usa a biblioteca de sdk/js.

Zynko · zynko.org