Como Criar um Relay Temático no Mastodon com Filtro de Tags
🔍 WiseChecker

Como Criar um Relay Temático no Mastodon com Filtro de Tags

Relays do Mastodon permitem que instâncias compartilhem posts públicos sem seguir cada usuário individualmente. Sem um filtro de tags, um relay encaminha todos os posts públicos de todas as instâncias conectadas, o que pode inundar sua linha do tempo com conteúdo irrelevante. Construir um relay temático com filtro de tags resolve isso encaminhando apenas posts que contenham hashtags específicas, como #fotografia ou #tecnologia. Este artigo explica como configurar um relay do Mastodon que filtra por hashtag, abordando pré-requisitos, etapas de configuração e problemas comuns.

Principais Conclusões: Construir um Relay Temático no Mastodon

  • Servidor relay com suporte a filtro de tags: Use Mastodon Relay v2.0+ ou um fork compatível que suporte o parâmetro tags na configuração do relay.
  • Assinatura do relay pela instância: Sua instância do Mastodon deve assinar o relay usando uma URL que inclua o parâmetro de consulta ?tags=.
  • Filtragem de conteúdo baseada em hashtags: O relay encaminha apenas posts marcados com pelo menos uma das hashtags especificadas, mantendo a linha do tempo local focada.

ADVERTISEMENT

O Que é um Relay do Mastodon e Como Funciona o Filtro de Tags?

Um relay do Mastodon é um serviço que conecta várias instâncias do Mastodon. Quando uma instância assina um relay, ela envia todos os posts públicos de seus usuários para o relay. O relay então redistribui esses posts para todas as outras instâncias inscritas. Sem filtragem, cada post público de cada instância conectada aparece na linha do tempo federada local de cada assinante.

A filtragem por tags limita o relay a encaminhar apenas posts que incluam uma ou mais hashtags especificadas. O relay inspeciona cada post recebido em busca de qualquer tag na lista de filtros. Se houver correspondência, o post é encaminhado. Caso contrário, é descartado. Esse mecanismo exige que o software do relay suporte inspeção de tags no lado do servidor. A implementação mais comum é o Mastodon Relay versão 2.0 ou posterior, que aceita um parâmetro de consulta tags na URL de assinatura.

Para usar um relay temático, você precisa de dois componentes: um servidor relay que suporte filtro de tags e uma instância do Mastodon que assine esse relay com o parâmetro adequado. O relay não modifica os posts originais. Ele apenas decide se os encaminha com base nas tags presentes.

Pré-requisitos para Construir um Relay Temático

Antes de começar, verifique se as seguintes condições são atendidas:

  • Você tem acesso administrativo a uma instância do Mastodon (própria ou onde é administrador).
  • A instância executa Mastodon versão 3.5 ou superior, que suporta assinaturas de relay com parâmetros de consulta.
  • Você tem acesso a um servidor onde pode instalar o software do relay. Pode ser um VPS separado ou um contêiner Docker na mesma máquina da instância.
  • O software do relay deve ser Mastodon Relay v2.0 ou um fork que implemente o filtro tags. O repositório oficial está em github.com/glitch-soc/mastodon-relay.
  • Você escolheu as hashtags exatas que deseja filtrar. Use minúsculas, sem espaços. Por exemplo: fotografia, natureza, paisagem.

Passos para Configurar um Relay Temático no Mastodon

O processo tem duas partes principais: instalar e configurar o servidor relay e, em seguida, assinar sua instância a ele com o filtro de tags.

Parte 1: Instalar e Configurar o Servidor Relay

  1. Configurar o software do servidor relay
    No seu servidor, clone o repositório do Mastodon Relay e instale as dependências. Execute git clone https://github.com/glitch-soc/mastodon-relay.git, depois cd mastodon-relay e npm install. Configure o relay editando o arquivo .env com o domínio da sua instância e uma chave secreta. Por exemplo: LOCAL_DOMAIN=relay.exemplo.com e SECRET_KEY=sua-chave-aleatoria.
  2. Iniciar o serviço relay
    Execute npm start para iniciar o relay. O relay escuta na porta 3000 por padrão. Use um proxy reverso como Nginx para servi-lo na porta 443 com HTTPS. Sem HTTPS, as instâncias do Mastodon recusarão a assinatura.
  3. Verificar se o relay está acessível
    Abra https://relay.exemplo.com/api/v1/instance em um navegador. Você deve ver uma resposta JSON com metadados do relay. Se a página retornar um erro, verifique a configuração do proxy reverso e as regras de firewall.

Parte 2: Assinar Sua Instância com Filtro de Tags

  1. Faça login na sua instância do Mastodon como administrador
    Acesse https://suainstancia.com/admin/settings/relays. Esta é a página de administração de Relays. Se você não conseguir ver esta página, precisa de privilégios de administrador.
  2. Adicione o relay com o parâmetro de filtro de tags
    No campo de URL do relay, insira o endereço completo do relay seguido de ?tags= e suas hashtags separadas por vírgula. Por exemplo: https://relay.exemplo.com/?tags=fotografia,natureza,paisagem. Não inclua o símbolo # nos nomes das tags. Clique no botão Adicionar.
  3. Aprove a assinatura do relay
    A instância envia uma solicitação de assinatura para o relay. O relay deve aceitá-la. Verifique os logs do relay executando pm2 logs se usou PM2, ou journalctl -u mastodon-relay se usou systemd. Procure por uma linha como New subscriber: suainstancia.com. Se a assinatura estiver pendente, pode ser necessário aprová-la manualmente no lado do relay enviando uma solicitação POST para https://relay.exemplo.com/api/v1/subscribers/approve com o ID do assinante. A maioria das configurações aprova automaticamente após alguns segundos.
  4. Confirme que a assinatura está ativa
    Volte à página de administração de Relays na sua instância. O relay deve mostrar o status Ativo. Se mostrar Pendente ou Falhou, verifique os logs do relay e certifique-se de que sua instância consegue alcançar o servidor relay via HTTPS.

ADVERTISEMENT

Problemas Comuns ao Construir um Relay Temático

Relay Retorna 403 Proibido ao Assinar

Isso geralmente significa que o servidor relay está configurado para exigir autenticação ou o domínio da instância não está na lista de permissões. Edite o arquivo .env do relay e defina WHITELIST_MODE=false para permitir que qualquer instância assine. Reinicie o relay após fazer as alterações. Alternativamente, adicione o domínio da sua instância à variável WHITELIST como uma lista separada por vírgulas.

Nenhum Post Aparece Após a Assinatura

O filtro de tags pode ser muito restritivo. Confirme se os posts das instâncias conectadas realmente contêm as hashtags exatas que você especificou. As hashtags são sensíveis a maiúsculas/minúsculas no filtro do relay. Use apenas minúsculas. Verifique também se o relay está recebendo posts. Consulte os logs do relay para atividades recebidas. Se nenhuma atividade chegar, as instâncias conectadas podem não estar publicando posts públicos com essas tags.

Posts com Tags Extras Passam pelo Filtro

O filtro de tags usa lógica OU. Um post que contenha qualquer uma das tags listadas passará. Não é possível exigir que todas as tags estejam presentes. Se você quiser um filtro mais rigoroso, precisará modificar o código-fonte do relay ou usar uma ferramenta de filtragem separada. Essa limitação é proposital para manter o desempenho do relay alto.

Item Mastodon Relay v1.0 Mastodon Relay v2.0 com Filtro de Tags
Suporte a filtro de tags Não Sim
Parâmetro de URL de assinatura Nenhum ?tags=
Lógica do filtro N/A OU (qualquer tag correspondente passa)
Versão mínima do Mastodon 3.0 3.5
Requisitos de hardware do relay 1 CPU, 512 MB RAM 1 CPU, 512 MB RAM

Após concluir a configuração, sua instância receberá apenas posts públicos que contenham as hashtags definidas. Isso mantém a linha do tempo federada relevante para sua comunidade. Para expandir a cobertura de tópicos, adicione mais hashtags à URL do relay editando a assinatura no painel de administração. Você também pode assinar vários relays com diferentes conjuntos de tags. Para controle avançado, considere executar uma segunda instância de relay com um filtro de tags diferente em um subdomínio separado.

ADVERTISEMENT