Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/processone/ejabberd.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEvgeny Khramtsov <ekhramtsov@process-one.net>2019-04-23 19:18:22 +0300
committerEvgeny Khramtsov <ekhramtsov@process-one.net>2019-04-23 19:18:22 +0300
commitedba1aebb51a7bb4f8a5f4f069fba3ed9540d729 (patch)
treeb6467b7582c38afd1edef8411ac99b478609e360 /src/mod_mqtt.erl
parentd2ea9059262e4119004d4f70cdaed6c530e385fc (diff)
Add WebSockets support to mod_mqtt
Example configuration: listen: ... - port: 5280 module: ejabberd_http request_handlers: "/mqtt": mod_mqtt modules: ... mod_mqtt: {}
Diffstat (limited to 'src/mod_mqtt.erl')
-rw-r--r--src/mod_mqtt.erl5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/mod_mqtt.erl b/src/mod_mqtt.erl
index 9fd1e57ac..566804f36 100644
--- a/src/mod_mqtt.erl
+++ b/src/mod_mqtt.erl
@@ -27,6 +27,8 @@
terminate/2, code_change/3]).
%% ejabberd_listener API
-export([start/3, start_link/3, listen_opt_type/1, listen_options/0, accept/1]).
+%% ejabberd_http API
+-export([socket_handoff/3]).
%% Legacy ejabberd_listener API
-export([become_controller/2, socket_type/0]).
%% API
@@ -98,6 +100,9 @@ become_controller(Pid, _) ->
accept(Pid) ->
mod_mqtt_session:accept(Pid).
+socket_handoff(LocalPath, Request, Opts) ->
+ mod_mqtt_ws:socket_handoff(LocalPath, Request, Opts).
+
open_session({U, S, R}) ->
Mod = gen_mod:ram_db_mod(S, ?MODULE),
Mod:open_session({U, S, R}).