async def _handle_request( # type: ignore self, request: Request, room_id: str, user_id: str) -> Tuple[int, JsonDict]: content = parse_json_object_from_request(request) remote_room_hosts = content["remote_room_hosts"] event_content = content["content"] requester = Requester.deserialize(self.store, content["requester"]) request.requester = requester logger.info("remote_join: %s into room: %s", user_id, room_id) event_id, stream_id = await self.federation_handler.do_invite_join( remote_room_hosts, room_id, user_id, event_content) return 200, {"event_id": event_id, "stream_id": stream_id}
async def _handle_request( # type: ignore self, request: Request, invite_event_id: str) -> Tuple[int, JsonDict]: content = parse_json_object_from_request(request) txn_id = content["txn_id"] event_content = content["content"] requester = Requester.deserialize(self.store, content["requester"]) request.requester = requester # hopefully we're now on the master, so this won't recurse! event_id, stream_id = await self.member_handler.remote_reject_invite( invite_event_id, txn_id, requester, event_content, ) return 200, {"event_id": event_id, "stream_id": stream_id}