Facebook / Instagram oneboxes provavelmente falharão a partir de hoje, 24 de outubro de 2020

Isso já foi resolvido pela @team?

Os endpoints oEmbed foram oficialmente descontinuados.

Li sobre isso em alguns tópicos aqui e foi anunciado pelo FB há muito tempo:

https://developers.facebook.com/docs/plugins/oembed/

Acho que será necessário adotar uma abordagem semelhante à dos oneboxes do Twitter daqui para frente.

Está nas mãos de @sam e @techAPJ

Olhando para:

Parece que ainda está funcionando e já passamos de 24 de outubro.

Parece que estamos usando o Open Graph aqui:

O meta name="description" parece estável, mesmo que o Facebook decida descartar o Open Graph um dia.

Não estou vendo realmente que precisemos fazer algo especial aqui @techAPJ

Algo está realmente quebrado hoje?

O oneboxing do Instagram está atualmente quebrado aqui no meta:

https://www.instagram.com/p/CGyuQuwoMFR

… isso mesmo após termos atualizado o onebox do Instagram para usar tags OpenGraph.

O oneboxing do Instagram também está atualmente quebrado em nossos sites hospedados.

Isso será abordado em algum momento ou em algum tipo de backlog?

Sim, é isso. Não há um cronograma definido, mas tenho visto discussões acontecendo. Acredito que, no momento, estamos trabalhando para determinar se conseguimos obter as informações necessárias para o onebox sem nenhuma credencial, ou se precisaremos seguir um caminho semelhante ao embeds ricos do Twitter.

https://www.instagram.com/p/BZDhAJuFH-b/

Com certeza precisamos depurar isso (@jamie.wilson está investigando como fornecer detalhes melhores sobre por que não criamos uma onebox para o usuário final) … no meu caso acima, temos:

        <title>
Amazing Kitchen Gadgets no Instagram: "Acabamos de nos atualizar sobre o #GBBO 😱😱 Você assistiu na outra noite ou ainda não viu? Conte-nos sua opinião! 🍰🍰…"
</title>

   <meta content="11 curtidas, 1 comentário - Amazing Kitchen Gadgets (@amazingkitchengadgetuk) no Instagram: "Acabamos de nos atualizar sobre o #GBBO 😱😱 Você assistiu na outra noite ou ainda não viu…" name="description" />
    <meta property="og:site_name" content="Instagram" />
    <meta property="og:title" content="Amazing Kitchen Gadgets no Instagram: "Acabamos de nos atualizar sobre o #GBBO 😱😱 Você assistiu na outra noite ou ainda não viu? Conte-nos sua opinião! 🍰🍰…" />
    <meta property="og:image" content="https://instagram.fsyd7-1.fna.fbcdn.net/v/t51.2885-15/e35/21688697_318778721927636_8744554647311613952_n.jpg?_nc_ht=instagram.fsyd7-1.fna.fbcdn.net&nc_cat=108&nc_ohc=YpwZaaId-vUAX-03OGr&tp=18&oh=3b6a96f126f5841c524572b0ed062678&oe=5FC8972F" />
    <meta property="og:description" content="11 curtidas, 1 comentário - Amazing Kitchen Gadgets (@amazingkitchengadgetuk) no Instagram: "Acabamos de nos atualizar sobre o #GBBO 😱😱 Você assistiu na outra noite ou ainda não viu…" />

Parece haver informações suficientes para criar uma onebox. Precisamos depurar por que não estamos obtendo uma onebox aqui (e explicaremos isso aos usuários finais em uma atualização futura).

Obrigado pelo seu apoio!

Oi, estou na versão 66ecefba52f4d907f035bc7c445d98883e1ff792 e algo estranho está acontecendo com meus oneboxes do Instagram. Ele apenas cria uma única tag âncora com o domínio do site, seguida pela URL do Instagram, que obviamente não existe… Agora, nem consigo desabilitar esse comportamento?

Obtive um token de acesso do app do FB/Insta via oEmbed com:
curl -X GET "https://graph.facebook.com/oauth/access_token ?client_id={your-app-id} &client_secret={your-app-secret} &grant_type=client_credentials"

Testei a API oEmbed com curl -X GET \ "https://graph.facebook.com/v9.0/instagram_oembed?url=https://www.instagram.com/p/fA9uwTtkSN/&access_token=IGQVJ..." e funcionou perfeitamente… Achei que o Discourse estivesse usando isso (discourse/spec/components/oneboxer_spec.rb at 331236d6d790dd41538668469f16f853c5699884 · discourse/discourse · GitHub)

Não há nada útil ou relacionado em /logs… Tem alguma maneira de eu depurar isso?

Mesma imagem no Meta:
https://www.instagram.com/p/CHyvKpuFWXH/

Obrigado desde já! :heavy_heart_exclamation:

Você adicionou o token de acesso do aplicativo à configuração do site facebook app access token?

Acho que sim, é o app id (pipe | ) segredo base64, certo?

edição: está funcionando em outra instância do Discourse que eu gerencio, com as mesmas credenciais, então acho que elas estão corretas.

tentei /safe-mode e ainda sem sorte, estou apenas comparando as configurações entre as instâncias agora

isso é o que /onebox?url=https%3A%2F%2Fwww.instagram.com%2Fp%2FCHxqj3bMxJc%2F&refresh=false&category_id=15&topic_id=21558 retorna:

<aside class="onebox instagram">
  <header class="source">
      <a href="https:/www.instagram.com/p/CHxqj3bMxJc" rel="noopener"></a>
  </header>
  <article class="onebox-body">
    <h3><a href="https:/www.instagram.com/p/CHxqj3bMxJc" rel="noopener">@</a></h3>



  </article>
  <div class="onebox-metadata">
    
    
  </div>
  <div style="clear: both"></div>
</aside>

Corrigido removendo discourse-onebox-assistant

Obrigado pela dica. Não tenho tempo para olhar isso agora, mas vou ter em mente quando tiver oportunidade. PR é bem-vindo.

Empurrei uma atualização para incluir o novo código do Discourse. Espera-se que a compatibilidade tenha melhorado.