Odysee.com の埋め込みをサポート

Discourseチームの皆さん、OdyseeのTomです!最近Embedlyと連携したのですが、皆さんのソフトウェアのユーザーから、odysee.comのURLでプレビューは表示されるものの、プレーヤーが機能しないというフィードバックがありました。これをサポートするには何が必要でしょうか?OpenGraphにも対応していますが、そちらの方が簡単であれば対応可能です。詳細については、iframelyデバッガーで確認できます。

以下に例を挙げます。

https://odysee[dot]com/@veritasium:f/we’re-building-computers-wrong-(for:f (この例は、アポストロフィや括弧のため、うまく解析されていないようです)

「いいね!」 4

読んでみました: GitHub - discourse/onebox: (DEPRECATED) A gem for turning URLs into website previews

odysee.com は、単にホワイトリストに追加するだけで動作するはずです。

  1. ドメインは許可リストに登録する必要があります。
  2. onebox する URL はルート URL であってはなりません (例: http://example.com は動作しませんが、http://example.com/page は動作します)。
  3. onebox する URL が oEmbed で応答し、rich タイプの場合: html コンテンツには <iframe> が含まれている必要があります。iframe を含まない応答は onebox されません。

これはサイトごとに発生するのか、それともどこか別の場所で発生するのでしょうか?

「いいね!」 1

og:video:type タグは video/mp4 となっていますが、og:video の URL は HTML を返していますか?

もしかしたら、og:video タグの URL は

https://odysee.com/$/stream/turning-plastic-gloves-into-hot-sauce/f5036fb3221909f8c011b277eea19642ddeae1da

ではなく

https://odysee.com/$/embed/turning-plastic-gloves-into-hot-sauce/

ということでしょうか?

「いいね!」 3

埋め込みリンクは、サイトのレンダリングや、既にサインインしているユーザーの認証を可能にするため、維持したいと思います。YouTubeと比較したところ、彼らのvideo:typeは「text/html」でした。もしそれが役立つなら、それを変更することを試すことができます。

それ以外は、現在の設定でTwitter/Facebookおよびembedlyプロバイダーに問題はありません。

「いいね!」 1

それを変更すれば、すぐに機能するようになります。

そうでなければ、discourse/lib/onebox/engine at main · discourse/discourse · GitHub にある例のように、サポートを追加するPRを送信してみてください。

「いいね!」 2

やってみます、ありがとうございます!

「いいね!」 3

マイクテスト:
このリンクで試しましたが、このホストでは投稿できないと表示されました(スペースを2つ追加しました):

ここのプレビューでは異なって見えますが、再生できないようです。目標はサイト上で直接再生できるようにすることです。

iframe共有コードもありますが、それは何らかの形で機能しますか?

「いいね!」 1

そして今、それは機能しました。おそらくあなたがホワイトリストに追加したのでしょう。しかし、プレイヤーがいません。Why Is The Manhattan DA Sabotaging The Investigation Into Donald Trump?

プレイヤーを埋め込むために他に試せることはありますか、それともoneboxに統合することを検討すべきでしょうか?

「いいね!」 1

og:video:typevideo/mp4 から text/html に変更したため、標準の HTML 記事のワンボックスが取得されます。

  • 動画ファイルを埋め込みたい場合は、og:video タグで動画ファイルを返し、og:video:type に正しい値を設定する必要があります。

  • カスタム動画プレーヤーを含む任意の HTML を埋め込みたい場合は、ワンボックスのルールに従う必要があります。

    • oembed は iframe を返す必要があります (これは問題ないようです)。
    • サイトは、それを使用したい各 Discourse インスタンスで手動で許可されている必要があります。テストしてみましょう。

サイトが https://odysse.comallowed iframes サイト設定に追加すれば、機能するようです。

「いいね!」 2

素晴らしいニュースですね。ここでテストしてみます。通常のOdyseeリンクですか、それともiframeコードですか?

「いいね!」 1

https://meta.discourse.org/raw/219765/10 で私の生の投稿を確認していただければわかるように、通常のリンクです。

Meta で odysse.com を許可された iframe から削除したため、これ以上機能しません。

「いいね!」 3

ラファエルさん、ありがとうございます!もしodysee.comのアカウントを登録されたら、メールアドレスかチャンネル名をメッセージで送ってください。迅速なサポートの謝礼としてクレジットをお送りします。

「いいね!」 4