From b1b101fd98c8b4354a4e0c73e867d817466de30e Mon Sep 17 00:00:00 2001 From: Daniel Weipert Date: Thu, 11 Sep 2025 13:19:21 +0200 Subject: sync, rooms, events, etc --- src/Controllers/RoomController.php | 54 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 54 insertions(+) create mode 100755 src/Controllers/RoomController.php (limited to 'src/Controllers/RoomController.php') diff --git a/src/Controllers/RoomController.php b/src/Controllers/RoomController.php new file mode 100755 index 0000000..1067d29 --- /dev/null +++ b/src/Controllers/RoomController.php @@ -0,0 +1,54 @@ +attributes->get("roomAlias"); + + $roomAlias = Parser::parseRoomAlias($alias); # TODO: on parse error => 400 + $roomId = null; + + if ($roomAlias["server"] != $_ENV["DOMAIN"]) { + # TODO: federation API resolve + $roomId = -1; + } + else { + $room = Database::getInstance()->query(<< $roomAlias["name"], + ])->fetch(); + + $roomId = $room["id"] ?? null; + } + + if (empty($roomId)) { + throw new AppException( + ErrorCode::NOT_FOUND, + "Room alias $alias not found.", + Response::HTTP_NOT_FOUND + ); + } + + return new JsonResponse([ + "room_id" => $roomId, + "servers" => [], + ]); + } +} -- cgit v1.2.3