bot de música programado em python com player interativo, comandos barra/slash, etc. Utilizando as libs disnake e wavelink/lavalink.
Bots de exemplo usando esta source: clique aqui.
- Comandos de barra / Slash commands
- Player controller: modo normal/mini-player (skin: default_progressbar)
- Suporte a RPC (Rich Presence).
- Player controller: modo fixo/estendido com canal e conversa de song requests (skin: default_progressbar), configurável com o comando: /setup
- Há diversas outras skins, veja todas usando o comando /change_skin (você também pode criar outras, use os modelos padrões que estão na pasta skins como referência, crie uma cópia com outro nome e modifique a seu gosto).
Repl.it
-
[ 1 ] - Após clicar no botão acima, aguarde até o deploy ser concluído.
-
[ 2 ] - Vá em secrets (cadeado do painel à esquerda) e crie uma secret e em KEY coloque um nome qualquer (letras/números/underline) e no value coloque o token do bot (Caso não tenha o token do bot, veja como obter com este tutorial).
-
Obs: Caso queira, você pode incluir token de mais bots para ter bots extras pra ativar o suporte a multi-voice em servidores usando um dos seguintes métodos:
-
Incluindo mais tokens no value (separando com espaços).
-
e/ou:
-
Repetindo o passo 2 com outro nome e adicionar outro(s) token(s) de bot(s) no value (caso adicione mais de 1 token separe com espaço).
-
[ 2.1 ] - Clique em Add new secret após preencher os campos key e value.
-
[ 3 ] - Não é obrigatório mas recomendo usar mongodb para database ao invés de json, pra isso crie uma key com nome MONGO e no value coloque o link de sua url do mongodb e em seguida clique em Add new secret (caso não tenha, veja como obter por este tutorial).
se desejar, você pode alterar outras configs, consulte o arquivo .example.env
-
[ 4 ] - Clique em run (botão de play) e aguarde o bot instalar as dependências e iniciar.
Render.com
-
[ 1 ] - No campo TOKEN coloque o token do bot ( tutorial de como obter ).
Nota: Caso queira, no campo TOKEN você pode incluir token de mais bots para ter bots extras pra ativar o suporte a multi-voice incluindo mais tokens no value (separando com espaços).
-
[ 2 ] - No campo DEFAULT_PREFIX coloque um prefixo para o bot.
-
[ 3 ] - Nos campos SPOTIFY_CLIENT_ID e SPOTIFY_CLIENT_SECRET coloque as suas keys do spotify ( tutorial de como obter ).
-
[ 4 ] - No campo MONGO coloque o link da sua database do MongoDB ( tutorial de como obter ).
-
[ 5 ] - Clique em Apply e aguarde o processo de build até o bot iniciar (isso pode demorar bastante, no mínimo uns 13 minutos ou mais para o deploy ser finalizado + bot iniciar + servidor lavalink iniciar).
Railway
-
[ 1 ] - Preencha os dados que vão ser requisitados na próxima página (os que tem asteríscos vermelhos são obrigatórios).
Nota: Caso queira, no campo TOKEN você pode incluir token de mais bots para ter bots extras pra ativar o suporte a multi-voice incluindo mais tokens no value (separando com espaços).
-
[ 2 ] - Clique no botão deploy e aguarde até o deploy ser concluído (Ficando com cor verde. Pode demorar alguns segundos antes de aparecer um deploy na lista).
-
Nota 1: Requer uma conta do github com um bom tempo de criado ou um cartão de crédito para ter uma conta verificada.
-
Nota 2: Caso queira alterar as configs usadas no passo 1, clique em variables e crie/altere a key e o valor desejado da config, consulte o arquivo .example.env para ver todas as configs disponíveis.
Gitpod
-
[ 1 ] - Abra o arquivo .env e coloque o token do bot no campo apropriado (caso não tenha, veja como obter com este tutorial tutorial de como obter). Também altamente recomendo usar mongodb, procure onde tem MONGO= no arquivo .env e nele coloque o link da sua db do mongodb (caso não tenha, veja como obter por este tutorial).
-
[ 2 ] - Clique com botão direito em cima do arquivo main.py e depois clique em: Run Python File in Terminal.
-
Nota 1: Requer verificação da conta por número de celular/mobile.
-
Nota 2: Não esqueça de ir na lista de workspaces e clicar nos 3 pontinhos do projeto e depois clicar em pin.
(isso evitará o worskpace ser deletado após 14 dias inativo)
-
Nota 3: Não use o gitpod para hospedar / manter o bot online, pois a mesma tem bastante limitações no plano gratuito (mais informações nesse link).
Heroku
Nota: A partir do dia 28/11/2022 a heroku não vai mais fornecer planos gratuitos (clique aqui para saber mais).
-
[ 1 ] - Preencha os dados que vão ser requisitados na próxima página.
Nota: Caso queira, no campo TOKEN você pode incluir token de mais bots para ter bots extras pra ativar o suporte a multi-voice incluindo mais tokens no value (separando com espaços).
-
[ 2 ] - Clique em deploy app e aguarde (o processo pode demorar entre 2-5 minutos).
-
[ 3 ] - Clique em Manage e depois vá em resources.
-
[ 4 ] - Desative o dyno web e ative o autoupdate (ou o quickfix, não ative os 2 ao mesmo tempo!) e aguarde o bot logar.
(no canto superior clique em more e em view logs para acompanhar os logs)
-
Nota: Caso queira alterar as configs usadas no passo 1, vá em settings e clique em Reveal Config Vars, crie/altere a key e o valor desejado da config, consulte o arquivo .example.env para ver todas as configs disponíveis.
Hospedando no seu próprio PC/VPS (windows/linux)
-
Python 3.8 ou superior:
Download pela Microsoft Store (Recomendável para usuários do windows 10/11).
Download direto do site oficial (Marque esta opção ao instalar: Add python to the PATH) -
Git (Não escolha a versão portable)
-
JDK 11 ou superior (Windows e Linux não é necessário instalar, ele é baixado automaticamente)
Nota: esta source requer no mínimo 512mb de RAM E 1Ghz de CPU para rodar normalmente (caso rode o Lavalink na mesma instância do bot considerando que o bot seja privado).
- Baixe esta source como zip e extraia em seguida (Ou use o comando abaixo no terminal/cmd e abra a pasta em seguida):
git clone https://github.com/zRitsu/disnake-LL-music-bot.git
- dê clique-duplo no arquivo setup.sh (ou apenas setup caso o seu windows não esteja exibindo extensões de arquivo) e aguarde.
Caso esteja usando linux use o comando no terminal:
bash setup.sh
- Vai aparecer um arquivo com nome .env, edite ele e coloque o token do bot no campo apropriado (você também pode editar outras coisas deste mesmo arquivo caso queira fazer ajustes específicos no bot).
Nota: Caso não tenha criado uma conta de bot,
veja este tutorialpara criar seu bot e obter o token necessário.
Também altamente recomendo usar mongodb, procure onde tem MONGO= no arquivo .env e nele coloque o link da sua db do mongodb (caso não tenha, veja como obter por este
tutorial).
- Agora basta apenas abrir o arquivo run.sh para iniciar o bot (caso esteja usando linux use o comando abaixo):
bash run.sh
- Para atualizar seu bot dê um clique duplo no update.sh (windows), p/ Linux use o comando no shell/terminal:
bash update.sh
Ao atualizar, há chance de qualquer alteração manual feita ser perdida (caso não seja um fork desta source)...
Obs: Caso esteja rodando a source diretamente de uma máquina com windows (e que tenha git instalado) apenas dê um duplo-click no arquivo update.sh
Nota: há mais alguns guias na wiki.
-
Esta source foi criada com intuito para ser usado em bots privados (não está otimizado o suficiente pra lidar com alta demanda de servidores).
-
Recomendo usar a source atual sem alterações no code. Caso queira fazer modificações (e principalmente adicionar novas funcionalidades) é altamente recomendável que tenha conhecimento em python e disnake. E caso queira manter sua source modificada com updates em dias usando a source base também recomendo ter conhecimento em git (pelo menos o necessário pra fazer um merge sem erros).
-
Não será fornecido suporte caso modifique a source atual (exceto para custom skins), pois atualizo ela com frequência e versões modificadas tendem a ficarem desatualizadas dificultando dar suporte por esse motivo (além de que dependendo da modificação ou implementação poder gerar erros desconhecidos que dificulta ao tentar resolver o problema e de eu exigir usar métodos pra atualizar o code que geralmente desfaz essas alterações).
-
Caso queira fazer algum vídeo/tutorial usando esta source, você está totalmente livre para usá-la pra essa finalidade desde que esteja de acordo com a licença.