diff options
| author | Melonai <einebeere@gmail.com> | 2021-06-04 19:21:22 +0200 |
|---|---|---|
| committer | Melonai <einebeere@gmail.com> | 2021-06-04 19:21:22 +0200 |
| commit | e6a567090d5e14605e6d4722fc51d7c56b9410ee (patch) | |
| tree | 1deb0d7f82b60447cbe30e682a879a426b395258 /lib/rook_web/channels/share_channel.ex | |
| parent | 631a39aecacf6e62ddc13ad4c8f3c81a0f5f49c7 (diff) | |
| download | rook-e6a567090d5e14605e6d4722fc51d7c56b9410ee.tar.zst rook-e6a567090d5e14605e6d4722fc51d7c56b9410ee.zip | |
Transfer server API
Diffstat (limited to 'lib/rook_web/channels/share_channel.ex')
| -rw-r--r-- | lib/rook_web/channels/share_channel.ex | 18 |
1 files changed, 13 insertions, 5 deletions
diff --git a/lib/rook_web/channels/share_channel.ex b/lib/rook_web/channels/share_channel.ex index 0efb3ba..02c6fc0 100644 --- a/lib/rook_web/channels/share_channel.ex +++ b/lib/rook_web/channels/share_channel.ex @@ -5,15 +5,17 @@ defmodule RookWeb.ShareChannel do def join("share:" <> token, _params, socket) do if Rook.Token.match?(token, socket) do - Rook.Share.start(token) + Rook.Share.Actions.start(token) {:ok, socket} else {:error, %{reason: "Wrong token."}} end end - def handle_in("accept_request", %{"request" => _request_token}, socket) do - # TODO: Send request accept message. + def handle_in("accept_request", %{"token" => request_token} = params, socket) do + description = Map.delete(params, :token) + token = socket.assigns.token + Rook.Share.Actions.accept_request(token, request_token, description) {:noreply, socket} end @@ -21,8 +23,14 @@ defmodule RookWeb.ShareChannel do {:error, %{reason: "No request given to accept."}} end - def handle_out("new_request", %{request: request_token} = msg, socket) do - Rook.Request.acknowledge_request(request_token) + def handle_in("ice_candidate", %{"token" => request_token, "candidate" => candidate}, socket) do + token = socket.assigns.token + Rook.Share.Actions.ice_candidate(token, request_token, candidate) + {:noreply, socket} + end + + def handle_out("new_request", %{token: request_token} = msg, socket) do + Rook.Request.Events.request_acknowledged(request_token) push(socket, "new_request", msg) {:noreply, socket} end |
