Bot de transmissão ao vivo do Twitch que pode controlar cores para sobreposições de Stream Elements, reproduzir efeitos sonoros, lidar com recompensas personalizadas (como conversão de texto em fala) e muito mais!
Este chatbot foi construído com ? ao vivo em transmissão com a comunidade de programação. Venha e saia conosco no Twitch!
https://twitch.tv/clarkio
Clonar com: git clone [email protected]:clarkio/ttv-chat-bot.git
Ir para o projeto: cd ttv-chat-bot
Instale dependências de nó: npm install
Se estiver ativado:
Execução Debian/Ubuntu : sudo apt install mpg123
Instalação do Windows : cmdmp3
MacOS você já deve ter o afplay disponível
Faça login em https://twitch.tv
Vá para https://twitchapps.com/tmi/
Clique em "Conectar com Twitch"
Clique em "Autorizar"
Copie o valor do token (começa com "oauth:")
Renomeie o arquivo .env-example
para .env
Atualize TTV_CLIENT_TOKEN
com o valor do token que você copiou antes na etapa 4.c
Atualize TTV_CLIENT_USERNAME
para o nome de usuário do seu cliente (o padrão é "clarkio")
Para cada sobreposição em streamelements (também conhecidos como cenas), copie a URL da cena e adicione-a ao arquivo .env
como uma nova variável de ambiente para cada uma.
Exemplo: mainScene=https://streamelements.com/overlay/abc/123
Obtenha Streamelements JWT de sua conta e atualize STREAMELEMENTS_JWT
em seu arquivo .env
.
Certifique-se de ter concluído todas as etapas da seção "Primeiros passos" antes de tentar executar o aplicativo.
(@roberttables) Defina OBS_SOCKETS_SERVER=host.docker.internal:
(@parithon) Nota Este nome DNS (host.docker.internal) parece funcionar apenas no Docker Desktop para Mac/Windows e não em ambientes de produção nem em outros ambientes Linux (Ubuntu)
(@roberttables) Nesse caso, você pode usar a substituição através da ponte docker0 que existe em ambientes Linux
Mude para o diretório do projeto ttv-chat-bot
se ainda não o fez.
Execute npm start
Abra seu navegador e vá para http://localhost:1337/scenes?sceneName=
Exemplo: http://localhost:1337/scenes?sceneName=mainScene
Vá para a visualização do depurador e confirme se o depurador está configurado para "Server Start"
Pressione o botão "Iniciar depuração" (o botão verde de reprodução)
Abra seu navegador e vá para http://localhost:1337/scenes?sceneName=
Exemplo: http://localhost:1337/scenes?sceneName=mainScene
Certifique-se de ter concluído todas as etapas nas seções "Primeiros passos" e "Executar o aplicativo" antes de tentar experimentar o aplicativo.
Abra uma nova guia ou janela do navegador e navegue até o chat do canal Twitch que deseja usar (o padrão é "clarkio" no arquivo .env
em TTV_CHANNELS
)
Exemplo: https://www.twitch.tv/popout/clarkio/chat
Se desejar que o cliente se conecte a outro canal, você pode adicioná-lo à variável de ambiente
TTV_CHANNELS
. A variável é delimitada por vírgulas para que você possa tê-la como clarkio,"nome do seu canal" para conectar-se a vários canais
Digite a seguinte mensagem de bate-papo "!bulb go green" e você deverá ver sua sobreposição mudar de cor em sua outra guia/janela que carregou http://localhost:1337/scenes?sceneName=mainScene
AVISO: a implementação atualmente é baseada em uma sobreposição azul por padrão e alterará a tonalidade dela. Se a cor padrão da sobreposição for diferente, ela não mudará exatamente para a cor que você pretende. Estamos trabalhando para melhorar isso para oferecer suporte a diferentes cores de sobreposição padrão.
Quer contribuir? Confira nosso Código de Conduta e documentos de contribuição. Este projeto segue a especificação de todos os contribuidores. Contribuições de qualquer tipo são bem-vindas!
Os agradecimentos vão para essas pessoas maravilhosas (chave emoji):
sockelo
francês
calças altas
wwsean08
l2ival
ikoakmaindehoas
codefobia
modelador
TheMartesLive
eeevans
O Michael Jolley
@jaredpsimpson
Os agradecimentos vão para essas pessoas maravilhosas (chave emoji):
Jake Nylund | Michael Jolley | Códigos Codeman | Jared Pimpson | Eduardo Evans | Nicolau Março | PatPat1567 ? |
Timmy Kokke | Michael du Bois | Benjamim Lannon | Jason Allan | Chris Gargotta ? | Wingysam ? | LuckyNoS7evin |
Sean Smith |
Este projeto segue a especificação de todos os contribuidores. Contribuições de qualquer tipo são bem-vindas!