Bot do Telegram que retorna informações meteorológicas em tempo real usando a API do OpenWeather.
Este projeto implementa um chatbot no Telegram utilizando N8N para automação de workflow. O bot recebe o nome de uma cidade e retorna a temperatura atual em graus Celsius (°C), com mensagens amigáveis em português.
- 🌤️ Consulta de temperatura em tempo real
- 🌍 Suporte a cidades brasileiras e internacionais
- 🇧🇷 Mensagens em português
- ✅ Validação de entrada e tratamento de erros
- 📱 Interface via Telegram
- N8N: Plataforma de automação de workflows
- Telegram Bot API: Interface de comunicação com usuários
- OpenWeather API: Dados meteorológicos em tempo real
Antes de começar, você precisará:
-
N8N instalado e rodando
- Pode ser self-hosted ou na nuvem
- Acesso ao painel administrativo
-
Bot do Telegram criado
- Token do bot via @BotFather
-
Chave da API OpenWeather
- Conta gratuita em OpenWeather
- API Key gerada
- Abra o Telegram e procure por
@BotFather - Envie o comando
/newbot - Escolha um nome para seu bot (ex.: "Clima Bot")
- Escolha um username único (ex.: "MeuClimaBot")
- Copie e guarde o token fornecido (formato:
123456789:ABCdefGHIjklMNOpqrsTUVwxyz)
- Acesse OpenWeather
- Crie uma conta gratuita
- Vá em "API keys" no seu perfil
- Copie a chave padrão ou crie uma nova
- Guarde a API Key (formato:
c960954fba928ba8167047ccc03766ae)
- Acesse seu painel do N8N
- Clique no menu (☰) no canto superior esquerdo
- Selecione "Import from File" ou "Import Workflow"
- Escolha o arquivo JSON do workflow fornecido
- Clique em "Import"
- No workflow importado, clique no nó "Telegram Trigger"
- Na seção Credentials, clique em "Create New Credential"
- Preencha os dados:
- Credential Name:
Telegram account(ou nome de sua preferência) - Access Token: Cole o token do seu bot do Telegram
- Credential Name:
- Clique em "Save"
- Repita o processo para os nós:
- "Send a text message"
- "Send a text message1"
- No workflow, clique no nó "HTTP Request"
- Localize o parâmetro
appidna seção Query Parameters - Substitua o valor pela sua OPENWEATHER_API_KEY
- Clique em "Save" ou "Execute Workflow" para salvar as alterações
- No topo da tela do workflow, certifique-se de que o toggle "Active" está ligado (verde)
- Verifique se todos os nós estão conectados corretamente
- O workflow agora está pronto para receber mensagens!
Abra o Telegram e envie mensagens para o seu bot:
Você: São Paulo,SP
Bot: 🌤️ A temperatura em São Paulo é de 23°C.
Você: Rio de Janeiro,RJ
Bot: 🌤️ A temperatura em Rio de Janeiro é de 28°C.
Você: London,UK
Bot: 🌤️ A temperatura em London é de 15°C.
Você: Cidade Inexistente
Bot: ❌ Cidade não encontrada. Use o formato Cidade,UF (ex.: São Paulo,SP).
Você: xyzabc
Bot: ❌ Cidade não encontrada. Use o formato Cidade,UF (ex.: São Paulo,SP).
- Cidades brasileiras:
Cidade,UF(ex.:Curitiba,PR) - Cidades internacionais:
Cidade,País(ex.:Paris,FR) - Apenas cidade:
Cidade(pode funcionar para cidades grandes)
| Variável | Descrição |
|---|---|
TELEGRAM_BOT_TOKEN |
Token do bot do Telegram |
OPENWEATHER_API_KEY |
Chave da API OpenWeather |