diff options
Diffstat (limited to 'lib/polyjuice/client.ex')
-rw-r--r-- | lib/polyjuice/client.ex | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/lib/polyjuice/client.ex b/lib/polyjuice/client.ex index c6a9282..b737d93 100644 --- a/lib/polyjuice/client.ex +++ b/lib/polyjuice/client.ex @@ -218,4 +218,25 @@ defmodule Polyjuice.Client do } ) end + + @doc """ + Join a room. + """ + @spec join_room( + client_api :: Polyjuice.Client.API.t(), + room :: String.t(), + servers :: list(String.t()), + third_party_join :: map | nil + ) :: Any + def join_room(client_api, room, servers \\ [], third_party_signed \\ nil) + when is_binary(room) and is_list(servers) and (is_map(third_party_signed) or third_party_signed == nil) do + Polyjuice.Client.API.call( + client_api, + %Polyjuice.Client.Endpoint.PostJoin{ + room: room, + servers: servers, + third_party_signed: third_party_signed + } + ) + end end |