Ferramentas para desenvolvedores são pequenos bots do Telegram que você abre enquanto cria e mantém o seu: registrar um bot, achar IDs de usuários e chats para chamadas à API, ver os dados brutos de uma mensagem, checar uma URL ou um domínio.
| # | Bot | Preço | Idiomas | Inline | Grupos | Pontuação |
|---|---|---|---|---|---|---|
| 1 | @BotFather | Grátis | EN | não | não | 93 |
| 2 | @userinfobot | Grátis | EN | não | sim | 80 |
| 3 | @GetIDsBot | Grátis | EN · RU · DE · MULTI | sim | sim | 79 |
| 4 | @DropMailBot | Grátis | MULTI | não | não | 77 |
| 5 | @httpstatusbot | Grátis | EN | não | não | 76 |
| 6 | @RawDataBot | Grátis | EN | não | sim | 76 |
| 7 | @calcubot | Grátis | MULTI | não | sim | 71 |
| 8 | @smsActivateruBot | Pago | EN · RU | não | não | 71 |
| 9 | @JsonBot | Grátis | EN | não | não | 70 |
| 10 | @WhoisBot | Grátis | EN | sim | não | 69 |
A classificação se apoia no que cada bot comprovadamente faz, não num teste roteirizado. Confirmamos cada bot na página do t.me e procuramos uma fonte que o descreva: um repositório aberto, o canal do desenvolvedor, o registro de comandos e respostas num catálogo. Lemos o código e as traduções do GetIDs, rastreamos o User Info até o projeto original de código aberto e anotamos que o bot mudou de dono. Quatro bots descritos só pelo nome, um formatador de JSON, um conversor Base64, um gerador de UUID e um de senhas, saíram porque nada confirmava o que fazem.
Todo bot é registrado no BotFather (@BotFather): /newbot entrega o token, e no mesmo chat você define o menu de comandos, o modo inline, a privacidade em grupos e a descrição do bot. Trate o token como senha. Se vazar, revogue-o no BotFather: o token antigo para de funcionar na hora e você recebe um novo.
A Bot API se refere a usuários, grupos e canais por IDs numéricos, que os apps do Telegram não mostram. Encaminhe uma mensagem ao User Info (@userinfobot) ou ao GetIDs Bot (@GetIDsBot) para ver o ID do remetente; o GetIDs mostra também o chat de origem, dados de mídia e, com /json, a mensagem como JSON da Bot API. O Telegram Bot Raw (@RawDataBot) e o JsonBOT (@JsonBot) exibem os dados brutos de tudo o que você envia ou encaminha. Dois limites valem para todos: se o remetente esconde a conta em mensagens encaminhadas, nenhum bot vê o ID, e tudo o que você encaminha é processado no servidor do dono do bot, então use mensagens de teste, não conversas privadas.
A maioria desses bots é projeto de uma pessoa só. O código do GetIDs Bot é aberto, mas os autores dizem que ele não é mais desenvolvido ativamente; o User Info começou como projeto de código aberto e hoje a descrição cita uma empresa de mídia; o canal do Markdown Bot sumiu. Nada disso os torna inúteis, mas é um bom motivo para não entregar tokens, senhas e dados de clientes a um bot que você não controla.
Encaminhe uma mensagem da pessoa ao User Info (@userinfobot) ou ao GetIDs Bot (@GetIDsBot). Se a privacidade dela esconde a conta em mensagens encaminhadas, o encaminhamento só leva o nome e nenhum bot mostra o ID.
Encaminhe um post do canal ao GetIDs Bot (@GetIDsBot), que mostra o chat de origem com o ID. IDs de canais e supergrupos na Bot API começam com -100.
Encaminhe ao Telegram Bot Raw (@RawDataBot) ou responda com /json no seu chat com o GetIDs Bot (@GetIDsBot).
Abra o @BotFather, escolha o bot e revogue o token. O antigo para de funcionar na hora; coloque o novo na configuração do servidor.