From 275b31b0cf7c91a549a996b9c714def5bac5c4a4 Mon Sep 17 00:00:00 2001 From: Alexey Shchepin Date: Tue, 28 Jan 2003 19:45:13 +0000 Subject: *** empty log message *** SVN Revision: 52 --- src/mod_echo.erl | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) (limited to 'src/mod_echo.erl') diff --git a/src/mod_echo.erl b/src/mod_echo.erl index 03a25d25e..5f02c4002 100644 --- a/src/mod_echo.erl +++ b/src/mod_echo.erl @@ -12,7 +12,7 @@ -behaviour(gen_mod). --export([start/1, init/1]). +-export([start/1, init/1, stop/0]). -include("ejabberd.hrl"). -include("namespaces.hrl"). @@ -22,18 +22,24 @@ start(Opts) -> %Host = gen_mod:get_opt(host, Opts), Host = gen_mod:get_opt(host, Opts, "echo." ++ ?MYNAME), - spawn(?MODULE, init, [Host]). + register(ejabberd_mod_echo, spawn(?MODULE, init, [Host])). init(Host) -> ejabberd_router:register_local_route(Host), - loop(). + loop(Host). -loop() -> +loop(Host) -> receive {route, From, To, Packet} -> ejabberd_router:route(To, From, Packet), - loop(); + loop(Host); + stop -> + ejabberd_router:unregister_local_route(Host), + ok; _ -> - loop() + loop(Host) end. +stop() -> + ejabberd_mod_echo ! stop, + ok. -- cgit v1.2.3