Packages

ERP/1: RTP GST WebRTC ICE SDP H.264 H.265 MP4 MPEG-2 HLS HEVC

Current section

Files

Jump to
rtp src login.erl
Raw

src/login.erl

-module(login).
-export([event/1]).
-include_lib("nitro/include/nitro.hrl").
-include_lib("n2o/include/n2o.hrl").
-include("session_token.hrl").
event(init) ->
error_logger:info_msg("login:event(init) called!~n"),
nitro:update(loginButton, #button{id = loginButton, body = "Login",
postback = login, source = [user, pass]});
event(login) ->
User = nitro:to_list(nitro:q(user)),
Room = nitro:to_list(nitro:q(pass)),
Token = session_token:issue(User, Room),
n2o:user(User),
n2o:session(room, Room),
n2o:session(token, Token),
%% Navigate client-side: index.htm reads URL params, saves to localStorage, auto-joins
nitro:wire(<<"localStorage.setItem('rtp_joined', 'true');">>),
URL = iolist_to_binary(["/app/index.htm?room=", Room, "&user=", User, "&token=", Token]),
nitro:wire(<<"window.location.href='", URL/binary, "';">>);
event(_) -> [].