Configurando login do Twitter e embeds ricos para Discourse

Você ainda tem os embeds ricos? Eu também fui suspenso, na verdade não me importo com o login do Twitter (eu o desativei de qualquer maneira), mas eu o estava usando para incorporar tweets, então se recriar funcionar para isso, ótimo.

Parece que é possível na teoria:

Mas acho que o Discourse não usa essa API.

Posso confirmar que ainda funciona para rich embeds, então sim, basta apagar seu aplicativo antigo e recriá-lo da mesma forma que nas instruções do OP e ele funcionará como antes.

Recriar não funcionou para rich embeds para mim. Recriei o aplicativo dentro do mesmo projeto e depois tentei recriar ambos os projetos e aplicativos.

2 curtidas

Sim, percebi que, embora eu tenha recriado meu projeto e meu aplicativo, isso não funcionou para mim também. Eu até tentei usar uma conta de desenvolvedor completamente nova e ainda não está funcionando.

Você está usando as chaves corretas? É a chave/segredo da API, não o segundo conjunto de clientes que ele lhe dá (digo isso porque usei o conjunto errado primeiro e obviamente não funcionou)

Eu completamente apaguei o aplicativo original (que tinha o aviso dizendo que estava suspenso) e o iniciei novamente (aplicativo de desenvolvimento, não produção ou staging). Não acredito que precisei excluir o projeto, apenas o aplicativo. Preenchi a mesma URL de callback do site que usei anteriormente e a URL do site. Não adicionei os Termos de Serviço/privacidade (isso só é necessário se você quiser usar logins, que deixei desativados). Não selecionei “capturar e-mails” ou qualquer que seja a opção. Eu o configurei como somente leitura (apenas ler tweets, nenhuma das outras opções sobre postar ou qualquer coisa).

Em seguida, no discourse, deixei “habilitar autenticação do Twitter” desmarcado e adicionei as chaves da API.

Desculpe se estou perdendo alguma coisa, não consigo ver todas as opções que selecionei e tal, a menos que eu o exclua, e ele não me permite criar um segundo aplicativo de desenvolvimento para passar pelas etapas novamente. Mas segui o guia na OP (mesmo que a interface seja um pouco diferente agora) para tudo depois de apagar o projeto original. Se houver alguma opção que eu não mencionei, se você postar uma captura de tela da configuração, posso dizer o que escolhi. Fiz tudo no meu celular em cerca de 5 minutos e está funcionando, então infelizmente não sei bem como/por quê além disso.

Acabei de postar isso há um minuto

Sim, são essas que eu tentei usar. Eu tentei recriá-las também e ainda assim não funcionou.

Editar: Apenas para clareza, você não pagou pelo acesso, pagou @Kartoon? Você está usando o nível gratuito?

Pergunto porque não está claro se o endpoint GET para tweets está disponível no nível gratuito. Parece que pode não estar, o que obviamente seria um problema.

Sem sorte aqui também, segui os mesmos passos. Estranho, será que é problema do Twitter?

1 curtida

Não, eu não paguei, eu peguei o plano básico, de jeito nenhum eu pagaria $100 por mês por essa função. Também não tenho nenhuma informação de pagamento, então não há como eles terem me cobrado acidentalmente, embora o painel seja super básico e não especifique realmente nenhum detalhe sobre nada.

Honestamente, não tenho ideia então, eu fiz o guia do OP provavelmente uns 6 meses atrás para adicioná-lo originalmente, fiz a aplicação ou o que quer que seja para o acesso superior. Recebi o e-mail idêntico que foi postado aqui hoje e apenas deletei o aplicativo, o recriei e funcionou imediatamente.

Você está tentando ativar a parte de login do Twitter também? Talvez as duas funções não funcionem mais juntas? Eu nunca tive isso habilitado no meu antigo e não habilitei agora. Essa é realmente a única coisa em que consigo pensar. Eu tentaria recriar o aplicativo para você, mas você só pode ter um desenvolvimento por vez, e vendo como vocês estão tendo problemas, estou um pouco nervoso em deletar o aplicativo e refazer os passos novamente caso eu tenha algum problema estranho que o faça funcionar agora.

Tentei postar 5 ou mais tweets diferentes e todos estão funcionando bem.

Meu projeto ainda tem status “elevado”, o seu tem?

Editar: Encontrei uma maneira de ver as configurações que usei.

Minha URL de callback é

> https://mysite.ca/auth/twitter/callback

Talvez esteja secretamente restrito geograficamente? Embora eu esteja no Canadá com um domínio canadense, então se você estiver nos EUA, não consigo imaginar que seja o caso.

Está funcionando aqui sem imagens em Tweets oneboxed (provavelmente relacionado às últimas alterações na API deles).

Estou recebendo imagens também, você pode me enviar um link de um tweet que não está sendo exibido corretamente para você para que eu possa testar esse específico?

1 curtida

Esqueça, é algo relacionado ao meu servidor Discourse ou algo assim (porque está funcionando aqui no Meta).

Recebi o mesmo e-mail, mas não consigo ver nenhum banner ou aviso em lugar nenhum. Parece que estou no plano gratuito… essa interface é realmente feita por macacos malucos, e a única coisa que me importa é que o embed funcione. Nós realmente não nos importamos em postar coisas no Twitter a partir do nosso fórum.

Pedi aos meus usuários para me avisarem se notarem algo errado.
Não vou mexer em nada nas configurações do Twitter, pois parece que toda vez que você muda algo, algo quebra.

Os embeds existentes do Twitter no fórum estão lá. Adicionar novos não me dá a pré-visualização do Discourse enquanto você está escrevendo sua postagem, mas quando postadas, elas aparecem.

Aqui está uma ressalva…

Se uma imagem ou vídeo foi anexado manualmente ao Tweet em questão, ele será carregado no onebox.

Exemplo:

Se a imagem foi puxada automaticamente de um URL para o Tweet em questão, isso não parece carregar no onebox. Talvez sempre tenha sido assim, não me lembro.

Exemplo:

A propósito, a pré-visualização dos links do Twitter aparece aqui no Meta no painel de pré-visualização enquanto digito. Não estou vendo essa funcionalidade no meu fórum.

Não parece importar qual opção eu seleciono aqui:

Posso confirmar que as configurações do @Kartoon também estão funcionando na minha instância. Eu tinha um URI de callback incorreto no lado do Twitter, o que impediu que funcionasse no início, então talvez verifique isso?

1 curtida

Terei que esperar até estar em um PC para verificar se recebo as prévias, não tenho ideia, pois corrigi no meu telefone e não vejo a caixa de prévia, apenas sei que elas aparecem depois de postadas, obviamente.

Tenho o mesmo comportamento que você tem com o segundo tweet, mas igualmente não posso dizer se sempre foi assim ou se isso é novo.

Notei que se você tentar postar o mesmo link novamente depois que o onebox falhar, ele não tentará carregar novamente. Um link diferente é necessário toda vez que você tentar.

Quanto aos tweets com links, não acho que eles já tenham carregado o conteúdo vinculado.

Não mudei nada desde ontem, mas tentei hoje e os rich embeds voltaram a funcionar.

Acredito que isso se aplica a qualquer coisa que seja exibida em onebox. Presumo que tenha algo a ver com a forma como é armazenado em cache quando você o posta, porque quando você o posta pela segunda vez, ele também é processado mais rapidamente.

Mas, como no Google Drive, se você postar um link para uma pasta restrita, ele exibirá um texto sobre “faça login para ver este item”. Se você o tornar público e postar novamente, ele ainda exibirá isso em vez da descrição correta da pasta. Ou quando os links do IMDb começaram a se transformar em pôsteres, depois que isso foi corrigido, todos que já haviam se transformado em pôsteres permaneceram assim. Provavelmente há uma maneira de fazer algo a respeito, mas nunca foi um grande problema para mim.

Muito estranho… com toda a instabilidade que está aparecendo no Twitter, talvez seja apenas isso, eles provavelmente tiveram uma enxurrada de pessoas mudando coisas se todos receberam aquele e-mail, então talvez estivesse fazendo… alguma coisa. Pelo menos funciona agora, lol.

O mesmo, então provavelmente foram problemas do lado do Twitter.