aHub-Tech / Live-Divulgador

Divulgador de Twitch streams no Twitter
https://livedivulgador.herokuapp.com/
GNU General Public License v3.0
11 stars 3 forks source link

Bug: Filtrar streamers que atendam apenas as categorias divulgáveis #39

Closed vcwild closed 2 years ago

vcwild commented 2 years ago

Edit: inserido makers & crafting

Faltou o Makers & Crafting @vcwild

O que precisa ser feito?

ttiagojm commented 2 years ago

Faltou o Makers & Crafting @vcwild

O Podcast & Talk shows é divulgado com base na categoria do streamer. Se ele entrou para o banco como "art" então será divulgado no LiveDivulgador2, caso esteja como "code" é divulgado no LiveDivulgador.

Caso isso não seja prático de ser implementado na nova lógica do bot, removam a categoria Podcast & Talk shows e deixem as outras.

Aliás, esqueci-me de perguntar, a parte de o bot divulgar em 2 contas do Twitter (como estava a funcionar anteriormente) é possível ?

vcwild commented 2 years ago

A lógica do bot agora é bem mais simples, ele lida com todos os streamers que ele fizer a query de leitura. Se um dos streamers dessa seleção entra em live e é numa categoria válida ele vai divulgar. Ou seja, antes mesmo do bot iniciar a rotina ele já sabe quem ele precisa pesquisar.

A implementação é assim justamente pra simplificar a lógica de desenvolvimento, dessa forma conseguimos controlar o fluxo de execução e facilitar os testes (poucos ifs no corpo de funções = poucos efeitos colaterais possíveis).

Outra vantagem é que se formos criar novos bots (divulgador 3, 4, 5, etc.) com novas categorias, é só replicar a instância existente do bot livedivulgador e ajustar o filtro para essas novas categorias (tags, mensagens personalizadas, cliente de twitter diferente). Dessa forma temos uma arquitetura que escala horizontalmente (vários bots com regras de negócio diferentes > um bot sobrecarregado :wink: ).

Por enquanto a lógica inclui todos streamers da base porque só conseguimos testar uma instância do bot por vez.

vcwild commented 2 years ago

Há ainda mais uma ressalva, que é a possibilidade de criarmos um front-end onde as pessoas vão poder se cadastrar, aí esse front vai tentar se comunicar com a API do banco e vai adicionar esse novo streamer sem precisarmos fazer nada na mão.

Ainda estamos planejando esse front, então por enquanto não temos previsão.

ttiagojm commented 2 years ago

Ah, então caso fosse necessário divulgar para outra conta teriamos de usar 2 instâncias.

Fantástica essa ideia do front-end !

vcwild commented 2 years ago

Ah, então caso fosse necessário divulgar para outra conta teriamos de usar 2 instâncias.

Fantástica essa ideia do front-end !

Exato, a parte massa é que cada instância pode ter testes completamente isolados!!