diff --git a/synapse/rest/client/media.py b/synapse/rest/client/media.py
index c0ae5dd66f..c30e3022de 100644
--- a/synapse/rest/client/media.py
+++ b/synapse/rest/client/media.py
@@ -47,7 +47,7 @@ from synapse.util.stringutils import parse_and_validate_server_name
logger = logging.getLogger(__name__)
-class UnstablePreviewURLServlet(RestServlet):
+class PreviewURLServlet(RestServlet):
"""
Same as `GET /_matrix/media/r0/preview_url`, this endpoint provides a generic preview API
for URLs which outputs Open Graph (https://ogp.me/) responses (with some Matrix
@@ -65,9 +65,7 @@ class UnstablePreviewURLServlet(RestServlet):
* Matrix cannot be used to distribute the metadata between homeservers.
"""
- PATTERNS = [
- re.compile(r"^/_matrix/client/unstable/org.matrix.msc3916/media/preview_url$")
- ]
+ PATTERNS = [re.compile(r"^/_matrix/client/v1/media/preview_url$")]
def __init__(
self,
@@ -95,10 +93,8 @@ class UnstablePreviewURLServlet(RestServlet):
respond_with_json_bytes(request, 200, og, send_cors=True)
-class UnstableMediaConfigResource(RestServlet):
- PATTERNS = [
- re.compile(r"^/_matrix/client/unstable/org.matrix.msc3916/media/config$")
- ]
+class MediaConfigResource(RestServlet):
+ PATTERNS = [re.compile(r"^/_matrix/client/v1/media/config$")]
def __init__(self, hs: "HomeServer"):
super().__init__()
@@ -112,10 +108,10 @@ class UnstableMediaConfigResource(RestServlet):
respond_with_json(request, 200, self.limits_dict, send_cors=True)
-class UnstableThumbnailResource(RestServlet):
+class ThumbnailResource(RestServlet):
PATTERNS = [
re.compile(
- "/_matrix/client/unstable/org.matrix.msc3916/media/thumbnail/(?P<server_name>[^/]*)/(?P<media_id>[^/]*)$"
+ "/_matrix/client/v1/media/thumbnail/(?P<server_name>[^/]*)/(?P<media_id>[^/]*)$"
)
]
@@ -159,11 +155,25 @@ class UnstableThumbnailResource(RestServlet):
if self._is_mine_server_name(server_name):
if self.dynamic_thumbnails:
await self.thumbnailer.select_or_generate_local_thumbnail(
- request, media_id, width, height, method, m_type, max_timeout_ms
+ request,
+ media_id,
+ width,
+ height,
+ method,
+ m_type,
+ max_timeout_ms,
+ False,
)
else:
await self.thumbnailer.respond_local_thumbnail(
- request, media_id, width, height, method, m_type, max_timeout_ms
+ request,
+ media_id,
+ width,
+ height,
+ method,
+ m_type,
+ max_timeout_ms,
+ False,
)
self.media_repo.mark_recently_accessed(None, media_id)
else:
@@ -191,6 +201,7 @@ class UnstableThumbnailResource(RestServlet):
m_type,
max_timeout_ms,
ip_address,
+ True,
)
self.media_repo.mark_recently_accessed(server_name, media_id)
@@ -260,11 +271,9 @@ class DownloadResource(RestServlet):
def register_servlets(hs: "HomeServer", http_server: HttpServer) -> None:
media_repo = hs.get_media_repository()
if hs.config.media.url_preview_enabled:
- UnstablePreviewURLServlet(hs, media_repo, media_repo.media_storage).register(
+ PreviewURLServlet(hs, media_repo, media_repo.media_storage).register(
http_server
)
- UnstableMediaConfigResource(hs).register(http_server)
- UnstableThumbnailResource(hs, media_repo, media_repo.media_storage).register(
- http_server
- )
+ MediaConfigResource(hs).register(http_server)
+ ThumbnailResource(hs, media_repo, media_repo.media_storage).register(http_server)
DownloadResource(hs, media_repo).register(http_server)
diff --git a/synapse/rest/media/thumbnail_resource.py b/synapse/rest/media/thumbnail_resource.py
index ce511c6dce..70354aa439 100644
--- a/synapse/rest/media/thumbnail_resource.py
+++ b/synapse/rest/media/thumbnail_resource.py
@@ -88,11 +88,25 @@ class ThumbnailResource(RestServlet):
if self._is_mine_server_name(server_name):
if self.dynamic_thumbnails:
await self.thumbnail_provider.select_or_generate_local_thumbnail(
- request, media_id, width, height, method, m_type, max_timeout_ms
+ request,
+ media_id,
+ width,
+ height,
+ method,
+ m_type,
+ max_timeout_ms,
+ False,
)
else:
await self.thumbnail_provider.respond_local_thumbnail(
- request, media_id, width, height, method, m_type, max_timeout_ms
+ request,
+ media_id,
+ width,
+ height,
+ method,
+ m_type,
+ max_timeout_ms,
+ False,
)
self.media_repo.mark_recently_accessed(None, media_id)
else:
@@ -120,5 +134,6 @@ class ThumbnailResource(RestServlet):
m_type,
max_timeout_ms,
ip_address,
+ False,
)
self.media_repo.mark_recently_accessed(server_name, media_id)
|