Descrição
Um bot que cuida sozinho de um canal de ofertas no Telegram. A cada meia hora ele busca produtos na API de afiliados da Shopee, descarta os que não passam num corte de qualidade, pontua o resto e publica o melhor com foto e link rastreado. Um painel pequeno mostra quem entrou e saiu, os cliques por dia e as ofertas mais clicadas.
Funcionalidades
- Ofertas pontuadas por vendas, nota, desconto e comissão, cada critério normalizado contra o resto do lote
- Um corte antes de qualquer pontuação: nota 4,5 ou mais, pelo menos 100 vendidos, 15% de desconto e uma lista de palavras bloqueadas comparada por palavra inteira e sem acento
- Nenhum produto se repete em 14 dias, e dois posts seguidos nunca vêm da mesma categoria
- Um redirecionador de link curto que conta cliques e ignora os robôs de pré-visualização do Telegram, do WhatsApp e de outros apps
- Cole um link da Amazon, da Shopee ou do Mercado Livre e a loja é detectada e o link de afiliado conferido antes de publicar
- Um painel com membros, entradas e saídas, a curva de 30 dias e as cinco ofertas mais clicadas, nos temas claro e escuro
Desafios
- Assinar cada requisição à API GraphQL da Shopee com um SHA-256 de app id, timestamp, payload e segredo, e transformar em exceção de verdade os erros que voltam dentro do corpo da resposta
- Guardar um histórico de membros que o Telegram não guarda: uma foto diária da contagem mais um webhook que registra cada entrada e saída
- Escolher num catálogo de uns mil produtos sem publicar sempre o mesmo punhado
Aprendizados
- Que a pré-visualização de um link é uma requisição como qualquer outra, então um contador de cliques sem filtro de user-agent conta o app de chat antes de contar uma pessoa
- Que as vendas precisam de um log antes de normalizar, senão um produto com dez mil pedidos achata nota e desconto do lote inteiro
- Que conferir um deploy uma vez só, logo depois de subir, dá 502 num container saudável porque o proxy chega a ele alguns segundos depois; o script de deploy agora espera um 200