Continue activitypub
[oweals/peertube.git] / server / controllers / client.ts
index 1391993a7a1c4c39130efe8efaa185a717948b62..67ebfcf1dc443ea0bd6783487ce82f2600e21c62 100644 (file)
@@ -8,7 +8,8 @@ import {
   CONFIG,
   STATIC_PATHS,
   STATIC_MAX_AGE,
-  OPENGRAPH_AND_OEMBED_COMMENT
+  OPENGRAPH_AND_OEMBED_COMMENT,
+  EMBED_SIZE
 } from '../initializers'
 import { root, readFileBufferPromise, escapeHTML } from '../helpers'
 import { asyncMiddleware } from '../middlewares'
@@ -52,6 +53,7 @@ function addOpenGraphAndOEmbedTags (htmlStringPage: string, video: VideoInstance
 
   const videoName = escapeHTML(video.name)
   const videoDescription = escapeHTML(video.description)
+  const embedUrl = CONFIG.WEBSERVER.URL + video.getEmbedPath()
 
   const openGraphMetaTags = {
     'og:type': 'video',
@@ -60,6 +62,12 @@ function addOpenGraphAndOEmbedTags (htmlStringPage: string, video: VideoInstance
     'og:url': videoUrl,
     'og:description': videoDescription,
 
+    'og:video:url': embedUrl,
+    'og:video:secure_url': embedUrl,
+    'og:video:type': 'text/html',
+    'og:video:width': EMBED_SIZE.width,
+    'og:video:height': EMBED_SIZE.height,
+
     'name': videoName,
     'description': videoDescription,
     'image': previewUrl,
@@ -68,7 +76,10 @@ function addOpenGraphAndOEmbedTags (htmlStringPage: string, video: VideoInstance
     'twitter:site': '@Chocobozzz',
     'twitter:title': videoName,
     'twitter:description': videoDescription,
-    'twitter:image': previewUrl
+    'twitter:image': previewUrl,
+    'twitter:player': embedUrl,
+    'twitter:player:width': EMBED_SIZE.width,
+    'twitter:player:height': EMBED_SIZE.height
   }
 
   const oembedLinkTags = [
@@ -111,9 +122,6 @@ async function generateWatchHtmlPage (req: express.Request, res: express.Respons
     videoPromise
   ])
 
-  file = file as Buffer
-  video = video as VideoInstance
-
   const html = file.toString()
 
   // Let Angular application handle errors