Criando um Bot do Telegram Integrado ao Meu Blog

26/04/2025


Recentemente finalizei um projeto que integra meu blog diretamente ao Telegram, permitindo que os leitores acessem facilmente as categorias de artigos e vejam os posts mais recentes. Neste artigo, vou detalhar a ideia, a arquitetura utilizada e como foi o processo de implementação.

Objetivo

Criar um bot que ofereça uma experiência rápida e intuitiva para acessar os conteúdos do meu blog, utilizando apenas o Telegram como interface.

Tecnologias Utilizadas

  • Python 3.12
  • Flask para o servidor proxy local
  • MySQL como banco de dados
  • PHP para as APIs do blog
  • python-telegram-bot para comunicação com a API do Telegram
  • Requests para consumo de APIs
  • Hostinger como hospedagem do blog e banco de dados

Arquitetura Final

A arquitetura do projeto é composta pelos seguintes componentes:

Usuário (Telegram)
    ↓
Bot Telegram (Python)
    ↓
Servidor Flask Proxy (localhost)
    ↓
APIs PHP hospedadas (Hostinger)
    ↓
Banco de Dados MySQL

O servidor Flask age como um "proxy" para contornar restrições de acesso impostas pelo provedor de hospedagem (Hostinger).

Funcionamento

  • O usuário envia o comando /start no bot.
  • O bot consulta o proxy que, por sua vez, busca a lista de categorias no banco de dados.
  • As categorias são exibidas como opções de teclado no Telegram.
  • Ao selecionar uma categoria, o bot traz os posts relacionados.
  • Cada post é apresentado com o título e um link para leitura, utilizando o padrão:
https://blog.josedarci.com/post?url=<slug-do-post>
  • Após exibir os posts, o bot retorna ao menu de categorias.

Criação do Bot

  • Utilizei o BotFather para criar o bot no Telegram e obter o token de acesso.
  • Configurei variáveis de ambiente para manter segredos e credenciais seguras.
  • Implementei o proxy server com Flask para fazer a ponte entre o bot e o blog.
  • Programei os handlers do bot para interagir de forma assíncrona e responsiva.

Publicação do Código

O código completo está publicado no meu GitHub: https://github.com/josedarci/telegram-blog-bot

Melhorias Futuras

  • Hospedar o proxy server em um ambiente cloud (como Render.com) para operação 24/7.
  • Paginar os artigos quando uma categoria possuir muitos posts.
  • Adicionar imagens em miniatura junto com os títulos.
  • Melhorar a usabilidade com botões inline no lugar do teclado tradicional.

Autor: José Darci Rodrigues Junior

Blog: blog.josedarci.com

Espero que este projeto inspire outros desenvolvedores a integrarem seus conteúdos de forma simples e acessível através de plataformas populares como o Telegram.