Bot do telegram, com foco de ser leve e um agente de lembretes. Crie sua conta nele para que ele consiga salvar suas informações!
link telegram:
| Variável | Descrição |
|---|---|
TELEGRAM_BOT_TOKEN |
Token do BotFather |
GEMINI_API_KEY |
Chave da API do Google Gemini |
MYSQL_HOST |
Host do MySQL (normalmente localhost) |
MYSQL_USER |
Usuário do MySQL |
MYSQL_PASSWORD |
Senha do MySQL |
MYSQL_DATABASE |
Nome do banco (telia_db) |
- Usuário inicia o bot → recebe link do GitHub e instruções
/cadastrar→ bot envia o formulário para copiar- Usuário cola:
E-mail: x/Senha: y→ conta criada com senha criptografada (bcrypt) /login→ entra na conta- A partir daí, mensagens livres são processadas pela IA e viram lembretes
O modo IFFar pode usar automação com Playwright para reservar o almoço do RU de forma programada.
Fluxo resumido:
- O usuário escolhe o modo IFFar no
/modo. - A TELia salva as credenciais e preferências ligadas ao usuário logado.
- Um job agendado chama o Playwright no servidor.
- O Playwright abre o portal do RU, faz login e tenta executar a reserva.
- Se der certo, a TELia avisa o usuário no Telegram e pode guardar o comprovante ou status da execução.
Observações:
- O pacote
playwrightprecisa ser instalado viapip. - Os navegadores do Playwright também precisam ser instalados no servidor com
playwright install chromium. - Se o portal do IFFar usar captcha, bloqueio forte ou fluxo muito diferente, a automação pode quebrar e exigir ajuste.
TELia/
├── .env # (NÃO VAI PRO GITHUB) Suas senhas e tokens
├── .gitignore # Diz ao Git o que ignorar (como o .env e o banco de dados)
├── requirements.txt # Lista de bibliotecas (python-telegram-bot, apscheduler, etc)
├── README.md # Instruções de como rodar o seu bot
├── main.py # O arquivo principal que dá a partida no motor
│
├── database/ # Tudo relacionado ao MySQL
│ ├── connection.py # Cria o banco e as tabelas
│ └── queries.py # Funções para salvar e buscar usuários e lembretes
│
├── bot/ # Comunicação direta com o Telegram
│ ├── commands.py # Comandos: /start, /help, /cadastrar, /login
│ └── messages.py # Recebe textos, barreira de login, chama a IA
│
├── ai/ # O "Cérebro"
│ └── gemini.py # Conexão com a API da IA e o Prompt de extração
│
└── scheduler/ # O "Relógio"
└── jobs.py # Verifica lembretes pendentes a cada 30s