Bot do Telegram para copiar mensagens

Use o Junction Bot para copiar ou encaminhar automaticamente mensagens do Telegram de diferentes fontes para o seu canal ou grupo do Telegram. Chamamos isso de encaminhamento.

Possíveis fontes de mensagens:

  • canais e grupos públicos e privados
  • canais e grupos privados fechados (sem um link de convite)
  • outros bots
  • bate-papos privados com outros usuários

Algumas dessas fontes estão disponíveis apenas com a Direct Connection. Consulte aqui para ver qual tipo de conta você precisa. As visualizações de uma mensagem encaminhada são contadas separadamente e não alteram a contagem de visualizações da mensagem original.

Criação de um novo encaminhamento

Para criar uma regra de encaminhamento para copiar mensagens do Telegram, use o comando /new. Ele o guiará pelo processo de configuração.

Após a conclusão da configuração, você poderá ver sua nova lista de regras com o comando /forwards (antigo /list). Além disso, esse comando mostrará botões para controlar suas regras de encaminhamento (desativar, excluir etc.).

Você pode ajustar diferentes configurações de todas as suas regras ou de cada regra específica. Consulte aqui para obter mais detalhes.

Copiar o canal do Telegram com ou sem link de convite

O bot pode copiar mensagens de canais e grupos privados do Telegram se eles tiverem um link de convite e também se não o tiverem.

Se estiver usando a conta Standard, lembre-se de que os canais privados do Telegram têm garantia de funcionamento somente até que o link de convite esteja ativo.

Se você precisar copiar de canais privados sem um link de convite ou quiser receber mensagens de outros bots, precisará usar a conexão direta.

Cópia de uma origem de Telegrama para vários destinos

Normalmente, quando você ajusta as configurações das regras de encaminhamento, usa um link para um canal de origem. Mas como identificar a regra exata se você tiver várias regras de encaminhamento para canais diferentes de uma única origem? Como definir diferentes configurações/filtros/substituições para diferentes canais de destino?

Adicione a seguinte construção ao nome da fonte: ->-1001251642436
Em que -1001251642436 é o identificador do canal de destino no sistema do Telegram mais o prefixo “-100” (é a forma como o Telegram distingue os números de canais dos números de outros objetos). Para encontrar esse número, basta usar o comando
/filter source_channel_reference
Você verá todos os identificadores de destino possíveis com base em suas regras de encaminhamento atuais.

Por exemplo, os comandos para adicionar dois filtros diferentes a destinos diferentes a partir da mesma origem podem ter a seguinte aparência:
/filter source_channel_reference->-1001251642436 mustHave green
/filter source_channel_reference->-1001459676332 mustHave red

Os comandos para adicionar dois botões de feedback diferentes a destinos diferentes a partir da mesma fonte podem ter a seguinte aparência:
/settingchannel source_channel_reference->-1001251642436 like 👍🏻
/settingchannel source_channel_reference->-1001459676332 like ❤️

Status “Pendente”

Se o seu canal de origem for completamente novo no sistema e tivermos uma carga alta, pode demorar um pouco para o bot começar a receber mensagens dele.

Se, ao usar o comando /forwards (ou o antigo /list), você vir canais marcados com PENDING, isso significa que esses canais estão esperando para serem conectados ao bot. Aguarde de 10 a 30 minutos e as mensagens começarão a chegar.

Informe-nos se demorar mais de um dia.

Redução de atrasos

Com o comando /support, você pode executar um assistente para ajudá-lo a descobrir por que a mensagem não chegou ao destino ou chegou com atraso. No momento, esse recurso está disponível apenas para conexões diretas.

Se o atraso na entrega da mensagem ocorreu uma vez, é provável que nesse momento tenha havido apenas uma atualização do bot. Você pode usar o comando /status para verificar quando foi a última atualização e se ela está em andamento no momento. Além disso, esse comando mostra um atraso máximo estimado para contas padrão (as conexões diretas funcionam instantaneamente).

Se você tiver uma conta Free ou Standard

Para canais públicos em contas Free e Standard, a entrega de mensagens pode levar até algumas horas. A entrega de canais privados geralmente ocorre instantaneamente, mas, raramente, de vez em quando, ela também pode aumentar. Se o seu canal de origem for completamente novo no sistema e tivermos uma carga alta, pode demorar um pouco para o bot começar a receber mensagens dele. Informe-nos se isso demorar mais de 24 horas. Se esses atrasos não forem aceitáveis, você deverá usar uma conexão direta. A Direct Connection garante prazos de entrega instantâneos.

Estamos fornecendo um serviço para acelerar a entrega de um canal público, portanto, levará vários segundos. Esse serviço custa € 1,20 por canal, por mês. Você pode ativar/desativar a aceleração sempre que quiser com o comando /express.

/express source_channel_reference

Por exemplo, para acelerar o @slow-channel, use /express @slow-channel
Para alterar o canal que está sendo acelerado, primeiro desative o expresso para o canal anterior com o mesmo comando e, em seguida, ative-o para um novo canal. Você pode ver a lista de seus canais expressos usando o comando /express sem argumentos.

Outra maneira de tornar a entrega instantânea é usar a conexão direta. Todas as mensagens de uma conexão direta são enviadas instantaneamente. Observe que, se estiver usando uma conexão direta, não é necessário usar /express. A entrega a partir de uma conexão direta já está acontecendo instantaneamente.

Se você estiver interessado em um desses serviços, consulte aqui mais informações sobre como adquiri-los.

Se você tiver uma conexão direta

Assim, a entrega da mensagem é instantânea. Se você tiver constantemente um atraso perceptível na conexão direta, isso significa que a conexão precisa de configuração adicional. Use o comando /support para isso.

O “instantâneo” é realmente instantâneo?

“Instantâneo” varia de milissegundos a vários segundos. O bot em si funciona sem atrasos, mas podem ocorrer atrasos quando as mensagens são entregues pelo Telegram.

Além disso, depois que o Telegram introduziu a proteção contra cópia ao enviar mensagens de mídia de canais protegidos, o bot precisa processar essas mensagens de uma maneira especial. Isso pode levar a atrasos adicionais, dependendo do tamanho do arquivo. Em uma foto comum, por exemplo, esse atraso não será perceptível, o que não se pode dizer de um vídeo pesado.

Às vezes, fazemos uma atualização do sistema. Isso pode, de vez em quando, causar um atraso perceptível se a atualização ocorrer exatamente no momento em que a mensagem for exibida. Você pode verificar se a atualização do sistema está ocorrendo no momento com o comando /status

Nuances do trabalho com canais protegidos do Telegram

Se a fonte tiver proteção contra cópia, o bot terá que processar completamente o arquivo de mídia protegido. É por isso que as mensagens de mídia pesada levam mais tempo para serem entregues.

Recursos do Telegram Premium

Os titulares de contas premium podem usar smileys premium e legendas longas de mídia em suas mensagens. Os bots não têm permissão para usar nenhum deles. Portanto, a única maneira de enviar essas mensagens como elas são é ativar a entrega em nome de sua conta. Para fazer isso, a conta deve estar conectada por meio de uma conexão direta e ter um Telegram Premium ativo.

Além disso, o bot é capaz de enviar a legenda como uma mensagem separada. Se houver uma imagem com uma legenda na origem, haverá duas mensagens no destino: uma imagem e um texto. Dessa forma, a legenda não será cortada.

Webhooks ou chamadas para sua API

Às vezes, é necessário receber mensagens do Telegram em sua API. A primeira ideia que os desenvolvedores têm é usar um ponto de extremidade HTTP no estilo REST e receber solicitações do nosso bot em algum formato do tipo JSON.

Desencorajamos fortemente essa abordagem e deliberadamente não adicionamos essa funcionalidade ao bot. Essas solicitações tendem a não chegar ou a chegar várias vezes devido a vários problemas de rede. À medida que seu sistema evolui, você precisará “reproduzir” o histórico de chamadas, examinar os registros de chamadas do nosso lado para depurar problemas do seu lado, etc. Essa funcionalidade exigirá a criação de um produto separado de nossa parte.

Portanto, para essas tarefas, recomendamos que você use uma arquitetura de fila de mensagens. E, como já temos um mensageiro pronto à nossa frente, por que não usá-lo? Basta criar seu próprio bot mais simples, o que leva 15 minutos, e configurar o encaminhamento da fonte desejada diretamente para esse bot. Com essa abordagem, você terá um sistema extremamente confiável e preparado para o futuro.

Como posso descobrir por que nem todas as mensagens estão chegando?

Use o comando /support

Essa função está disponível apenas para conexões diretas. Com o comando /support, você pode executar um assistente que o ajudará a descobrir por que a mensagem não chegou ao destino ou teve um atraso. Sugerimos que você experimente esse método antes de tentar os outros.

Ativar o relatório de explicação

A primeira coisa que você deve fazer é ativar o explain-report com o comando

/settingchannel source_channel_reference explain on

Para cada nova mensagem, ele enviará um relatório explicando detalhadamente por que a mensagem não foi recebida. Se não entender como ler o relatório ou corrigir o filtro, entre em contato com o chat de suporte.

Pode ser que a mensagem tenha sido editada logo após a publicação. Se a mensagem original não passou por seus filtros, o bot também não conseguirá passar pela edição.

Se não houver nenhum relatório de uma nova mensagem na fonte, procure mais.

Se você tiver uma conta padrão

O problema provavelmente é um atraso ou uma mensagem muito grande de um canal protegido.

Se você tiver uma conexão direta

Verifique se sua conta conectada é membro do canal ou grupo de origem.

Verifique se o problema está relacionado a uma mensagem muito grande de um canal protegido.

Se esse não for o caso, envie ao nosso assistente o número de telefone da sua conta conectada e o número do canal ou grupo de origem. Em casos muito raros, é necessário um ajuste fino adicional de nossa parte.

Cópia das mensagens antigas do Telegram

Você pode copiar um histórico de um canal do Telegram usando o comando /history.

Se quiser usar configurações avançadas para um processo de cópia, como filtros e substituições, você precisará criar primeiro uma regra de encaminhamento usual usando o comando /new. Em seguida, aplique a configuração necessária a essa regra de encaminhamento. Depois disso, inicie um processo de cópia do histórico e ele usará as configurações de uma regra existente. Fácil!

Por que as mensagens entregues podem parecer diferentes da fonte?

Às vezes, a mensagem na fonte é editada após a publicação. Então, pode acontecer que o bot copie a mensagem antes que o administrador a edite. Nesse caso, a primeira versão da mensagem será entregue. Às vezes, as mensagens editadas nem sequer são marcadas como editadas.

No modo de conexão direta, é possível passar a edição da mensagem para o destino (a função é ativada por padrão). Isso resolverá o problema. Se você já tem uma conexão direta e se depara com edições não enviadas, veja a possível solução aqui.

Também pode ser que a mensagem original tenha passado por seus filtros e a edição não tenha sido aprovada. Assim, a mensagem não será alterada.

Acontece que um canal publica por engano uma mensagem duas vezes e depois exclui uma mensagem. Se você tiver um filtro duplicado, apenas a primeira mensagem será transmitida. Se o administrador excluir a primeira mensagem e editar a segunda, a edição falhará.

Por que podem surgir duplicatas?

Às vezes, na fonte, uma postagem é publicada duas vezes, por engano, e um pouco mais tarde uma das duplas é removida. Mas o bot pode já ter conseguido copiar as duas mensagens nesse momento. A maneira mais direta de resolver esse problema é ativar a transmissão de exclusão. Essa configuração só está disponível para conexões diretas. Se você tiver uma conta Standard, poderá usar um filtro de duplicatas.

Se você tiver ativado o filtro de duplicatas e as duplicatas ainda forem aprovadas, é possível que as mensagens não sejam as mesmas. Ative um relatório de explicação e compare o conteúdo das mensagens nos relatórios recebidos.

/settingchannel source_channel_reference explain on

Se você ainda não perceber a diferença, consulte as instruções mais detalhadas aqui.