メール内のVimeo埋め込みURLが正しく解析されませんでした

問題が判明しました。

つまり、バニラ(そのままの)iframeコードを貼り付けると、oneboxコードをバイパスする可能性があり、それをバイパスすると、結果のiframeコードに data-original-href が含まれなくなります。これは、メールテンプレートで使用されるリンクです。

data-original-href が欠落している場合、Discourseは動画を推測しようとしますが、それは最後の / の後の部分になり、もちろん非公開動画の場合はカバーされません。

たとえば、ブラウザの開発者ツール/要素の検査で確認すると、バニラiframeコードを使用したときの結果のiframeは次のようになります。

<iframe src="https://player.vimeo.com/video/508864124?h=fcbbcc92fa" width="640" height="360" frameborder="0" allow="autoplay; fullscreen; picture-in-picture" allowfullscreen></iframe>

<iframe src="https://player.vimeo.com/video/508864124?h=fcbbcc92fa" width="640" height="360" frameborder="0" allow="autoplay; fullscreen; picture-in-picture" allowfullscreen=""></iframe>

一方、URLのみを貼り付けてDiscourseにiframeに変換させる場合
https://vimeo.com/508864124/fcbbcc92fa。

<iframe class="vimeo-onebox" src="https://player.vimeo.com/video/508864124?h=fcbbcc92fa&amp;app_id=122963" data-original-href="https://vimeo.com/508864124/fcbbcc92fa" frameborder="0" allowfullscreen="" seamless="seamless" sandbox="allow-same-origin allow-scripts allow-forms allow-popups allow-popups-to-escape-sandbox allow-presentation"></iframe>

2番目の出力に追加された data-original-href="https://vimeo.com/508864124/fcbbcc92fa" に注目してください。バニラiframeを使用した場合にその属性を追加すれば機能するのではないかと推測できますが、おそらくDiscourseは任意の属性を追加することを許可していないため、機能しません。