Criando um Bot usando a API do Telegram Bot

(Nesta parte, devemos criar o nosso primeiro Bot Telegram simples e usar a linguagem de programação Go para acessá-lo também)

Preâmbulo

Telegram é um aplicativo de mensagens que é super rápido, simples, seguro e gratuito.

Primeiro, instalei o aplicativo Telegram no meu telefone Android. Eu também instalei seu aplicativo nativo no meu desktop Windows 7 Professional.

O Telegram possui uma API aberta e um protocolo gratuito para todos. Com esta API podemos construir nossas próprias ferramentas.

Objetivo

Para criar um botão simples (chamado SMTFirstBot ) usando sua API aberta.

O que é um Bot?

Os Bots são aplicativos de terceiros que são executados dentro do Telegram. Os usuários podem interagir com bots, enviando mensagens, comandos e solicitações em linha. Você controla seus bots usando solicitações HTTPS para sua API bot . Telegram bots são contas especiais que não requerem um número de telefone adicional para configurar. Os usuários podem interagir com bots.

Como faço para criar um bot?

Há um … bot para isso.

Basta falar com @ BotFather e seguir alguns passos simples.

Ele abriu uma janela separada no meu aplicativo nativo do Telegram.

Em seguida, digitei:

 Você: / newbot 
BotFather: tudo bem, um novo bot. Como vamos chamá-lo? Escolha um nome para o seu bot. Deve terminar em 'bot'. Assim, por exemplo: TetrisBot ou tetris_bot.
Você: SMTFirstBot
BotFather: Feito! Parabéns pelo seu novo bot. Você vai encontrá-lo em telegram.me/SMTFirstBot. Agora você pode adicionar uma descrição, sobre a seção e foto de perfil para o seu bot, veja / ajuda para uma lista de comandos. Por sinal, quando você terminar de criar seu botão legal, faça um ping no nosso Suporte de Bot se desejar um nome de usuário melhor para ele. Certifique-se de que o bot esteja totalmente operacional antes de fazer isso.
 Use este token para acessar a API HTTP: 
2764xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

Uma vez que você criou um bot e recebeu seu token de autorização, vá até o manual da API do Bot para ver o que você pode ensinar o seu bot a fazer. O Bot API é uma interface baseada em HTTP criada para desenvolvedores interessados ​​em construir bots para Telegram.

Alterando a descrição do SMTFirstBot

 Você: / setdescription 
BotFather: Escolha um bot para alterar a descrição.
Você: @SMTFirstBot
BotFather: OK. Envie-me a nova descrição para o bot. As pessoas verão essa descrição quando abrem uma conversa com o seu bot, em um bloco intitulado "O que esse bot pode fazer?".
Você: Este é um simples e meu primeiro BOT.
BotFather: sucesso! Descrição atualizada.

Alterando a seção Sobre do SMTFirstBot

 Você: / setabouttext 
BotFather: Escolha um bot para mudar a seção about.
Você: @SMTFirstBot
BotFather: OK. Envie-me o novo texto "Sobre". As pessoas verão este texto na página de perfil do bot e serão enviadas junto com um link para o seu bot quando o compartilharem com alguém.
Você: Meu primeiro Telegram Bot.
BotFather: sucesso! Sobre a seção atualizada.

Alterando a foto de perfil do SMTFirstBot

 Você: / setuserpic 
BotFather: escolha um bot para mudar a foto de perfil.
Você: @SMTFirstBot
BotFather: OK. Envie-me a nova foto de perfil para o bot.
Sua foto ]
BotFather: sucesso! Foto de perfil atualizada.

Alterando a privacidade do SMTFirstBot

 Você: / settingprivacy 
BotFather: escolha um bot para alterar as configurações das mensagens do grupo.
Você: @SMTFirstBot
BotFather: 'Habilitar' - seu bot só receberá mensagens que começam com o símbolo '/' ou mencione o bot pelo nome de usuário.
'Desativar' - seu bot receberá todas as mensagens que as pessoas enviam para grupos.
O status atual é: ENABLED
Você: Desativar
BotFather: sucesso! O novo status é: DESATIVADO.

Autorizando seu bot

Cada bot recebe um token de autenticação exclusivo quando foi criado. O token parece algo como 123456: ABC-DEF1234ghIkl-zyx57W2v1u123ew11, mas eles simplesmente usam <token> em seu manual.

Falando com seu bot

Uma vez que você cria um bot e obteve o token, você pode começar a interagir com o seu bot.

Fazendo pedidos

Todas as consultas para a API do Telegram Bot devem ser exibidas através de HTTPS e precisam ser apresentadas neste formulário: https://api.telegram.org/bot<token>/METHOD_NAME. Assim, por exemplo:

 https://api.telegram.org/bot123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11/getMe 

Eles suportam os métodos GET e POST HTTP. Eles também suportam quatro maneiras de passar parâmetros em pedidos de API Bot:

  • Cadeia de consulta de URL
  • aplicação / x-www-form-urlen codificado
  • application / json (exceto para carregar arquivos)
  • multipart / form-data (use para carregar arquivos)

A resposta contém um objeto JSON, que sempre tem um campo booleano 'ok' e pode ter um campo de String opcional 'descrição' com uma descrição legível por humanos do resultado. Se 'ok' for igual a verdadeiro, a solicitação foi bem-sucedida e o resultado da consulta pode ser encontrado no campo 'resultado'. No caso de uma solicitação mal sucedida, 'ok' é igual a falso e o erro é explicado na 'descrição'. O campo 'erro_code' de um Inteiro também é retornado, mas seu conteúdo está sujeito a alterações no futuro.

  • Todos os métodos na API Bot são sensíveis a maiúsculas e minúsculas.
  • Todas as consultas devem ser feitas usando UTF-8.

Você pode ver uma lista de nomes de métodos na documentação oficial do api .

método GetMe

Digamos que queremos recuperar informações básicas sobre o bot recém criado, precisamos usar o método getMe .

 https://api.telegram.org/bot123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11/getMe 

A resposta que recebi foi:

 {"ok": true, "result": {"id": 276401636, "first_name": "SMTFirst", "nome de usuário": "SMTFirstBot"}} 

método GetUpdates

Existem duas formas mutuamente exclusivas de receber atualizações para o seu bot – o método getUpdates (que devemos usar abaixo) e Webhooks (devemos usar em um artigo diferente) no outro. As atualizações recebidas são armazenadas no servidor até que o bot as receba de qualquer maneira, mas elas não serão mantidas por mais de 24 horas.

Se precisarmos do chat_id de uma pessoa que envia uma mensagem para o nosso bot, use o método getUpdates .

 https://api.telegram.org/bot 123456: ABC-DEF1234ghIkl-zyx57W2v1u123ew11 / getUpdates 

A resposta que recebi foi:

 {"ok": true, "result": [{"update_id": 839499903, 
"mensagem": {"message_id": 12, "de": {"id": 246367260, "primeiro nome": "Satish", "último nome": "Talim", "nome de usuário": "IndianGuru"}, "chat" : {"id": 246367260, "primeiro nome": "Satish", "último nome": "Talim", "nome de usuário": "IndianGuru", "tipo": "privado"}, "data": 1473914771, "texto" : "Olá SMTFirstBot"}}]}

Como você pode ver o meu chat_id é 246367260

método sendMessage

Use o método sendMessage para enviar mensagens de texto do Bot para o usuário usando o seu chat_id.

 https://api.telegram.org/bot 123456: ABC-DEF1234ghIkl-zyx57W2v1u123ew11 / sendMessage? chat_id = 246367260 & text = "Olá do SMTFirstBot " 

A resposta que recebi foi:

 {"ok": true, "result": {"message_id": 13, "from": {"id": 276401636, "first_name": "SMTFirst", "username": "SMTFirstBot"}, "chat": {"id": 246367260, "primeiro nome": "Satish", "último nome": "Talim", "nome de usuário": "IndianGuru", "tipo": "privado"}, "data": 1473915564, "texto": "" Olá de SMTFirstBot  ""}} 

Aqui está o código Go para obter um chat_id e, em seguida, enviar uma mensagem para este chat_id de MyFirstBot.

Programe myfirstbot.go

myfirstbot.go

É isso aí. Diverta-se.

Um pensamento em “Criando um Bot usando a API do Telegram Bot”

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *