Tentativa de ter uma onebox do YouTube

Desculpe, estou com outro problema no meu plugin que se comunica com uma api.

Eu recupero várias informações que insiro em um tópico com base em uma pesquisa. Meu problema é que recebo meu link de vídeo do youtube, mas ele é inserido como texto puro e não como onebox como eu gostaria. Tentei vários métodos, mas estou travado, e eu quero que ele seja compatível com markdown e rich text.

Aqui está parte do meu código que trata da gestão de vídeo

const videoTags = Array.from(xmlDoc.getElementsByTagName(“video”));
const frenchVideos = videoTags.filter(v => (v.getAttribute(“language”) || “”).toLowerCase().includes(“french”));

  if (frenchVideos.length > 0) {
    message += `\u003chr\u003e\u003ch3\u003e🎥 Vídeos de regras (FR) :\u003c/h3\u003e`;

    frenchVideos.slice(0, 3).forEach(video => {
      let vTitle = (video.getAttribute("title") || "Vídeo")
        .replace(/How to play/gi, "Como jogar")
        .replace(/Rules/gi, "Regras");
      const vLink = video.getAttribute("link");

      // 1. O título no seu parágrafo
      message += `\u003cp\u003e\u003cstrong\u003e📖 ${vTitle}\u003c/strong\u003e\u003c/p\u003e`;
      
      // 2. UM PARÁGRAFO VAZIO (Simula o pressionamento de 'Enter')
      message += `\u003cp\u003e\u003c/p\u003e`;
      
      // 3. O LINK SOZINHO (Esta é a "linha única" solicitada pelo Discourse)
      // Não colocamos \u003ca\u003e, deixamos o texto puro da URL
      message += `\u003cp\u003e${vLink}\u003c/p\u003e`;
      
      // 4. OUTRO PARÁGRAFO VAZIO (Simula um segundo 'Enter')
      message += `\u003cp\u003e\u003c/p\u003e`;
    });

    if (frenchVideos.length > 3) {
      message += `\u003cp\u003e\u003ci\u003e(+ ${frenchVideos.length - 3} outros vídeos no BGG)\u003c/i\u003e\u003c/p\u003e`;
    }
  }


E aqui está o resultado

![image|523x500](upload://zb7ByOCNFVMNODJDLs88axOYlYl.jpeg)