This commit is contained in:
Sorunome 2020-01-19 15:09:46 +01:00
parent e409951319
commit 1e63b595c3
No known key found for this signature in database
GPG key ID: 63E31F7B5993A9C4
4 changed files with 14 additions and 11 deletions

View file

@ -823,7 +823,7 @@ class FederationClient(FederationBase):
destination=destination,
room_id=pdu.room_id,
event_id=pdu.event_id,
content=pdu.get_pdu_json(time_now)
content=pdu.get_pdu_json(time_now),
)
return content

View file

@ -549,6 +549,7 @@ class FederationMakeKnockServlet(BaseFederationServlet):
content = await self.handler.on_make_knock_request(origin, context, user_id)
return 200, content
class FederationV1MakeKnockServlet(BaseFederationServlet):
PATH = "/send_knock/(?P<room_id>[^/]*)/(?P<event_id>[^/]*)"
@ -556,6 +557,7 @@ class FederationV1MakeKnockServlet(BaseFederationServlet):
content = await self.handler.on_send_knock_request(origin, content, room_id)
return 200, content
class FederationEventAuthServlet(BaseFederationServlet):
PATH = "/event_auth/(?P<context>[^/]*)/(?P<event_id>[^/]*)"

View file

@ -485,9 +485,9 @@ class RoomMemberHandler(object):
content["membership"] = Membership.KNOCK
profile = self.profile_handler
if not "displayname" in content:
if "displayname" not in content:
content["displayname"] = yield profile.get_displayname(target)
if not "avatar_url" in content:
if "avatar_url" not in content:
content["avatar_url"] = yield profile.get_avatar_url(target)
remote_knock_response = yield self._remote_knock(

View file

@ -15,28 +15,29 @@
import logging
from synapse.api.errors import AuthError, SynapseError
from synapse.api.errors import SynapseError
from synapse.http.servlet import RestServlet, parse_json_object_from_request
from synapse.logging.opentracing import set_tag
from synapse.rest.client.transactions import HttpTransactionCache
from synapse.types import RoomAlias, RoomID, StreamToken, ThirdPartyInstanceID, UserID
from synapse.types import RoomAlias, RoomID
from ._base import client_patterns
logger = logging.getLogger(__name__)
class TransactionRestServlet(RestServlet):
def __init__(self, hs):
super(TransactionRestServlet, self).__init__()
self.txns = HttpTransactionCache(hs)
class KnockServlet(TransactionRestServlet):
"""
POST /rooms/{roomId}/knock
"""
PATTERNS = client_patterns(
"/rooms/(?P<room_id>[^/]*)/knock"
)
PATTERNS = client_patterns("/rooms/(?P<room_id>[^/]*)/knock")
def __init__(self, hs):
super(KnockServlet, self).__init__(hs)
@ -70,14 +71,13 @@ class KnockServlet(TransactionRestServlet):
request, self.on_POST, request, room_id, txn_id
)
class KnockRoomALiasServlet(TransactionRestServlet):
"""
POST /knock/{roomIdOrAlias}
"""
PATTERNS = client_patterns(
"/knock/(?P<room_identifier>[^/]*)"
)
PATTERNS = client_patterns("/knock/(?P<room_identifier>[^/]*)")
def __init__(self, hs):
super(KnockRoomALiasServlet, self).__init__(hs)
@ -130,6 +130,7 @@ class KnockRoomALiasServlet(TransactionRestServlet):
request, self.on_POST, request, room_identifier, txn_id
)
def register_servlets(hs, http_server):
KnockServlet(hs).register(http_server)
KnockRoomALiasServlet(hs).register(http_server)