Como enviar mensagens usando uma conta Telegram Business
tg_send_message(platform_id, text, client_message_id, reply_markup, parse_mode, disable_web_page_preview, protect_content, disable_notification, message_thread_id, entities)
Parâmetros:
| Parâmetro | Descrição |
|---|---|
| **!** platform_id | ID do usuário do Telegram para o qual a mensagem deve ser enviada * |
| **!** text | Texto da mensagem |
| client_message_id | ID da mensagem a ser citada |
| reply_markup | Configurações dos botões ** |
| parse_mode | Formatação de texto em negrito e itálico na descrição ***. Pode ter valores como html, markdown, markdownV2. |
| disable_web_page_preview | Mostrar pré-visualização do link. Para desativar, passe 1; caso contrário, passe 0 ou deixe vazio "". |
| protect_content | Flag de proteção de conteúdo. Passe qualquer valor exceto 0, False ou '' para ativar. |
| disable_notification | Flag de notificação sonora (padrão: 0). Passe 1 para desativar a notificação, 0 para ativá-la. |
| message_thread_id | ID do tópico (disponível para supergrupos com funcionalidade de fórum ativada) |
| entities | Isso permite copiar texto pré-formatado junto com todos os seus estilos e simplesmente especificar o intervalo de caracteres onde uma determinada fonte deve ser aplicada. Um exemplo pode ser encontrado no tg_request no campo correspondente. O parâmetro deve ser um dicionário. Consulte a aba de exemplo para referência. |
**Exemplo detalhado**
Vamos considerar um exemplo simples com um conjunto de parâmetros obrigatórios:

O platform_id especifica o identificador de um cliente específico.
Veja o mesmo exemplo, mas usando variáveis:

Neste exemplo, a variável soob conterá a resposta do servidor após o envio da mensagem.

Se você salvar o message_id da resposta recebida, isso permitirá que você trabalhe posteriormente com esta mensagem (editar, excluir, encaminhar, comentar).
Muitas vezes surgem dificuldades ao usar todos os parâmetros. Vamos considerar o seguinte exemplo:
-
Primeiro, declare todos os parâmetros usados na função. Lembre-se, os parâmetros podem ser passados não apenas como valores, mas também como variáveis, o que geralmente é mais conveniente e claro. Variáveis como platform_id e client_message_id podem ser obtidas no cartão de perfil do cliente.
platform_id — ID do cliente do Telegram para o qual a mensagem deve ser enviada *\ >Responderemos no mesmo chat onde o cliente escrevetext - texto da mensagem. \ >Usamos formatação de texto - por exemplo, destaque em negrito.
client_message_id - ID da mensagem a ser citada\ >Em chats, esta variável recebe seu valor automaticamente.
reply_markup — configurações dos botões **. \ >Vamos atribuí-la à variável opts.
parse_mode — Formatação de texto em negrito e itálico na descrição ***. Pode ter valores como html, markdown, markdownV2. Os caracteres usados para formatar o texto da mensagem estão descritos aqui. \ >Vamos usar markdown.
disable_web_page_preview - Mostrar pré-visualização do link. Para desativar, passe 1; caso contrário, passe 0 ou deixe vazio "".\ >Podemos passar qualquer valor, pois o texto da mensagem não contém um link.
protect_content — Flag de proteção de conteúdo. Passe qualquer valor exceto 0, False ou '' para ativar.\ >Não precisamos de proteção de conteúdo, então passaremos uma string vazia ''.
disable_notification — Flag de notificação sonora (padrão: 0). Passe 1 para desativar a notificação, 0 para ativá-la.\ >Uma notificação é uma janela pop-up que exibe o texto da mensagem. Vamos ativá-la. -
Em seguida, montamos a função. Lembre-se de atribuir a função a uma variável — isso permitirá que você acompanhe o status do envio da mensagem.

Aqui está o que obtivemos:
Depois que o cliente nos enviar a palavra-chave test, respondemos citando a mensagem dele.
Em ok vemos o status do envio; em seguida, vêm as informações sobre a própria mensagem — seu ID, dados do remetente e conteúdo.
Exemplo com o parâmetro entities
Você pode armazenar a string original em uma variável, conforme mostrado abaixo:
text = "qwert asdfg zxcvb poiuy lkjhg 12345"
Você deve escrever o parâmetro como um dicionário com os dados e especificar a formatação desejada indicando as fontes:
entities = [{"offset":0,"length":5,"type":"bold"},{"offset":6,"length":4,"type":"text_link","url":"`` https://mavibot.ai"},{"offset":11,"length":9,"type":"strikethrough"},{"offset":21,"length":6,"type":"spoiler"},{"offset":29,"length":12,"type":"code"}]
Passe o parâmetro por último na função que você usa. O parâmetro pode ser passado tanto para a função tg_send_message quanto para tg_send_message_1:
x = tg_send_message(platform_id, text, None, None, None, False, False, False, None, entities)
Para atribuir texto com quebras de linha a uma variável, especifique o valor da seguinte forma:
text = "Primeira linha de texto" + "\n" + "Segunda linha de texto" + "\n" + "Terceira linha"
Como enviar uma mensagem especificando um bot do Telegram específico
tg_send_message_1(token, platform_id, text, client_message_id, reply_markup, parse_mode, disable_web_page_preview, protect_content, disable_notification, message_thread_id, entities, business_connection_id)
| Parâmetro | Descrição |
|---|---|
| **!** token | Token do bot do Telegram obtido do BotFather |
| **!** platform_id | ID do usuário do Telegram para o qual a mensagem deve ser enviada * |
| **!** text | Texto da mensagem |
| client_message_id | ID da mensagem a ser citada |
| reply_markup | Configurações dos botões ** |
| parse_mode | Formatação de texto em negrito e itálico na descrição ***. Pode ter valores como html, markdown, markdownV2. |
| disable_web_page_preview | Mostrar pré-visualização do link. Para desativar, passe 1; caso contrário, passe 0 ou deixe vazio "". |
| protect_content | Flag de proteção de conteúdo. Passe qualquer valor exceto 0, False ou '' para ativar. |
| disable_notification | Flag de notificação sonora (padrão: 0). Passe 1 para desativar a notificação, 0 para ativá-la. |
| message_thread_id | ID do tópico (disponível para supergrupos com funcionalidade de fórum ativada) |
| entities | Isso permite copiar texto pré-formatado junto com todos os seus estilos e simplesmente especificar o intervalo de caracteres onde uma determinada fonte deve ser aplicada. Um exemplo pode ser encontrado no tg_request no campo correspondente. O parâmetro deve ser um dicionário. |
| business_connection_id | O valor Business ID é usado ao conectar o bot e exibido em canais. Deve ser fornecido se um token de bot estiver incluído nos parâmetros e a mensagem precisar ser enviada através de uma conta de usuário vinculada ao bot. |
Exemplo
Exemplo de passagem do parâmetro:
entities = [{"offset":0,"length":5,"type":"bold"},{"offset":6,"length":4,"type":"text_link","url":"https://mavibot.ai"},{"offset":11,"length":9,"type":"strikethrough"},{"offset":21,"length":6,"type":"spoiler"},{"offset":29,"length":12,"type":"code"}]
O exemplo mostra apenas o dicionário, enquanto o texto da mensagem em si é atribuído a uma variável separada.
Como editar texto em uma mensagem do Telegram
Por favor, observe!
A função de edição de mensagem está disponível apenas para mensagens novas e enviadas recentemente.
A janela de tempo durante a qual a edição da mensagem é permitida é determinada pelo próprio mensageiro e depende da carga/atividade do seu bot; pode ser reduzida para edição.
De acordo com o suporte técnico do mensageiro, o período ideal para editar uma mensagem é de 48 horas.
tg_edit_message_text(platform_id, message_id, text, reply_markup, parse_mode, disable_web_page_preview, entities)
| Parâmetro | Descrição |
|---|---|
| **!** platform_id | ID do usuário do Telegram para o qual a mensagem deve ser enviada * |
| **!** message_id | ID da mensagem a ser editada. Este ID deve ser salvo previamente ao enviar a mensagem. |
| **!** text | Texto da mensagem |
| reply_markup | Configurações dos botões ** |
| parse_mode | Formatação de texto em negrito e itálico na descrição ***. Pode ter valores como html, markdown, markdownV2. |
| disable_web_page_preview | Mostrar pré-visualização do link. Para desativar, passe 1; caso contrário, passe 0 ou deixe vazio "". |
| entities | Isso permite copiar texto pré-formatado junto com todos os seus estilos e simplesmente especificar o intervalo de caracteres onde uma determinada fonte deve ser aplicada. Um exemplo pode ser encontrado no tg_request no campo correspondente. O parâmetro deve ser um dicionário. |
Como enviar uma reação a uma mensagem
tg_set_reaction(platform_id, message_id, reaction)
| Parâmetro | Descrição |
|---|---|
| **!** platform_id | ID do chat do Telegram |
| **!** message_id | ID da mensagem |
| **!** reaction | A reação necessária é passada como uma string. |
Exemplo
Exemplo de código para copiar:
react = tg_set_reaction(platform_id, 1556, '👌')
Exemplo na calculadora:

Como editar a descrição de um anexo
tg_edit_message_caption(platform_id, message_id, caption, reply_markup, parse_mode, entities, show_caption_above_media)
| Parâmetro | Descrição |
|---|---|
| **!** platform_id | ID do usuário do Telegram para o qual a mensagem deve ser enviada * |
| **!** message_id | ID da mensagem a ser editada |
| **!** caption | Texto da descrição |
| reply_markup | Configurações dos botões ** |
| parse_mode | Formatação de texto em negrito e itálico na descrição ***. Pode ter valores como html, markdown, markdownV2. |
| entities |
Isso permite copiar texto pré-formatado junto com todos os seus estilos e simplesmente especificar o intervalo de caracteres onde uma determinada fonte deve ser aplicada. Um exemplo pode ser encontrado no tg_request no campo correspondente. O parâmetro deve ser um dicionário. O exemplo mostra apenas o dicionário, enquanto o texto da mensagem em si é atribuído a uma variável separada. |
| show_caption_above_media | Assume o valor True; se este parâmetro for especificado, o texto da mensagem será exibido acima do anexo. |
Como editar anexos de mídia em uma mensagem
| Parâmetro | Descrição |
|---|---|
| **!** platform_id | ID do usuário do Telegram para o qual a mensagem deve ser enviada * |
| **!** message_id | ID da mensagem a ser editada. Este ID deve ser salvo previamente ao enviar a mensagem. |
| **!** media |
Um dicionário descrevendo o arquivo de mídia:
onde <file_to_send> é recomendado ser o file_id obtido através do webhook completo do Telegram. Para mais detalhes, os parâmetros do dicionário estão descritos na documentação oficial do Telegram. |
| reply_markup | Configurações dos botões ** |
Como editar um teclado inline em uma mensagem
| Parâmetro | Descrição |
|---|---|
| **!** platform_id | ID do usuário do Telegram para o qual a mensagem deve ser enviada * |
| **!** message_id | ID da mensagem a ser editada. Este ID deve ser salvo previamente ao enviar a mensagem. |
| **!** reply_markup | Configurações dos botões ** |
Você pode editar apenas um teclado inline.
Exemplo: edição de mensagens com a API do Telegram
Você pode encontrar um exemplo detalhado de como trabalhar com funções da API do Telegram para editar mensagens abaixo.
Como copiar uma mensagem
tg_copy_message(platform_id, from_chat_id, message_id, reply_to_message_id, reply_markup, parse_mode, protect_content, disable_notification, caption, message_thread_id, entities, show_caption_above_media)
| Parâmetro | Descrição |
|---|---|
| **!** platform_id | ID do usuário do Telegram PARA o qual a mensagem deve ser copiada * |
| **!** from_chat_id | ID do usuário do Telegram DE onde a mensagem deve ser copiada * |
| **!** message_id | ID da mensagem a ser copiada |
| reply_to_message_id | ID da mensagem original se a mensagem copiada for um comentário |
| reply_markup | Configurações dos botões ** |
| parse_mode |
Formatação de texto em negrito e itálico na descrição ***. Pode ter valores como html, markdown, markdownV2. |
| protect_content | Flag de proteção de conteúdo. Passe qualquer valor exceto 0, False ou '' para ativar. |
| disable_notification | Flag de notificação sonora (padrão: 0). Passe 1 para desativar a notificação, 0 para ativá-la. |
| caption - | Descrição de até 1024 caracteres. |
| message_thread_id | ID do tópico (disponível para supergrupos com funcionalidade de fórum ativada) |
| entities | Isso permite copiar texto pré-formatado junto com todos os seus estilos e simplesmente especificar o intervalo de caracteres onde uma determinada fonte deve ser aplicada. Um exemplo pode ser encontrado no tg_request no campo correspondente. O parâmetro deve ser um dicionário. Exemplo de passagem do parâmetro: entities = [{"offset":0,"length":5,"type":"bold"},{"offset":6,"length":4,"type":"text_link","url":**"https://mavibot.ai"}**,{"offset":11,"length":9,"type":"strikethrough"},{"offset":21,"length":6,"type":"spoiler"},{"offset":29,"length":12,"type":"code"}] O exemplo mostra apenas o dicionário, enquanto o texto da mensagem em si é atribuído a uma variável separada. |
| show_caption_above_media | Assume o valor True; se este parâmetro for especificado, o texto da mensagem será exibido acima do anexo. |
Como encaminhar uma mensagem
tg_forward_message(platform_id, from_chat_id, message_id, protect_content, disable_notification, message_thread_id)
| Parâmetro | Descrição |
|---|---|
| **!** platform_id | ID do usuário do Telegram PARA o qual a mensagem deve ser enviada * |
| **!** from_chat_id | ID do usuário do Telegram DE onde a mensagem deve ser enviada * |
| **!** message_id | ID da mensagem a ser encaminhada |
| protect_content | Flag de proteção de conteúdo. Passe qualquer valor exceto 0, False ou '' para ativar. |
| disable_notification | Flag de notificação sonora (padrão: 0). Passe 1 para desativar a notificação, 0 para ativá-la. |
| message_thread_id | ID do tópico (disponível para supergrupos com funcionalidade de fórum ativada) |
Como excluir uma mensagem
tg_delete_message(platform_id, message_id)
! Use este método para excluir uma mensagem, incluindo mensagens de serviço, com as seguintes restrições:
- Uma mensagem só pode ser excluída se foi enviada há menos de 48 horas.
- Mensagens com dados em um chat privado só podem ser excluídas se foram enviadas há mais de 24 horas.
- Bots podem excluir mensagens enviadas em chats privados, grupos e supergrupos.
- Bots podem excluir mensagens recebidas em chats privados.
- Bots com a permissão can_post_messages podem excluir mensagens enviadas em canais.
- Se um bot for administrador de um grupo, ele pode excluir qualquer mensagem lá.
- Se um bot tiver a permissão can_delete_messages em um supergrupo ou canal, ele pode excluir qualquer mensagem lá.
| Parâmetro | Descrição |
|---|---|
| **!** platform_id | ID do usuário do Telegram * |
| **!** message_id | ID da mensagem a ser excluída |
Como excluir várias mensagens
tg_delete_messages(platform_id, message_ids)
! Use este método para excluir uma mensagem, incluindo mensagens de serviço, com as seguintes restrições:
- Uma mensagem só pode ser excluída se foi enviada há menos de 48 horas.
- Mensagens com dados em um chat privado só podem ser excluídas se foram enviadas há mais de 24 horas.
- Bots podem excluir mensagens enviadas em chats privados, grupos e supergrupos.
- Bots podem excluir mensagens recebidas em chats privados.
- Bots com a permissão can_post_messages podem excluir mensagens enviadas em canais.
- Se um bot for administrador de um grupo, ele pode excluir qualquer mensagem lá.
- Se um bot tiver a permissão can_delete_messages em um supergrupo ou canal, ele pode excluir qualquer mensagem lá.
| Parâmetro | Descrição |
|---|---|
| **!** platform_id | ID do usuário do Telegram |
| **!** message_ids | Um array de IDs de mensagens a serem excluídas. Máximo de 100 itens. |
Exemplo: envio de mensagens com a API do Telegram
Exemplo de código para copiar
Exemplo 1
/*É conveniente definir o texto em uma variável previamente*/
text='Escrevendo-escrevendo-escrevendo texto'
/*Função de enviar mensagem*/
soob=tg_send_message(platform_id, text)
/*Salvar o ID da mensagem enviada*/
soob_id=soob['result']['message_id']
Exemplo 2
id_group=-1001847103100
text='Testando envio de mensagem via método da API. Por exemplo, *texto em negrito*'
opts = {"inline_keyboard": [[{"text": "👍","callback_data":1}, {"text": "👎","callback_data":2}]]}
disable_web_page_preview=1
protect_content=''
disable_notification=1
parse_mode='markdown'
soob=tg_send_message(id_group, text,client_message_id, opts, parse_mode, disable_web_page_preview, protect_content, disable_notification)
Exemplo: edição de mensagens com a API do Telegram
Exemplo de configuração
Então, vamos enviar a nós mesmos uma mensagem com um teclado inline:

Em seguida, edite o texto da mensagem:

E edite os botões:

Vamos tentar editar uma mensagem com uma imagem. Para fazer isso, envie uma mensagem com uma imagem e salve o ID da mensagem enviada. Leia as instruções detalhadas sobre como obter o URL da imagem aqui:

Agora, vamos editar a imagem e sua descrição:

Exemplo de código para copiar
/*É conveniente definir os parâmetros em uma variável previamente.*/
text='Qual pacote você gostaria de escolher?'
opts = {"inline_keyboard": [[{"text": "Pacote 1","callback_data":1}, {"text": "Pacote 2","callback_data":2}]]}
/*Função de enviar mensagem*/
soob=tg_send_message(platform_id, text, None, opts)
/*Salvar o ID da mensagem enviada*/
soob_id=soob['result']['message_id']
/*Editar a mensagem*/
text='Qual pacote lhe interessa?'
tg_edit_message_text(platform_id, soob_id, text, opts)
/*Editar o teclado inline*/
opts = {"inline_keyboard": [[{"text": "Padrão","callback_data":1}, {"text": "Premium","callback_data":2}]]}
tg_edit_message_reply_markup(platform_id, soob_id, opts)
/*Enviar imagem com a descrição*/
soob=tg_send_photo(platform_id, "AgACAgIAAxkBAAIPpWO4T7jhOgYHq6uR8rjnq9rIvBs-AAJlwDEb5fHASaGdhzgWjyn7AQADAgADeAADLQQ", "Esta é uma imagem")
/*Salvar o ID da mensagem enviada*/
soob_id=soob['result']['message_id']
/*Editar a imagem*/
media='{"type": "photo", "media": "AgACAgIAAxkBAAIPrmO4UiH7Tazqn-3IbFVzPKNsVEZmAAJ1wDEb5fHASWcNXKah-egvAQADAgADeQADLQQ"}'
tg_edit_message_media(platform_id, soob_id, media)
/*Editar a descrição da imagem*/
tg_edit_message_caption(platform_id, soob_id, 'Esta sou EU!')
Exemplo: cópia de mensagens com a API do Telegram
Exemplo
Vamos enviar uma mensagem e salvar seu ID.

E copiar a mensagem enviada anteriormente.

Exemplo de código para copiar
/*É conveniente definir os parâmetros em uma variável previamente.*/
text='Qual pacote você gostaria de escolher?'
opts = {"inline_keyboard": [[{"text": "Pacote 1","callback_data":1}, {"text": "Pacote 2","callback_data":2}]]}
/*Função de enviar mensagem*/
soob=tg_send_message(platform_id, text, None, opts)
/*Salvar o ID da mensagem enviada*/
soob_id=soob['result']['message_id']
/*Copiar a mensagem enviada*/
tg_copy_message('5081438490', '1840834360', soob_id, None, opts, None, None, 1)