O Hermes no Telegram
Ficha e sumário do guia
- Ambiente
- VPS Ubuntu com o Hermes instalado
- Referência técnica
- v0.23.1
- Conferência
- Conferido na documentação
Prepare o ambiente
Antes de começar, você precisa de:
- Gateway do Hermes instalado como serviço
- Aplicativo do Telegram no celular ou no computador
O Hermes conversa no Telegram por um bot próprio, criado no @BotFather e ligado
ao gateway pelo token que o BotFather entrega. O token fica na variável
TELEGRAM_BOT_TOKEN, no .env do profile. Qualquer pessoa com esse valor
controla o bot, por isso ele fica fora de repositório, captura de tela e
mensagem.
O gateway recusa por padrão as mensagens de usuários desconhecidos. A
liberação usa o ID numérico de cada pessoa, listado na variável
TELEGRAM_ALLOWED_USERS. Esse ID é um número, diferente do nome de usuário do
Telegram, que bots como o @userinfobot informam quando recebem uma mensagem.
Crie o bot no BotFather
No Telegram, abra a conversa com o @BotFather e envie /newbot. O BotFather
solicita um nome de exibição e, depois, um nome de usuário único terminado em
bot. Em seguida, ele responde com o token do bot, no formato
123456789:ABCdef....
Copie o token direto para o assistente de configuração, no próximo passo, sem
colar o valor em outra conversa. Caso o token vaze, o comando /revoke do
BotFather invalida o valor antigo e gera um novo.
Descubra o seu ID numérico
No Telegram, mande qualquer mensagem para o @userinfobot. Ele responde com o
seu ID, um número como 123456789. Anote esse número para o passo seguinte.
Cada pessoa que vai conversar com o bot precisa informar o próprio ID.
Ligue o bot ao gateway
Na VPS, com o usuário hermes, rode o assistente do gateway e escolha
Telegram:
hermes gateway setupO assistente recebe o token do bot e os IDs liberados. Ele grava os valores em
TELEGRAM_BOT_TOKEN e TELEGRAM_ALLOWED_USERS, no .env do profile.
Para liberar mais de um ID, separe os números por vírgula. Depois, reinicie o
serviço com hermes gateway restart.
Mande uma mensagem para o bot no Telegram. A resposta confirma que o gateway,
o modelo e a lista de acesso estão certos. Sem resposta, acompanhe os registros
com journalctl --user -u hermes-gateway -f enquanto envia outra mensagem.
Use o bot num grupo
Num grupo, o modo de privacidade do Telegram vem ligado e o bot só enxerga
comandos com /, respostas às mensagens dele e avisos do sistema. Para o bot
ler as mensagens comuns, desligue a opção no @BotFather, em /mybots, no bot,
em Bot Settings e Group Privacy. Em seguida, remova o bot do grupo e adicione
de novo, porque a mudança só vale depois disso.
A variável TELEGRAM_GROUP_ALLOWED_CHATS libera grupos inteiros pelo ID, um
número negativo. A opção telegram.require_mention: true faz o bot ignorar a
conversa do grupo e responder só quando é mencionado, quando alguém responde a
uma mensagem dele ou quando a mensagem casa com um padrão de
telegram.mention_patterns.
Confira o resultado
Uma mensagem enviada ao bot no Telegram recebe resposta do agente.
Continue na comunidade
Leve ao Discord da Promovaweb o bot que não responde ou a ferramenta que falhou no Hermes. O log do gateway e a versão instalada ajudam a comunidade a discutir o problema da sua VPS.
