Bom, que decepção enorme!
Eu achava que o Google não havia mexido nisso desde fevereiro de 2015, mas estou errado.
Parece que houve um redesenho completo em 2020 e um ajuste no logotipo em 2021.
Bom, que decepção enorme!
Eu achava que o Google não havia mexido nisso desde fevereiro de 2015, mas estou errado.
Parece que houve um redesenho completo em 2020 e um ajuste no logotipo em 2021.
Estou pensando em usar as APIs do GMAIL e do Discourse para converter uma thread de e-mail em uma postagem no Discourse. Analisei as APIs do Google e consegui obter os e-mails, mas tenho algumas dúvidas sobre elas.
Interessante. É possível usar a API do Gmail para acessar e-mails de Grupos do Google ou você simplesmente tem uma conta do Gmail que contém todos os e-mails enviados ao grupo?
Sugiro que você salve todas as mensagens em arquivos *.eml individuais. Você precisará decodificar a mensagem antes de salvar se a mensagem inteira (incluindo os cabeçalhos de e-mail) estiver codificada em base64. Depois, siga as etapas de Migrate a mailing list to Discourse (mbox, Listserv, Google Groups, etc) (menos as etapas dos Grupos do Google). O script de importação cuidará das postagens, anexos e muito mais.
Sou membro do grupo, então consigo buscar os e-mails usando meu endereço de email. Toda a mensagem de e-mail, incluindo os cabeçalhos, fará parte da string codificada.
Vou tentar sua abordagem para importar no Discourse, pelo menos para um tópico.
Bem, nesse caso, você pode nem precisar da API do Gmail. Conectar um cliente de e-mail, como o Thunderbird, à sua conta do Gmail e exportar e-mails individuais ou um arquivo mbox deve ser suficiente…
Agora eu gostaria muito de saber como isso funciona. Eu tinha a impressão de que o Google Groups não suportava NNTP.
Não é NNTP, mas sim uma API REST.
Minha caixa de correio tem mais de 200 GB e, para obter e-mails específicos de grupos, talvez eu precise baixar todos esses e-mails usando o Thunderbird. Além disso, o Thunderbird não está mostrando os grupos do Google; todos os e-mails aparecem apenas na Caixa de Entrada. Ele também está baixando apenas 200 e-mails por vez. Então, não tenho certeza de quanto tempo levaria para obter os e-mails, etc.
Existe alguma maneira alternativa de obter apenas dados de um grupo do Google e exportá-los para mbox?
Olá Gerhard Schlager,
Estamos tentando migrar nossos grupos do Google para o Discourse. Seguimos todas as etapas acima conforme o documento, mas o processo apenas cria a categoria no Discourse e não importa os dados. Agradeceríamos muito se você pudesse responder a isso rapidamente.
A única maneira que conhecíamos não funciona mais. Se você conhece qualquer maneira de obter os dados, então deve fazê-lo. Se você sabe como obtê-los, provavelmente deveria começar a fazer isso o mais rápido possível, antes que esse método também deixe de funcionar.
Se os dados estiverem na sua caixa de correio, pode ser possível usar a API do Gmail para baixá-los. No entanto, será complicado, pois um desenvolvedor precisaria ter acesso a uma caixa de correio com dados de grupos do Google para escrever o código.
A menos que seja um cliente corporativo que exija isso, duvido que a cdck (ou seja, discourse.org) vá escrever esse código em breve. Você pode perguntar em Marketplace. Eu provavelmente não consideraria fazer isso por menos de US$ 2000 e, dada a frustração que tive com o script de importação do Google Groups no passado, provavelmente exigiria US$ 5000. Ou, claro, outra pessoa pode ter habilidades melhores ou mais paciência.
Uma abordagem que pode funcionar é usar o Integromat para criar uma conversão, supondo que os aplicativos do Google Groups e do Discourse estejam disponíveis. Ou então usar chamadas HTTP para acessar as APIs REST por conta própria.
O Integromat é um sistema de integração e migração de dados. É muito poderoso e permite realizar muitas tarefas com pouco ou nenhum código.
Eu tentei o Google Takeout, tornando-me o proprietário do nosso grupo do Google Workspace e conseguindo baixar as conversas do grupo do Google. Ainda estou trabalhando na importação.
Algumas desvantagens dessa abordagem.
Oi @Anjana_Raghavendra_P - você conseguiu fazer uma importação simples usando essa abordagem?
Muito obrigado!
Sim, sou capaz de baixar o arquivo mbox do Takeout e importá-lo usando as etapas mencionadas na postagem original.
Posteriormente, como estamos usando o serviço PAAS do Discourse, fornecemos o arquivo para a equipe técnica do Discourse, que conseguiu importar o conteúdo para a plataforma do Discourse.
Fico feliz em saber - obrigado!
Encontrei o problema do @sturdy2 quando, em settings.yml, alterei a primeira linha data_dir: /shared/import/data, de seu padrão.
Mensagem principal: não a altere, pois ela se refere ao caminho dentro do container docker de importação, não na máquina principal.
Tenho uma pergunta sobre reiniciar uma importação?
Não sou um desenvolvedor, mas consegui importar com sucesso dois arquivos mbox que vieram de um sistema chamado Topicbox Group Email. Fiz minha importação de teste em uma instância temporária do Discourse que configurei no Digital Ocean. E consegui importar meus dois arquivos mbox de exemplo em categorias existentes que já havia criado no Discourse, graças às notas sobre como definir a categoria.custom_fields["import_id"] = "mydir" mencionadas acima.
Yay! Mas se eu quiser importar mais arquivos mbox, preciso executar todos os comandos mencionados no FAQ 2.2, que indica que ele “excluirá tudo”?
Consegui definir com sucesso meu “import_id” para duas categorias diferentes como uma importação de teste inicial. Funcionou! Meus dois arquivos mbox foram importados para as categorias existentes que especifiquei.
Tenho 18 categorias diferentes com as quais preciso fazer isso. Não sei nada sobre Ruby. Posso criar um arquivo que defina o nome do diretório para cada uma das minhas diferentes categorias para que eu não precise inserir manualmente cada linha na interface de linha de comando do Ruby?
Sim. Pesquise mais no Google por "ruby for each". E crie um array com algumas das categorias.
Não, você não precisa. O importador suporta importações incrementais. Ele importará apenas novos dados na próxima execução. Por favor, não execute os comandos mencionados em 2.2, a menos que você queira começar do zero.
Infelizmente, isso não é possível no momento. Você precisa atribuir a cada categoria o import_id se quiser importar para categorias existentes.
Obrigado @gerhard por todo o seu incrível trabalho nisso! Eu não sou um desenvolvedor, mas consegui concluir uma migração de um sistema de listas de discussão chamado Topicbox. Consegui obter arquivos mbox do Topicbox para importar para o Discourse. Durante minhas etapas de tentativa e erro, documentei tudo em uma postagem de blog. Então, se tudo bem? Eu queria colar um link para essa postagem de blog para outros usuários do Topicbox que queiram converter para o Discourse.