O menu no Telegram Bot é um conjunto de botões que podem redirecionar os usuários para outros menus com botões, Enviar diferentes tipos de conteúdo (por exemplo, texto, imagens, vídeos ou adesivos) ou direcioná-los para links — tanto dentro do bot (por exemplo, usando tags UTM) quanto externos (para canais, bate-papos ou sites).

Configuração básica do menu
Configurações do menu principal.

A captura de tela mostra onde o controle está localizado menu principal(aplica-se a todo o seu bot, a menos que você adicionar configurações sutis especiais, mas sobre isso abaixo) para o seu bot.
À direita está a configuração do controle menu principal. No nosso caso, é a criação de botões para o nosso menu e a gestão da colocação de botões. Até agora tudo parece fácil? - Continuar.
Gestão do menu.
Este bloco é uma informação de nível médio e aqui você terá que pensar um pouco, mas novamente nada super pesado.
Ao clicar no botão - "controle" veremos 2 botões
Modo de operação do menu e excluir menu. Se tudo estiver claro com o último, então o modo de operação do menu é um tópico muito importante, vamos analisá-lo abaixo.

Se clicarmos em MODO DE OPERAÇÃO DO MENU vamos ver 3 modos

- Menu da mensagem (inline) - está perto da mensagem e tem uma aparência translúcida. Para funcionar corretamente, um evento deve ser criado - [TELEGRAM] Evento pressionando o botão embutido. Sem este evento, os cliques nos botões serão ignorados pelo bot.
Onde configurar o evento de pressionar o botão embutido? - no menu de eventos à esquerda no menu de navegação.(ver Tela)

Enviar uma mensagem de cada vez-cada vez que você clica no botão inline, um novo bate-papo no bot é enviado.
Editar mensagem - o chat do bot atualiza a mensagem sem enviar um novo Chat no bot.
- Menu estático (Reply) - na parte inferior do diálogo com o bot. Ao clicar nos botões, novas mensagens são enviadas. - é um conjunto de botões que aparece em vez do teclado do Usuário. Esses botões enviam mensagens predefinidas para o bot, como se o Usuário as digitasse manualmente. Eles são convenientes para escolher as opções de resposta.
O menu estático tem suas próprias configurações por exemplo, escondê-lo depois de clicar ou tornar os botões em seu bot um pouco menores(veja a captura de tela). Esta configuração está em "Gestão"

- Excluir um menu estático (delete reply) - remove o menu do bate-papo onde o diálogo com o bot está em andamento. Como o menu estático tem a característica de ser salvo na caixa de diálogo até que seja excluído automaticamente.
Exemplos de menu:
Menu estático (Reply) e) menu de mensagem (inline)

Adicionando multilingualidade ao Telegram bot.
O bloco mais difícil de entender e implementar, aqui você terá que pensar cuidadosamente e ler repetidamente este parágrafo do artigo para implementar suas idéias em seu bot, começaremos com a definição de multilinguismo.
O recurso multilíngue no Telegram bot permite que os usuários escolham um idioma de interface amigável, tornando o bot mais acessível e conveniente para diferentes públicos. A implementação inclui a definição do idioma, o armazenamento de traduções e a saída de mensagens no idioma desejado.
Vamos descobrir como fazer isso.

- Para começar, você precisa liberar o componente multilíngue à esquerda no menu de navegação. Selecione os idiomas de seu interesse e adicione-os.
- Em seguida, liberamos o menu, no meu caso, será no botão livre do perfil e criando um evento para que o nosso botão possa configurar um evento especial no futuro (na guia "Eventos" na navegação)

- O próximo passo é lançar um script para nossos menus e, em seguida, precisamos decidir qual menu será inline ou reply, vamos fazer um exemplo para os dois de uma só vez, para que possa ser visto claramente. Vamos fazer um menu multilíngue com o exemplo de um bot https://t.me/MULTI_LANGUAGE_BOT_MARKTE_BOT
- Nós criamos um script para alterar o idioma, um exemplo na foto abaixo.
O primeiro exemplo é para um menu de script embutido ou uma mensagem livre

O segundo exemplo para um menu estático.

- Botões para alterar o idioma para o russo ou Inglês que fazemos com o evento multilingue. (veja a imagem abaixo), este item é o mesmo, para reply e inline menus

- Configurações gerais de multilinguismo para menus reply e inline.
Depois de criar um evento no script (veja o ponto b) você deve ter um evento com o mesmo nome (na aba "eventos" na navegação)
Exemplo do que parece:

Em seguida, configuramos as ações para esse evento, ou seja, conectamos o script (item d) com esse evento e o salvamos.
- Uma vez que temos menus que usam ações multilíngues para nossos eventos e incluindo botões no bot também deve ser traduzido, para isso temos que nosso componente multilíngue ajusta corretamente as traduções de nossos botões, não pode confiar totalmente em nosso tradutor automático e, portanto, é melhor corrigir as traduções manualmente

- Uma vez que você tenha certeza de que a tradução está correta, voltamos aos eventos e voltamos para onde paramos.
- Vá para a guia 'Editar' em nosso evento (item e) e digite palavras traduzidas de outro idioma separadas por vírgulas, mantendo os sinais e atributos que definimos em nosso botão no script, assim fazemos onde queremos ver a tradução para outro idioma.
No nosso caso, é russo, então a tradução do botão também será russa, separada por vírgulas na guia ‘alterar” manutenção dos atributos.

- Adicione uma notificação sobre a mudança de idioma para o usuário. Para que não tenhamos um carregamento infinito ao mudar de idioma em nosso bot, criamos um evento especial que atuará como um alerta para mudar para outro idioma, como fazer isso? Veja abaixo.
Criamos um script arbitrário com seu próprio texto e vamos para a nossa guia de eventos "favoritos", em seguida, criamos um script multilíngue e anexamos nosso script recém-criado.

Pronto você completou a configuração do menu multilíngue.
- O que era suposto acontecer? Vamos mostrar isso no exemplo de um bot https://t.me/MULTI_LANGUAGE_BOT_MARKTE_BOT
Exemplo reply menu:

Exemplo de menu Inline:

Erros frequentes no menu.
- Por que não funciona menu principal mensagem?

Vamos analisar o problema no script / start
Digamos que você criou um menu principal e decidiu criar um menu para outro script ou mensagem livre, mas depois mudou de idéia e excluiu os botões, mas não excluiu o menu em si, então seu bot terá um erro na forma de um vazio em vez de um menu - nesse script ou botão livre no bot.
- Erro de trigger (eventos) menu em linha
Os botões inline podem parar de funcionar se o trigger (evento) for configurado com erro ou excluído (veja a captura de tela)

- Para que os botões inline funcionem novamente no menu, adicione este evento (você pode não estar vinculado a uma ação)
Conclusão
Vamos resumir na configuração do menu no bot do Telegram
Configuração do menu no Telegram bot um passo importante para melhorar a experiência do Usuário. Organizados adequadamente tornam a interação com o bot mais conveniente, clara e rápida, permitindo que os usuários encontrem facilmente os recursos e comandos desejados.