123456789101112131415161718192021222324252627282930 |
- %% This module starts with active mode disabled
- %% and enables it again once a timeout is triggered.
- -module(ws_active_commands_h).
- -behavior(cowboy_websocket).
- -export([init/2]).
- -export([websocket_init/1]).
- -export([websocket_handle/2]).
- -export([websocket_info/2]).
- init(Req, RunOrHibernate) ->
- {cowboy_websocket, Req, RunOrHibernate}.
- websocket_init(State=run) ->
- erlang:send_after(1500, self(), active_true),
- {[{active, false}], State};
- websocket_init(State=hibernate) ->
- erlang:send_after(1500, self(), active_true),
- {[{active, false}], State, hibernate}.
- websocket_handle(Frame, State=run) ->
- {[Frame], State};
- websocket_handle(Frame, State=hibernate) ->
- {[Frame], State, hibernate}.
- websocket_info(active_true, State=run) ->
- {[{active, true}], State};
- websocket_info(active_true, State=hibernate) ->
- {[{active, true}], State, hibernate}.
|