architex/lib/architex_web/client/controllers/info_controller.ex

46 lines
942 B
Elixir
Raw Normal View History

2021-09-01 12:43:55 +00:00
defmodule ArchitexWeb.Client.InfoController do
use ArchitexWeb, :controller
2021-09-01 12:43:55 +00:00
import ArchitexWeb.Error
2021-06-26 20:02:18 +00:00
@supported_versions ["r0.6.1"]
@doc """
Gets the versions of the specification supported by the server.
Action for GET /_matrix/client/versions.
"""
def versions(conn, _params) do
data = %{versions: @supported_versions}
conn
|> put_status(200)
|> json(data)
end
2021-06-26 20:02:18 +00:00
def unrecognized(conn, _params) do
put_error(conn, :unrecognized)
end
2021-09-06 18:33:23 +00:00
@doc """
Gets information about the server's supported feature set and other relevant capabilities.
Action for GET /_matrix/client/r0/capabilities.
"""
def capabilities(conn, _params) do
data = %{
capabilities: %{
"m.change_password": %{enabled: false},
"m.room_versions": %{
default: "5",
available: %{"5": "stable"}
}
}
}
conn
|> put_status(200)
|> json(data)
end
end