Os limites da Bot API
Tamanhos, arquivos, teclados e o que o módulo confere antes de o Telegram recusar.
Quase toda recusa do Telegram é um limite que se sabe de antemão. Conferir antes troca um 400 Bad Request genérico, que não diz qual campo estourou, por uma mensagem com o nome do campo.
| O quê | Limite | Quem confere |
|---|---|---|
| texto de mensagem | 4096 unidades UTF-16 | Tg.dividir |
| legenda de mídia | 1024 unidades UTF-16 | Tg.dividir(texto, 1024) |
dados de um botão | 64 bytes | Tg.botao — recusa na hora |
dados e url no mesmo botão | não pode | Tg.botao — recusa na hora |
| arquivo enviado pelo bot | 50 MB | o Telegram |
| arquivo baixado pelo bot | 20 MB | o Telegram |
| comandos no menu | 100, de até 32 caracteres | app.publicar_comandos |
dataforge
adopt Arcane.Telegram as Tg
monitor:
Tg.botao("Ver", dados := "detalhe:" + "ç" * 40)
handle Error as e:
assert e.message.contains("64 bytes") // quarenta 'ç' são 80 bytes