This commit is contained in:
2026-02-11 18:16:07 -08:00
parent cc715e1fef
commit 1d0de1118b
27 changed files with 1167 additions and 1075 deletions

View File

@@ -8,7 +8,7 @@ from pathlib import Path
from typing import Any, Dict, Iterable, List, Optional, Tuple
from urllib.parse import quote
import requests
from API.requests_client import get_requests_session
from ProviderCore.base import Provider, SearchResult
from SYS.provider_helpers import TableProviderMixin
@@ -189,7 +189,7 @@ def _matrix_health_check(*,
if not base:
return False, "Matrix homeserver missing"
resp = requests.get(f"{base}/_matrix/client/versions", timeout=5)
resp = get_requests_session().get(f"{base}/_matrix/client/versions", timeout=5)
if resp.status_code != 200:
return False, f"Homeserver returned {resp.status_code}"
@@ -197,7 +197,7 @@ def _matrix_health_check(*,
headers = {
"Authorization": f"Bearer {access_token}"
}
resp = requests.get(
resp = get_requests_session().get(
f"{base}/_matrix/client/v3/account/whoami",
headers=headers,
timeout=5
@@ -234,6 +234,8 @@ class Matrix(TableProviderMixin, Provider):
4. Selection triggers upload of pending files to selected rooms
"""
EXPOSE_AS_FILE_PROVIDER = False
@classmethod
def config_schema(cls) -> List[Dict[str, Any]]:
return [
@@ -388,7 +390,7 @@ class Matrix(TableProviderMixin, Provider):
headers = {
"Authorization": f"Bearer {token}"
}
resp = requests.get(
resp = get_requests_session().get(
f"{base}/_matrix/client/v3/joined_rooms",
headers=headers,
timeout=10
@@ -442,7 +444,7 @@ class Matrix(TableProviderMixin, Provider):
# Best-effort room name lookup (safe to fail).
try:
encoded = quote(room_id, safe="")
name_resp = requests.get(
name_resp = get_requests_session().get(
f"{base}/_matrix/client/v3/rooms/{encoded}/state/m.room.name",
headers=headers,
timeout=5,
@@ -491,7 +493,7 @@ class Matrix(TableProviderMixin, Provider):
total_bytes=int(path.stat().st_size),
label="upload"
)
resp = requests.post(
resp = get_requests_session().post(
upload_url,
headers=headers,
data=wrapped,
@@ -539,7 +541,7 @@ class Matrix(TableProviderMixin, Provider):
send_headers = {
"Authorization": f"Bearer {token}"
}
send_resp = requests.put(send_url, headers=send_headers, json=payload)
send_resp = get_requests_session().put(send_url, headers=send_headers, json=payload)
if send_resp.status_code != 200:
raise Exception(f"Matrix send message failed: {send_resp.text}")
@@ -588,7 +590,7 @@ class Matrix(TableProviderMixin, Provider):
"msgtype": "m.text",
"body": message
}
send_resp = requests.put(send_url, headers=send_headers, json=payload)
send_resp = get_requests_session().put(send_url, headers=send_headers, json=payload)
if send_resp.status_code != 200:
raise Exception(f"Matrix send text failed: {send_resp.text}")