diff options
author | Daniel Weipert <git@mail.dweipert.de> | 2025-09-11 13:19:21 +0200 |
---|---|---|
committer | Daniel Weipert <git@mail.dweipert.de> | 2025-09-11 13:19:21 +0200 |
commit | b1b101fd98c8b4354a4e0c73e867d817466de30e (patch) | |
tree | 763e6d3dab13a2af8c324f7f879c5874dced76f2 /src/Router | |
parent | db014ebf9f8f84a1a0d0972298e70bf29e57c37e (diff) |
sync, rooms, events, etc
Diffstat (limited to 'src/Router')
-rw-r--r-- | src/Router/Router.php | 7 | ||||
-rw-r--r-- | src/Router/routes_client_server.php | 6 |
2 files changed, 12 insertions, 1 deletions
diff --git a/src/Router/Router.php b/src/Router/Router.php index 61abed1..534b7f7 100644 --- a/src/Router/Router.php +++ b/src/Router/Router.php @@ -59,7 +59,12 @@ class Router $class = $match["_controller"][0]; $method = $match["_controller"][1]; - return (new $class)->$method(); + $request->attributes->add(array_diff_key( + $match, + array_flip(["_controller", "_route"]) + )); + + return (new $class)->$method($request); } catch (Exception $exception) { return ErrorResponse::fromException($exception); } catch (ResourceNotFoundException $exception) { diff --git a/src/Router/routes_client_server.php b/src/Router/routes_client_server.php index 8979af5..6e7bb8d 100644 --- a/src/Router/routes_client_server.php +++ b/src/Router/routes_client_server.php @@ -4,6 +4,7 @@ namespace App\Router; use App\Controllers\KeyController; use App\Controllers\LoginController; +use App\Controllers\RoomController; use App\Controllers\ServerDiscoveryController; use App\Controllers\ServerImplementationController; use App\Controllers\SyncController; @@ -51,4 +52,9 @@ return function (RouteConfigurator $routes): void ->add("matrix_client_v3_refresh", "/_matrix/client/v3/refresh") ->controller([KeyController::class, "refresh"]) ->methods(["POST"]); + + $routes + ->add("matrix_client_v3_directory_room_alias_get", "/_matrix/client/v3/directory/room/{roomAlias}") + ->controller([RoomController::class, "resolveAlias"]) + ->methods(["GET"]); }; |