Como Mover Vários Canais do Discord Entre Servidores via Exportação de Webhook
🔍 WiseChecker

Como Mover Vários Canais do Discord Entre Servidores via Exportação de Webhook

Mover vários canais do Discord de um servidor para outro pode ser uma tarefa tediosa se feita manualmente. Você precisa recriar cada canal, copiar permissões e republicar mensagens. O Discord não oferece um recurso nativo para mover ou copiar canais. Este artigo explica como usar ferramentas de exportação de webhook para transferir vários canais de texto, incluindo o histórico de mensagens, de um servidor de origem para um servidor de destino. Você aprenderá as etapas exatas para exportar o conteúdo do canal e importá-lo para novos canais, preservando a estrutura das mensagens e os carimbos de data/hora.

Principais Conclusões: Movendo Canais do Discord com Exportação de Webhook

  • Ferramenta de exportação de webhook (ex.: DiscordChatExporter): Exporta todas as mensagens de um canal de texto para um arquivo JSON ou CSV que preserva carimbos de data/hora, nomes de usuário e conteúdo.
  • Webhooks do Discord: Uma integração do servidor que pode postar mensagens programaticamente usando uma URL única; usado aqui para reproduzir mensagens exportadas em novos canais.
  • Configurações do Servidor > Integrações > Webhooks: O caminho do menu para criar uma URL de webhook no servidor de destino para cada canal que você deseja preencher.

ADVERTISEMENT

Como as Ferramentas de Exportação de Webhook Funcionam para Migração de Canais

O Discord não permite mover um canal entre servidores. A única maneira de transferir o conteúdo é exportar mensagens do canal de origem e depois importá-las para um novo canal no servidor de destino. Ferramentas de exportação de webhook como o DiscordChatExporter (gratuito, código aberto) capturam cada mensagem em um canal, incluindo embeds, anexos e reações. O arquivo exportado pode então ser usado com um script ou uma ferramenta de importação de webhook para reproduzir essas mensagens no canal de destino.

O processo tem três fases: exportação, criação de canal e importação. Você deve ter a permissão Gerenciar Servidor no servidor de origem para exportar mensagens e a permissão Gerenciar Webhooks no servidor de destino para criar webhooks. Os limites de taxa da API do Discord se aplicam durante a fase de importação, então canais grandes podem levar várias horas para transferir.

Pré-requisitos Antes de Mover Canais

Antes de começar, confirme que você tem o seguinte:

  • Acesso ao servidor de origem: Você precisa da permissão Gerenciar Servidor no servidor onde os canais existem atualmente.
  • Acesso ao servidor de destino: Você precisa das permissões Gerenciar Servidor e Gerenciar Webhooks no servidor onde deseja criar os novos canais.
  • DiscordChatExporter instalado: Baixe a versão mais recente do repositório oficial do GitHub. Ele funciona em Windows, macOS e Linux.
  • Python ou um script de importação de webhook: Opcional, mas recomendado para reprodução automatizada. Um script Python simples usando a biblioteca requests pode ler o JSON exportado e postar mensagens via webhook.

ADVERTISEMENT

Passo a Passo: Exportar Canais do Servidor de Origem

  1. Abra o DiscordChatExporter
    Inicie o aplicativo. Se você estiver usando a versão CLI, abra um terminal e navegue até a pasta que contém o executável.
  2. Obtenha seu token do Discord
    No Discord, pressione Ctrl+Shift+I para abrir as Ferramentas do Desenvolvedor. Vá para a aba Application, depois Local Storage. Clique na entrada discord.com e procure pela chave token. Copie o valor dela. Mantenha este token privado — ele concede acesso total à sua conta.
  3. Insira o token no DiscordChatExporter
    Na versão GUI, cole o token no campo Token e clique em Fetch Guilds. Na versão CLI, use o comando: DiscordChatExporter.Cli exportguild -t SEU_TOKEN -g ID_DO_SERVIDOR. Substitua SEU_TOKEN e ID_DO_SERVIDOR pelo seu token e pelo ID do servidor de origem.
  4. Selecione os canais a exportar
    Após buscar os servidores, uma lista de canais aparece. Marque as caixas ao lado dos canais de texto que você deseja mover. Você também pode selecionar todos os canais marcando a caixa superior.
  5. Escolha o formato de exportação e a pasta de saída
    Selecione JSON como formato de exportação. O JSON preserva a maioria dos dados, incluindo IDs de mensagens e carimbos de data/hora. Escolha uma pasta no seu computador onde os arquivos de exportação serão salvos. Clique em Export.
  6. Aguarde a exportação terminar
    A ferramenta baixará todas as mensagens de cada canal selecionado. Canais grandes com milhares de mensagens podem levar vários minutos. Quando concluído, você terá um arquivo .json por canal.

Passo a Passo: Criar Canais e Webhooks no Servidor de Destino

  1. Crie novos canais de texto
    No servidor de destino, clique com o botão direito na lista de canais e selecione Criar Canal. Escolha Canal de Texto. Dê ao canal o mesmo nome do canal de origem para consistência. Repita para cada canal que você está movendo.
  2. Abra as configurações do canal
    Clique no ícone de engrenagem ao lado do nome do novo canal. Selecione Integrações no menu à esquerda.
  3. Crie um webhook
    Clique em Criar Webhook. Dê um nome ao webhook, como “Import Bot”. Clique em Copiar URL do Webhook e salve em um arquivo de texto. Repita este passo para cada novo canal, salvando a URL junto com o nome do canal correspondente.
  4. Defina permissões do canal (opcional)
    Se o canal de origem tinha substituições de permissão específicas, recrie-as no canal de destino. Vá para a aba Permissões e adicione as mesmas substituições de cargo ou membro.

ADVERTISEMENT

Passo a Passo: Importar Mensagens Usando Webhooks

Você pode importar mensagens manualmente postando cada mensagem via webhook, mas isso é impraticável para mais de algumas mensagens. Use um script para automatizar o processo. Abaixo está um exemplo em Python que lê o arquivo JSON exportado e posta mensagens na URL do webhook.

  1. Instale Python e requests
    Baixe Python de python.org. Abra um terminal e execute pip install requests.
  2. Crie o script de importação
    Abra um editor de texto e cole o código a seguir. Salve como import_channels.py.
import json
import requests
import time

# Substitua pela sua URL de webhook
WEBHOOK_URL = "https://discord.com/api/webhooks/..."

# Caminho para o arquivo JSON exportado
EXPORT_FILE = "channel_export.json"

with open(EXPORT_FILE, "r", encoding="utf-8") as f:
    messages = json.load(f)

for msg in messages:
    # Monta o payload
    payload = {
        "content": msg["content"],
        "username": msg["author"]["name"],
        "avatar_url": msg["author"]["avatarUrl"]
    }
    # Adiciona anexos se presentes
    if msg.get("attachments"):
        payload["content"] += "\n" + "\n".join([a["url"] for a in msg["attachments"]])
    
    response = requests.post(WEBHOOK_URL, json=payload)
    if response.status_code == 429:
        # Limite de taxa — aguarde e tente novamente
        time.sleep(5)
        response = requests.post(WEBHOOK_URL, json=payload)
    # Aguarda 1 segundo entre mensagens para evitar limites de taxa
    time.sleep(1)

print("Importação concluída.")
  1. Execute o script para cada canal
    Abra um terminal na pasta que contém o script. Execute python import_channels.py. O script postará cada mensagem do arquivo de exportação no canal associado à URL do webhook. Repita para cada canal, alterando as variáveis WEBHOOK_URL e EXPORT_FILE conforme necessário.
  2. Verifique as mensagens importadas
    Confira os canais de destino para garantir que as mensagens apareçam na ordem correta. Os carimbos de data/hora refletirão o momento da importação, não o horário original. Para preservar os carimbos originais, você precisaria de um bot com permissão Gerenciar Webhooks e capacidade de modificar o horário de criação da mensagem — webhooks padrão não podem fazer isso.

Problemas Comuns Após Mover Canais

Mensagens aparecem em ordem inversa

O arquivo de exportação pode listar mensagens da mais antiga para a mais nova. O script acima as posta na ordem em que aparecem no arquivo. Se as mensagens aparecerem invertidas, inverta a lista antes de postar. Adicione messages.reverse() após o bloco with open.

Erros de limite de taxa durante a importação

O Discord limita postagens de webhook a 30 mensagens por minuto por webhook. O script inclui um atraso de 1 segundo. Se você ainda receber erros 429, aumente o atraso para 2 segundos. Para canais muito grandes, considere dividir a exportação em vários arquivos e importar ao longo de várias horas.

Anexos e embeds não são preservados

Webhooks padrão só podem postar texto e links para anexos. Os arquivos originais não são reenviados. O script acima adiciona URLs de anexos como links simples. Para preservar os arquivos reais, você precisaria baixar cada anexo e reenviá-lo via webhook, o que é complexo e demorado. A maioria dos usuários aceita que os anexos sejam perdidos durante a migração.

Permissões do canal não são copiadas

O processo de exportação e importação não transfere substituições de permissão. Você deve recriar manualmente quaisquer permissões específicas de cargo ou membro nos canais de destino. Use os mesmos nomes de cargos no servidor de destino para simplificar isso.

Comparação: Copiar e Colar Manual vs Exportação de Webhook vs Migração com Bot

Item Copiar e Colar Manual Exportação de Webhook Migração com Bot
Histórico de mensagens preservado Não Sim (texto e links) Sim (texto, anexos, carimbos)
Anexos preservados Não Apenas links Sim (reenviados)
Tempo necessário para 1000 mensagens Horas ~17 minutos ~5 minutos
Permissões transferidas Não Não Sim (com permissões do bot)
Habilidade técnica necessária Nenhuma Baixa (executar ferramenta + script) Média (configuração do bot)

O método de exportação de webhook é o melhor equilíbrio entre velocidade e simplicidade para a maioria dos usuários. Se você precisa de preservação completa de anexos e cópia de permissões, considere usar um bot de migração dedicado como Channel Mover ou Xenon.

Agora você pode mover vários canais do Discord entre servidores usando ferramentas de exportação de webhook. Comece exportando canais com o DiscordChatExporter, depois crie novos canais e webhooks no servidor de destino. Use o script Python fornecido para importar mensagens automaticamente. Para uma migração mais completa que inclua anexos e permissões, explore soluções baseadas em bot como Xenon. Sempre teste a importação em um canal pequeno primeiro para verificar se o script funciona com seu arquivo de exportação.

ADVERTISEMENT