summaryrefslogblamecommitdiff
path: root/lib/matrix_app_service_web/controllers/v1/room_controller.ex
blob: cc84c484a659a9e4006bb440f82af112f8241f97 (plain) (tree)
1
2
3
4
5
6
7
8
9
10
                                                  


                       

                                      



                                                                                           
                                                                        
 
                                                  


                        

          


                          
       

     
defmodule MatrixAppServiceWeb.V1.RoomController do
  @moduledoc """
  Controller for rooms.
  """
  use MatrixAppServiceWeb, :controller

  @doc """
  https://matrix.org/docs/spec/application_service/r0.1.2#get-matrix-app-v1-rooms-roomalias
  """
  def query(conn, %{"room_alias" => room_alias}) do
    adapter = Application.fetch_env!(:matrix_app_service, :room_adapter)

    with :ok <- adapter.query_alias(room_alias) do
      conn
      |> put_status(200)
      |> json("{}")
    else
      _ ->
        conn
        |> put_status(404)
        |> json("")
    end
  end
end