Configurações do chat e do mensageiro do Telegram

Trabalhando com IDs de plataforma no MaviBot

No MaviBot, todas as entidades do Telegram (usuários, grupos, canais) são identificadas por uma platform_id variável genérica. Essa variável não distingue entre tipos de entidade.

Problema: Para usar funções como aceitar ou rejeitar que exigem tipos específicos de entidade, você precisa saber tanto o chat ID quanto o usuário ID separadamente.

Solução: Quando você receber um callback ou mensagem, armazene imediatamente o platform_id valor em duas variáveis distintas e com nomes que indiquem sua finalidade:

  • chat_id – para armazenar o ID do grupo/canal.

  • user_id – para armazenar o ID do usuário individual.

Isso permite referenciar o ID correto mais tarde na lógica da sua aplicação.

Como alterar o nome do chat via bot do Telegram

chevron-rightDescriçãohashtag

tg_set_group_title(platform_id, title) -

Parâmetros:

Parâmetro
Descrição

! platform_id

o ID do chat no Telegram *

! title

novo nome do chat

Como alterar a descrição do chat via bot do Telegram

chevron-rightDescriçãohashtag

tg_set_chat_description(platform_id, description)

Parâmetro
Descrição

! platform_id

o ID do chat no Telegram *

! description

novo nome do chat

Como definir um avatar em um grupo/chat no Telegram

chevron-rightDescriçãohashtag

tg_set_chat_photo(platform_id, photo)

Parâmetro
Descrição

! platform_id

ID do chat no Telegram *, no qual você deseja definir um avatar

! foto

link da foto

Como excluir um avatar em um grupo/chat no Telegram

chevron-rightDescriçãohashtag

tg_delete_chat_photo(platform_id)

Parâmetro
Descrição

! platform_id

ID do chat no Telegram *, no qual você precisa definir um avatar

Como banir um grupo do Telegram

chevron-rightDescriçãohashtag

tg_ban_chat_sender_chat(platform_id, sender_chat_id)

Parâmetros:

Parâmetro
Descrição

! platform_id

ID do chat no Telegram *, que você precisa banir

! sender_chat_id

ID do chat que vai banir

Ao mesmo tempo, o proprietário do chat banido não pode escrever em nome de seus outros chats até que seja desbanido.

Como desbanir um grupo do Telegram

chevron-rightDescriçãohashtag

tg_unban_chat_sender_chat(platform_id, sender_chat_id)

Parâmetro:

Parâmetro
Descrição

! platform_id

ID do chat no Telegram *, no qual você desbane

! sender_chat_id

ID do chat que você desbane

chevron-rightDescriçãohashtag

tg_create_chat_invite_link(platform_id, member_limit, hours, request, name)

Parâmetro:

Parâmetro
Descrição

! platform_id

ID do chat no Telegram *

member_limit

limite no número de participantes

hours

Tempo de expiração do link (em horas)

request

um parâmetro que, após clicar no link, deve gerar uma solicitação para entrar no chat.

name

nome do link

circle-info

Ao passar o member_limit parâmetro, o valor do request parâmetro é alterado automaticamente para Falso. Se você precisar aceitar solicitações de entrada, deixe o member_limit parâmetro em branco.

Criando link de convite do chat

chevron-rightDescriçãohashtag

tg_revoke_chat_invite_link(platform_id, invite_link)

Parâmetros:

Parâmetro
Descrição

! platform_id

ID do chat no Telegram *

! invite_link

link que você precisa excluir

chevron-rightDescriçãohashtag

tg_export_chat_link(platform_id)

Parâmetros:

Parâmetro
Descrição

! platform_id

ID do chat no Telegram *

! invite_link

link que você precisa excluir

O resultado é que um link será a única forma de entrar no grupo até que links adicionais sejam criados de outras maneiras.

circle-exclamation

Como aceitar solicitação e adicionar usuário no canal/chat do Telegram

chevron-rightDescriçãohashtag

tg_approve_chat_join_request(chat_id, user_id)

Parâmetros:

! chat_id

ID do grupo/canal no Telegram *

! user_id

ID do usuário no Telegram *

Aceitação da solicitação:

Como recusar solicitação no canal/chat do Telegram

chevron-rightDescriçãohashtag

tg_decline_chat_join_request(chat_id, user_id)

Parâmetros:

! chat_id

ID do grupo/canal no Telegram *

! user_id

ID do usuário no Telegram *

Recusa da solicitação

Como bloquear usuário no Telegram

chevron-rightDescriçãohashtag

tg_ban_chat_member(chat_id, user_id, hours)

Parâmetros:

Parâmetro
Descrição

! chat_id

ID do chat no Telegram *

! user_id

ID do usuário no Telegram * para bloquear

hours

Duração do bloqueio em horas. Por padrão, o bloqueio é permanente. Se você especificar uma duração de bloqueio superior a 366 dias, o bloqueio será definido como permanente.

Como desbloquear usuário no Telegram

chevron-rightDescriçãohashtag

tg_unban_chat_member(chat_id, user_id)

Parâmetros:

Parâmetro
Descrição

! chat_id

ID do chat no Telegram *

! user_id

ID do usuário no Telegram *, que você precisa desbloquear

Como verificar o status da assinatura no Telegram

chevron-rightDescriçãohashtag

tg_get_chat_member(chat_id, user_id)

Parâmetros:

Parâmetro
Descrição

! chat_id

ID do chat no Telegram *

! user_id

ID do usuário no Telegram *, de quem estamos verificando a assinatura

Como determinar o número de membros no canal/chat

chevron-rightDescriçãohashtag

tg_get_chat_member_count(platform_id)

Parâmetros:

Parâmetro
Descrição

! platform_id

ID do chat no Telegram *

Como verificar se um membro do chat está em uma lista específica

chevron-rightsome_client_in_list(list_id, recepient)hashtag

Parâmetros:

Parâmetro
Descrição

! list_id

número da lista

! recepient

ID do usuário no Telegram *. Para clientes de chat, esse valor está na variável chat_member_id.

Como mostrar as ações do bot ao usuário (digitar/selecionar um sticker etc.)

chevron-rightDescriçãohashtag

tg_send_chat_action(platform_id, bot_action, message_thread_id)

! Trabalhe com conta empresarial do Telegram

Parâmetros:

Parâmetro
Descrição

! platform_id

ID do chat no Telegram *

! bot_action

ação do bot a partir da lista

message_thread_id

ID do tópico (disponível para supergrupos se a funcionalidade de fórum estiver disponível).

chevron-rightLista de ações disponíveis bot_actionhashtag

typing para mensagens de texto, upload_photo para fotos, record_video ou upload_video para vídeos, record_voice ou upload_voice para mensagens de voz, upload_document para documentos comuns, choose_sticker para stickers, find_location para dados de localização, record_video_note ou upload_video_note para vídeo-mensagem.

circle-info

Essa notificação será exibida até que qualquer resposta seja recebida do bot, mas por no máximo 5 segundos.

Como mostrar notificação de alerta ao usuário

chevron-rightDescriçãohashtag

tg_answer_callback_query(callback_query_id, text,show_alert,cache_time)

Parâmetro
Descrição

! callback_query_id (obrigatório)

Este ID permite identificar a pessoa que clicou no botão e mostrar a ela a notificação de alerta.

! text (obrigatório)

Texto da notificação de alerta.

show_alert

Indicação de notificação que desaparece (False — notificação em estilo tooltip que some, True — notificação persistente em janela)

cache_time

A quantidade máxima de tempo, em segundos, durante a qual o resultado de uma solicitação de callback pode ser armazenado em cache no lado do cliente. Os aplicativos do Telegram oferecerão suporte ao cache a partir da versão 3.14. O valor padrão é 0

chevron-rightExemplohashtag

As notificações de alerta são mostradas apenas como resultado de clicar no botão de callback no Telegram.

Por exemplo, usamos os seguintes botões:

[{"line":0,"index_in_line":0,"text":"111","type":"inline","callback":"first"}, {"line":1,"index_in_line":0,"text":"222","type":"inline","callback":"second"}, {"line":2,"index_in_line":0,"text":"333","type":"inline","callback":"third"}]

Depois de clicar em um botão, chega um callback com o texto contido no campo correspondente. Quando você clicar no botão “111”, você receberá um callback com o texto “first".

Vamos criar um bloco Start e especificar o texto desejado no gatilho. No nosso caso: "first

Se no Matches campo você selecionar Ignorando erros e imprecisões, este bloco poderá ser reutilizado posteriormente para todas as variantes semelhantes que diferem em 1–2 caracteres. Por exemplo, para agradecer ao usuário por fornecer uma avaliação com esse botão.

Em seguida, na calculadora, use a tg_answer_callback_query função e passe os seguintes parâmetros: callback_query_id - este ID permite identificar o usuário que pressionou o botão e exibir a notificação de alerta para ele text - texto da notificação de alerta.

Exemplo de código para copiar:

tg_answer_callback_query('#{callback_query_id}', "Você pressionou o botão 111")

circle-exclamation

Se tudo estiver configurado corretamente, pressionar o botão resultará em uma notificação de alerta com o texto especificado. Na versão mobile, o nome do bot aparecerá como cabeçalho acima do texto.

Se você quiser mostrar uma simples mensagem pop-up em vez disso, passe Falso como terceiro parâmetro, como mostrado no exemplo abaixo: tg_answer_callback_query('#{callback_query_id}', "Você passou pelo botão 222", False)

Quando o botão é pressionado com esses parâmetros, uma notificação desse tipo aparecerá por alguns segundos.

Adicionando um redirecionamento de bot com uma tag como resposta de botão de callback

chevron-rightDescriçãohashtag

tg_callback_url_open(callback_query_id, url, cache_time)

Parâmetros:

Parâmetros
Descrição

! callback_query_id

Este ID permite identificar a pessoa que clicou no botão e mostrar a ela a notificação de alerta.

! url

URL apontando para o bot e um parâmetro (formato: t.me/seu_bot?start=XXXX, onde your_bot - é o nome do bot)

cache_time

A quantidade máxima de tempo, em segundos, durante a qual o resultado de uma solicitação de callback pode ser armazenado em cache no lado do cliente. Os aplicativos do Telegram oferecerão suporte ao cache a partir da versão 3.14. O valor padrão é 0

chevron-rightExemplohashtag

ВNa resposta do botão de callback, você pode adicionar uma transição para o bot usando a tag thetg_callback_url_open('#{callback_query_id}', 't.me/bot_name?start=XXXX')

Por exemplo, vamos usar os seguintes botões:

[{"line":0,"index_in_line":0,"text":"111","type":"inline","callback":"first"}, {"line":1,"index_in_line":0,"text":"222","type":"inline","callback":"second"}, {"line":2,"index_in_line":0,"text":"333","type":"inline","callback":"third"}]

Depois de clicar em um botão, chega um callback com o texto contido no campo correspondente. Quando você clicar no botão “111”, você receberá um callback com o texto “first".

Crie um bloco com uma verificação de condição primária e especifique o texto desejado na condição. No nosso caso: “first”:

Se no Opção correspondente campo você selecionar Ignorar erros e imprecisões, este bloco poderá ser reutilizado posteriormente para todas as variantes semelhantes que diferem em 1–2 caracteres. Por exemplo, para agradecer ao usuário por fornecer uma avaliação com esse botão.

Em seguida, na calculadora do bloco, especifique tg_callback_url_open('#{callback_query_id}', 't.me/bot_name?start=XXXX'):

Como promover um usuário a administrador em um supergrupo ou canal

chevron-rightDescriçãohashtag

tg_promote_user(platform_id, user_id, promote_options_list)

Parâmetros:

Parâmetro
Descrição

! platform_id

o identificador de um supergrupo ou, se usado em um canal, o nome de usuário do canal no formato @channelusername no Telegram *

! user_id

o identificador de um usuário no Telegram. *

! promote_options_list

lista de permissões a serem ativadas.

chevron-rightParâmetro obrigatório: promote_options_listhashtag

As seguintes permissões podem ser especificadas em promote_options_list :

  1. is_anonymous — oculta a presença do administrador no chat,

  2. can_manage_chat — o administrador pode acessar o log de eventos do chat, estatísticas do chat, estatísticas de mensagens em canais, visualizar membros do canal, visualizar administradores anônimos em supergrupos e contornar o modo lento. Esse nível de permissão é concedido por padrão se algum dos privilégios subsequentes for especificado

  3. can_post_messages — o administrador pode criar postagens no canal (apenas canais)

  4. can_edit_messages — o administrador pode editar mensagens de outros usuários e fixar mensagens (apenas canais)

  5. can_delete_messages — o administrador pode excluir mensagens de outros usuários

  6. can_manage_video_chats — o administrador pode gerenciar chats de vídeo,

  7. can_restrict_members — o administrador pode restringir membros, banir/desbanir no chat,

  8. can_promote_members — o administrador pode nomear novos administradores com um subconjunto dos seus próprios privilégios ou rebaixar administradores que tenha nomeado direta ou indiretamente (por exemplo, administradores nomeados por ele)

  9. can_change_info — o administrador pode alterar o título, a foto e outras configurações do chat

  10. can_invite_users — o administrador pode convidar novos usuários para o chat

  11. can_pin_messages — o administrador pode fixar mensagens (apenas supergrupos).

chevron-rightExemplohashtag

Exemplo: promovendo um usuário a administrador em um supergrupo:

Neste exemplo, além das permissões especificadas, a permissão can_manage_chat será concedida por padrão.

Atribuindo permissões a um usuário
Definindo um título personalizado de administrador

Exemplo de código para copiar

Como alterar o título de um administrador usando um bot no Telegram

chevron-rightDescriçãohashtag

tg_set_administrator_title(platform_id, user_id, title)

Parâmetros:

Parâmetro
Descrição

! platform_id

identificador do supergrupo no Telegram *

! user_id

identificador do usuário no Telegram *

! title

título de administrador

Restrições para o título:

Comprimento: 0–16 caracteres, emojis não são permitidos

circle-exclamation

Exemplo de código para copiar:

Restrições gerais para membros regulares do chat ou usuários específicos do Telegram

chevron-rightDescriçãohashtag

tg_chat_permission(platform_id, permission, media_permissions)

Parâmetros:

Parâmetro
Descrição

! platform_id

identificador do chat no Telegram *

! permission

um array de valores da lista de restrições (veja abaixo).

1 = ação permitida

0 = ação proibida

O índice do array corresponde à posição na lista de restrições

! media_permissions

um array de valores que define permissões relacionadas a mídia (detalhes abaixo).

1 = ação permitida

0 = ação proibida

O índice do array corresponde à posição na lista de permissões de mídia

chevron-rightLista de restrições para o parâmetro obrigatório permissionhashtag

Lista de restrições para permission: 1. ! can_send_messages - permissão para enviar mensagens de texto, contatos, locais e estabelecimentos. 2. ! can_send_media_messages - permissão para enviar áudio, documentos, fotos, vídeos, vídeo-mensagens e mensagens de voz. Ela requer can_send_messages 3. ! can_send_polls - permissão para enviar enquetes. Ela requer can_send_messages 4. ! can_send_other_messages - permissão para enviar animações, jogos, stickers e usar bots inline. Ela requer can_send_media_messages 5. ! can_add_web_page_previews - permissão para adicionar prévias de páginas da web às mensagens. Ela requer can_send_media_messages 6. ! can_change_info - permissão para alterar o título, a foto e outras configurações do chat. Isso é ignorado em supergrupos públicos. 7. ! can_invite_users - permissão para convidar usuários 8. ! can_pin_messages - permissão para fixar mensagens. Isso é ignorado em supergrupos públicos. 9. can_manage_topics - permissão para criar tópicos em grupos de fórum. Se usada em um grupo do tipo incorreto, a função falhará e retornará um erro.

chevron-rightLista de valores para o parâmetro obrigatório media_permissionshashtag

Valores para conceder permissões relacionadas à mídia media_permissions:

1. can_send_audios - permissão para enviar arquivos de áudio 2. can_send_documents -permissão para enviar documentos 3. can_send_photos - permissão para enviar fotos 4. can_send_videos - permissão para enviar vídeos 5. can_send_video_notes - permissão para enviar mensagens de vídeo redondas 6. can_send_voice_notes - permissão para enviar mensagens de vozя

Restrições pessoais do Telegram para usuários regulares do chat ou para usuários específicos do Telegram

chevron-rightDescriçãohashtag

tg_restrict_chat_member(platform_id, user_id, minutes, permission, media_permissions).

Parâmetros:

Parâmetro
Descrição

! platform_id

ID do chat no Telegram *

! user_id

ID do usuário no Telegram *

minutes

o número de minutos durante os quais a restrição ficará ativa. Se você não definir um valor, o padrão será 3600, que equivale a 60 horas. Se você definir como 0, a restrição se torna permanente

permission

um array de valores da lista de restrições de permissão.

media_permissions

uma lista de valores para conceder permissões relacionadas à mídia

chevron-rightLista de restrições para o parâmetro obrigatório permissionhashtag

Lista de restrições para permission: 1. ! can_send_messages - permissão para enviar mensagens de texto, contatos, locais e estabelecimentos. 2. ! can_send_media_messages - permissão para enviar áudio, documentos, fotos, vídeos, vídeo-mensagens e mensagens de voz. Ela requer can_send_messages 3. ! can_send_polls - permissão para enviar enquetes. Ela requer can_send_messages 4. ! can_send_other_messages - permissão para enviar animações, jogos, stickers e usar bots inline. Ela requer can_send_media_messages 5. ! can_add_web_page_previews - permissão para adicionar prévias de páginas da web às mensagens. Ela requer can_send_media_messages 6. ! can_change_info - permissão para alterar o título, a foto e outras configurações do chat. Isso é ignorado em supergrupos públicos. 7. ! can_invite_users - permissão para convidar usuários 8. ! can_pin_messages - permissão para fixar mensagens. Isso é ignorado em supergrupos públicos. 9. can_manage_topics - permissão para criar tópicos em grupos de fórum. Se usada em um grupo do tipo incorreto, a função falhará e retornará um erro.

chevron-rightLista de valores para o parâmetro obrigatório media_permissionshashtag

Valores para conceder permissões relacionadas à mídia media_permissions:

1. can_send_audios - permissão para enviar arquivos de áudio 2. can_send_documents -permissão para enviar documentos 3. can_send_photos - permissão para enviar fotos 4. can_send_videos - permissão para enviar vídeos 5. can_send_video_notes - permissão para enviar mensagens de vídeo redondas 6. can_send_voice_notes - permissão para enviar mensagens de vozя

chevron-rightExemplohashtag

Exemplo de uso da função, onde o usuário fica restrito de tudo por 3 minutos:

Quando o usuário entra no chat, ele verá uma notificação informando que não pode enviar mensagens no chat. Se um limite de tempo for definido, ele também verá a duração dessa restrição.

Exemplo de código para copiar:

Como fixar mensagem

chevron-rightDescriçãohashtag

tg_pin_chat_message(platform_id, message_id, disable_notification)

Parâmetros:

Parâmetro
Descrição

! platform_id

ID do chat no Telegram *

message_id

ID da mensagem que precisa ser fixada

disable_notification

O parâmetro define se uma notificação deve ser enviada a todos os membros do chat sobre uma nova mensagem fixada (as notificações são sempre desativadas em canais e chats privados). Se você não quiser enviar notificações, defina o parâmetro disable_notification como 1. Caso contrário, defina como 0.

Como desafixar mensagem

chevron-rightDescriçãohashtag

tg_unpin_chat_message(platform_id, message_id)

Parâmetros:

Parâmetro
Descrição

! platform_id

ID do chat no Telegram *

message_id

ID da mensagem que deve ser desafixada. Se message_id não for fornecido, a mensagem fixada mais recente (pela data de envio) será desafixada

Como desafixar todas as mensagens fixadas

chevron-rightDescriçãohashtag

tg_unpin_all(platform_id)

Parâmetros:

Parâmetro
Descrição

! platform_id

ID do chat no Telegram *

circle-exclamation

Como criar uma enquete no Telegram

chevron-rightDescriçãohashtag

tg_send_poll(platform_id, question, options, is_anonymous, allows_multiple_answers, reply_markup, disable_notification, protect_content, token, reply_to_message_id, message_thread_id, business_connection_id)

Parâmetros:

Parâmetro
Descrição

! platform_id

ID do chat no Telegram *

! question

question

! options

um array de opções de resposta

is_anonymous

1 - enquete anônima , '' - não anônima

allows_multiple_answers

1 - múltiplas respostas disponíveis, '' - uma resposta

reply_markup

teclado ou '' - sem teclado

disable_notification

flag para envio com notificação sonora (padrão 0) 1 – desativar notificação no recebimento, 0 – enviar com notificação

protect_content

1 para proteger contra cópia e capturas de tela, '' sem proteção

token

token do bot; se não fornecido, o atual será usado

reply_to_message_id

ID da mensagem citada

message_thread_id

ID do tópico (disponível para supergrupos se a funcionalidade de fórum existir)

business_connection_id

valor ao conectar um bot (Business ID). Aparece em canais. Deve ser fornecido se o token do bot for usado e a mensagem precisar ser enviada por meio de uma conta de usuário conectada ao bot

chevron-rightImportante saber!hashtag

Observações

1. A função retorna uma resposta do Telegram com message_id. É melhor salvá-la. Usando message_id, você pode parar a enquete com tg_stop_poll (veja a descrição abaixo) e obter o resultado.

2. Se um usuário adiciona uma enquete em um mensageiro, um callback é enviado ao chat:

poll_added - parte imutável YOUR QUESTION - texto da pergunta da enquete

Exemplo de callback ao adicionar uma enquete ao canal

Exemplo de callback ao adicionar uma enquete ao chat

O segundo callback após poll_added contém números - isso nada mais é do que o identificador do usuário no Telegram que adicionou a enquete.

circle-exclamation

3. No canal, só é possível criar enquetes anônimas

circle-info

Atenção, recomenda-se enviar para o grupo apenas enquetes anônimas!

4. Após criar a enquete, salve seu identificador na variável para entender de qual enquete o callback chegou.

chevron-rightExemplohashtag

O feedback do cliente é fundamental para o nosso crescimento. As enquetes oferecem um método simples para capturar esse feedback e traduzi-lo em conclusões de negócios concretas.

Exemplo de código para copiar:

Função para criar uma enquete no Telegram:

A enquete que criamos no Telegram

Como criar um quiz no Telegram

chevron-rightDescriçãohashtag

tg_send_quiz_poll(platform_id, question, options, explanation, correct_option_id, is_anonymous, reply_markup, parse_mode, protect_content, disable_notification, token, reply_to_message_id, message_thread_id )

Parâmetros:

Parâmetro
Descrição

! platform_id

ID do chat no Telegram *

! question

question

! options

um array de opções de resposta

! explanation

texto exibido quando um usuário seleciona uma resposta errada ou clica no ícone da lâmpada em uma enquete no estilo quiz, 0–200 caracteres com no máximo duas quebras de linha após a análise de entidades.

! correct_option_id

número da resposta correta, a numeração começa em 1

is_anonymous

1 - enquete anônima , '' - não anônima

reply_markup

teclado ou '' - sem teclado

parse_mode

formato da explicação: markdown, html, ou '' (string vazia para sem formatação)

protect_content

1 para proteger contra cópia e capturas de tela, '' sem proteção

disable_notification

flag para envio com notificação sonora (padrão 0) 1 – desativar notificação no recebimento, 0 – enviar com notificação

token

token do bot; se não fornecido, o atual será usado

reply_to_message_id

ID da mensagem citada

message_thread_id

ID do tópico (disponível em supergrupos com recursos de fórum ativos)

chevron-rightImportante saber!hashtag

Observações

1. Salve o message_id

A função da API retorna uma resposta do Telegram contendo um message_id. Sempre salve este ID, pois ele é necessário para:

  • Encerrar o quiz usando a tg_stop_poll função (veja a descrição abaixo).

  • Obter os resultados finais.

2. Callback poll_added

Se um usuário adiciona uma enquete a um canal, o bot recebe um callback:

  • Formato: poll_added + Pergunta da enquete

  • Se adicionado a um chat em grupo: o callback também inclui o ID de Usuário do Telegram da pessoa que adicionou a enquete.

circle-exclamation

3. Restrição de canal

Somente quizzes anônimos podem ser criados em canais.

4. Callback poll_answer (Voto do usuário)

Quando um usuário vota em um quiz enviado para um chat privado ou group, um callback é enviado para a conversa do bot com esse cliente:

  • Formato: poll_answer + ID da enquete + [Índice da resposta]

  • Exemplo: poll_answer 5325838371359031648 [3]

  • Observação: a numeração das respostas começa em 0. [3] significa que o usuário selecionou a quarta opção de resposta.

5. Webhook para enquetes não anônimas em grupos

Para enquetes não anônimas em grupos onde o bot é administrador, um webhook é enviado para cada voto. Ao recebê-lo, o bot encaminhará o poll_answer callback (como no ponto 4) para sua conversa com o cliente correspondente.

6. Requisito de ativação e melhor prática

  • Requisito: um bot não pode iniciar uma conversa. Se um cliente nunca contatou o bot, você não pode enviar uma mensagem direta em resposta ao voto dele até que ele ative o bot primeiro (por exemplo, enviando um /start comando).

circle-info

Recomendação: para evitar essa limitação, é altamente recomendado enviar apenas quizzes anônimos para grupos.

7. Acompanhe suas enquetes

Logo após criar um quiz, salve seu ID da enquete único em uma variável. Isso permite identificar a qual enquete específica um callback recebido se refere.

chevron-rightExemplohashtag

Exemplo de código para copiar.

Exemplo: criação de quiz.

Como encerrar uma enquete

chevron-rightDescriçãohashtag

tg_stop_poll(platform_id, message_id)

Parâmetros:

Parâmetro
Descrição

! platform_id

ID do chat no Telegram *

! message_id

ID da mensagem da enquete/quiz. Ele pode ser obtido do webhook

circle-info

Chamar esta função para encerrar uma enquete/quiz retorna um dicionário contendo os resultados finais.

Como trabalhar com tópicos no Telegram

circle-exclamation

Como renomear o Tópico Geral do grupo

chevron-rightDescriçãohashtag

tg_edit_general_forum_topic(platform_id, topic_name)

Parâmetros:

Parâmetro
Descrição

! platform_id

ID do chat no Telegram *

! topic_name

novo nome do tópico

bot_name

parâmetro opcional: nome do bot.

Ao trabalhar com tópicos, você pode especificar qual bot deve executar a função. Isso é útil se o seu projeto usar vários bots do Telegram. Encontre o nome do bot na seção "Channels", no campo "Group ID".

chevron-rightExemplohashtag

O Tópico Geral dos grupos pode ser alterado usando a tg_edit_general_forum_topic() função. Ela requer dois parâmetros obrigatórios: o ID do chat e o novo nome do Tópico do Grupo:

chevron-rightExemplo de código para copiarhashtag

renomear o chat do Tópico Geral/ answer = tg_edit_general_forum_topic(-1001839380031, 'General')

Como fechar o Tópico Geral

chevron-rightDescriçãohashtag

tg_close_general_forum_topic(platform_id)

Parâmetros:

Parâmetro
Descrição

! platform_id

ID do chat no Telegram *

bot_name

parâmetro opcional: nome do bot.

Ao trabalhar com tópicos, você pode especificar qual bot deve executar a função. Isso é útil se o seu projeto usar vários bots do Telegram. Encontre o nome do bot na seção "Channels", no campo "Group ID".

chevron-rightExemplo de código para copiarhashtag

/fechar o chat do Tópico Geral/ answer = tg_close_general_forum_topic(-1001839380031)

Como reabrir um Tópico Geral anteriormente fechado

chevron-rightDescriçãohashtag

tg_reopen_general_forum_topic(platform_id)

Parâmetros:

Parâmetro
Descrição

! platform_id

ID do chat no Telegram *

bot_name

parâmetro opcional: nome do bot.

Ao trabalhar com tópicos, você pode especificar qual bot deve executar a função. Isso é útil se o seu projeto usar vários bots do Telegram. Encontre o nome do bot na seção "Channels", no campo "Group ID".

chevron-rightExemplo de código para copiarhashtag

/reabrir o chat do Tópico Geral/ answer = tg_reopen_general_forum_topic(-1001839380031)

Como ocultar o Tópico Geral

chevron-rightDescriçãohashtag

tg_hide_general_forum_topic(platform_id)

Parâmetros:

Parâmetro
Descrição

! platform_id

ID do chat no Telegram *

bot_name

parâmetro opcional: nome do bot.

Ao trabalhar com tópicos, você pode especificar qual bot deve executar a função. Isso é útil se o seu projeto usar vários bots do Telegram. Encontre o nome do bot na seção "Channels", no campo "Group ID".

O chat do Tópico Geral pode ser fechado para os participantes do Tópico (eles podem ler, mas não escrever) e ocultado da lista geral de chats do Telegram para novos usuários.

chevron-rightExemplo de código para copiarhashtag

/ocultar o chat do Tópico Geral/ answer = tg_hide_general_forum_topic(-1001839380031)

Como exibir o Tópico Geral ou restaurar sua visibilidade

chevron-rightDescriçãohashtag

tg_unhide_general_forum_topic(platform_id)

Parâmetros:

Parâmetro
Descrição

! platform_id

ID do tópico dentro do Telegram *

bot_name

parâmetro opcional: nome do bot.

Ao trabalhar com tópicos, você pode especificar qual bot deve executar a função. Isso é útil se o seu projeto usar vários bots do Telegram. Encontre o nome do bot na seção "Channels", no campo "Group ID".

circle-exclamation
chevron-rightExemplo de código para copiarhashtag

/exibir o chat do Tópico Geral/ answer = tg_unhide_general_forum_topic(-1001839380031)

Como criar um novo tópico no Telegram

chevron-rightDescriçãohashtag

tg_create_forum_topic(platform_id, name, icon, icon_color)

Parâmetros:

Parâmetro
Descrição

! platform_id

ID do chat no Telegram *

! name

novo nome do tópico

icon

ID do emoji a ser definido para o tópico. Passado como uma string. Você só pode usar emojis da lista recuperada pela tg_get_forum_icon função.

icon_color

cor do emoji a partir da lista: 7322096, 16766590, 13338331, 9367192, 16749490, 16478047. Nem todos os emojis suportam mudanças de cor.

bot_name

parâmetro opcional: nome do bot.

Ao trabalhar com tópicos, você pode especificar qual bot deve executar a função. Isso é útil se o seu projeto usar vários bots do Telegram. Encontre o nome do bot na seção "Channels", no campo "Group ID".

circle-info

A cor definida não pode ser alterada; a cor só pode ser atribuída ao criar o tópico.

Quando executada, a função retornará uma resposta contendo os parâmetros do novo tópico, incluindo o ID do tópico (necessário para várias funções).

chevron-rightExemplo de código para copiarhashtag

Para criar um chat de tópico adicional answer = tg_create_forum_topic(-1001839380031, 'second_bot_topic', None, 7322096)

Para salvar o ID do chat de tópico adicional criado answer={"ok":true,"result":{"message_thread_id":254,"name":"second_bot_topic","icon_color":7322096}}/ idtema1=answer['result']['message_thread_id']

Como editar um tópico. Como renomear e/ou alterar o emoji de um tópico

chevron-rightDescriçãohashtag

tg_edit_forum_topic(platform_id, message_thread_id, name, icon)

Parâmetros:

Parâmetro
Descrição

! platform_id

ID do chat no Telegram *

! message_thread_id

ID do chat de tópico adicional

name

novo nome do tópico

icon

ID do emoji a ser definido para o tópico. Passado como uma string. Você só pode usar emojis da lista recuperada pela tg_get_forum_icon função.

bot_name

parâmetro opcional: nome do bot.

Ao trabalhar com tópicos, você pode especificar qual bot deve executar a função. Isso é útil se o seu projeto usar vários bots do Telegram. Encontre o nome do bot na seção "Channels", no campo "Group ID".

chevron-rightExemplo de código para copiarhashtag

answer = tg_edit_forum_topic(-1001839380031, 254)

Como fechar um tópico selecionado

chevron-rightDescriçãohashtag

Fechar um tópico significa torná-lo somente leitura; não é permitido escrever em um tópico fechado.

tg_close_forum_topic(platform_id, message_thread_id)

Parâmetros:

Parâmetro
Descrição

! platform_id

ID do chat no Telegram *

! message_thread_id

ID do chat de tópico adicional

bot_name

parâmetro opcional: nome do bot.

Ao trabalhar com tópicos, você pode especificar qual bot deve executar a função. Isso é útil se o seu projeto usar vários bots do Telegram. Encontre o nome do bot na seção "Channels", no campo "Group ID".

chevron-rightExemplo de código para copiarhashtag

answer = tg_close_forum_topic(-1001839380031, 254)

Como reabrir um tópico fechado anteriormente

chevron-rightDescriçãohashtag

tg_reopen_forum_topic(platform_id, message_thread_id)

Parâmetros:

Parâmetro
Descrição

! platform_id

ID do chat no Telegram *

! message_thread_id

ID do chat de tópico adicional

bot_name

parâmetro opcional: nome do bot.

Ao trabalhar com tópicos, você pode especificar qual bot deve executar a função. Isso é útil se o seu projeto usar vários bots do Telegram. Encontre o nome do bot na seção "Channels", no campo "Group ID".

chevron-rightExemplo de código para copiarhashtag

answer = tg_reopen_forum_topic(-1001839380031, 254)

Como excluir um tópico e todas as suas mensagens

chevron-rightDescriçãohashtag

tg_delete_forum_topic(platform_id, message_thread_id)

Parâmetros:

Parâmetro
Descrição

! platform_id

ID do chat no Telegram *

! message_thread_id

ID do chat de tópico adicional

bot_name

parâmetro opcional: nome do bot.

Ao trabalhar com tópicos, você pode especificar qual bot deve executar a função. Isso é útil se o seu projeto usar vários bots do Telegram. Encontre o nome do bot na seção "Channels", no campo "Group ID".

chevron-rightExemplo de código para copiarhashtag

answer = tg_delete_forum_topic(-1001839380031, 254)

Como desafixar todas as mensagens em um tópico

chevron-rightDescriçãohashtag

tg_unpin_topic_messages(platform_id, message_thread_id)

Parâmetros:

Parâmetro
Descrição

! platform_id

ID do chat no Telegram *

! message_thread_id

ID do chat de tópico adicional

bot_name

parâmetro opcional: nome do bot.

Ao trabalhar com tópicos, você pode especificar qual bot deve executar a função. Isso é útil se o seu projeto usar vários bots do Telegram. Encontre o nome do bot na seção "Channels", no campo "Group ID".

chevron-rightExemplo de código para copiarhashtag

answer = tg_unpin_topic_messages(-1001839380031, 254)

Como obter a lista de emojis para um Tópico do Telegram

chevron-rightDescriçãohashtag

Como obter a lista de emojis

tg_get_forum_icon() – esta função retorna uma lista de emojis disponíveis para uso como ícones de tópicos do fórum. O resultado deve ser atribuído a uma variável, pois ela retorna um dicionário em que cada chave é um emoji e seu valor correspondente é o identificador exclusivo do emoji (id).

Parâmetros: nenhum.

chevron-rightO conteúdo da lista de emojishashtag

Para obter a lista de emojis de um chat de Tópico, envie o comando para o chat relevante.

A função retornará a lista de emojis em sua resposta. Isso significa que a variável answer conterá um dicionário como seu valor.

{'📰': '5434144690511290129', '💡': '5312536423851630001', '⚡️': '5312016608254762256', '🎙': '5377544228505134960', '🔝': '5418085807791545980', '🗣': '5368697802761185083', '🆒': '5420216386448270341', '❗️': '5379748062124056162', '📝': '5357193964787081133', '📆': '5433614043006903194', '📁': '5357315181649076022', '🔎': '5309965701241379366', '📣': '5309984423003823246', '🔥': '5312241539987020022', '❤️': '5312138559556164615', '❓': '5377316857231450742', '📈': '5350305691942788490', '📉': '5350713563512052787', '💎': '5309958691854754293', '💰': '5350452584119279096', '💸': '5309929258443874898', '\U0001fa99': '5377690785674175481', '💱': '5310107765874632305', '⁉️': '5377438129928020693', '🎮': '5309950797704865693', '💻': '5350554349074391003', '📱': '5409357944619802453', '🚗': '5312322066328853156', '🏠': '5312486108309757006', '💘': '5310029292527164639', '🎉': '5310228579009699834', '‼️': '5377498341074542641', '🏆': '5312315739842026755', '🏁': '5408906741125490282', '🎬': '5368653135101310687', '🎵': '5310045076531978942', '🔞': '5420331611830886484', '📚': '5350481781306958339', '👑': '5357107601584693888', '⚽️': '5375159220280762629', '🏀': '5384327463629233871', '📺': '5350513667144163474', '👀': '5357121491508928442', '\U0001fae6': '5357185426392096577', '🍓': '5310157398516703416', '💄': '5310262535021142850', '👠': '5368741306484925109', '✈️': '5348436127038579546', '\U0001f9f3': '5357120306097956843', '🏖': '5310303848311562896', '⛅️': '5350424168615649565', '🦄': '5413625003218313783', '🛍': '5350699789551935589', '👜': '5377478880577724584', '🛒': '5431492767249342908', '🚂': '5350497316203668441', '🛥': '5350422527938141909', '🏔': '5418196338774907917', '🏕': '5350648297189023928', '🤖': '5309832892262654231', '\U0001faa9': '5350751634102166060', '🎟': '5377624166436445368', '🏴\u200d☠️': '5386395194029515402', '🗳': '5350387571199319521', '🎓': '5357419403325481346', '🔭': '5368585403467048206', '🔬': '5377580546748588396', '🎶': '5377317729109811382', '🎤': '5382003830487523366', '🕺': '5357298525765902091', '💃': '5357370526597653193', '\U0001fa96': '5357188789351490453', '💼': '5348227245599105972', '\U0001f9ea': '5411138633765757782', '👨\u200d👩\u200d👧\u200d👦': '5386435923204382258', '👶': '5377675010259297233', '🤰': '5386609083400856174', '💅': '5368808634392257474', '🏛': '5350548830041415279', '\U0001f9ee': '5355127101970194557', '🖨': '5386379624773066504', '👮\u200d♂️': '5377494501373780436', '\U0001fa7a': '5350307998340226571', '💊': '5310094636159607472', '💉': '5310139157790596888', '\U0001f9fc': '5377468357907849200', '\U0001faaa': '5418115271267197333', '🛃': '5370947704199323325', '🍽': '5350344462612570293', '🐟': '5384574037701696503', '🎨': '5310039132297242441', '🎭': '5350658016700013471', '🎩': '5357504778685392027', '🔮': '5350367161514732241', '🍹': '5350520238444126134', '🎂': '5310132165583840589', '☕️': '5350392020785437399', '🍣': '5350406176997646350', '🍔': '5350403544182694064', '🍕': '5350444672789519765', '\U0001f9a0': '5312424913615723286', '💬': '5417915203100613993', '🎄': '5312054580060625569', '🎃': '5309744892677727325'}

chevron-rightExemplo de código para copiarhashtag

Atualizado