summaryrefslogtreecommitdiff
path: root/src/mod_irc
diff options
context:
space:
mode:
authorAlexey Shchepin <alexey@process-one.net>2003-08-12 19:23:55 +0000
committerAlexey Shchepin <alexey@process-one.net>2003-08-12 19:23:55 +0000
commit03682829e7c377c3466353ea5ebd5462fd84be40 (patch)
tree744ce9aee0ff8cb04996eef4526e870176458db0 /src/mod_irc
parent* src/mod_privacy.erl: Privacy rules support (diff)
* src/mod_irc/mod_irc_connection.erl: Added handling for
jabber:iq:version and jabber:iq:time requests, participant address now added to presence status SVN Revision: 130
Diffstat (limited to 'src/mod_irc')
-rw-r--r--src/mod_irc/mod_irc_connection.erl18
1 files changed, 17 insertions, 1 deletions
diff --git a/src/mod_irc/mod_irc_connection.erl b/src/mod_irc/mod_irc_connection.erl
index 683447fc..03c2a820 100644
--- a/src/mod_irc/mod_irc_connection.erl
+++ b/src/mod_irc/mod_irc_connection.erl
@@ -298,6 +298,20 @@ handle_info({route_chan, Channel, Resource,
From,
To,
ID, XMLNS, Type, SubEl);
+ {iq, ID, get, ?NS_VERSION = XMLNS, SubEl} ->
+ Res = io_lib:format("PRIVMSG ~s :\001VERSION\001\r\n",
+ [Resource]),
+ ?SEND(Res),
+ Err = jlib:make_error_reply(
+ El, ?ERR_FEATURE_NOT_IMPLEMENTED),
+ ejabberd_router:route(To, From, Err);
+ {iq, ID, get, ?NS_TIME = XMLNS, SubEl} ->
+ Res = io_lib:format("PRIVMSG ~s :\001TIME\001\r\n",
+ [Resource]),
+ ?SEND(Res),
+ Err = jlib:make_error_reply(
+ El, ?ERR_FEATURE_NOT_IMPLEMENTED),
+ ejabberd_router:route(To, From, Err);
_ ->
Err = jlib:make_error_reply(
El, ?ERR_FEATURE_NOT_IMPLEMENTED),
@@ -826,7 +840,9 @@ process_join(StateData, Channel, From, String) ->
[{xmlelement, "item",
[{"affiliation", "member"},
{"role", "participant"}],
- []}]}]}),
+ []}]},
+ {xmlelement, "status", [],
+ [{xmlcdata, FromIdent}]}]}),
{ok, Msg, _} = regexp:sub(String, ".*JOIN[^:]*:", ""),
ejabberd_router:route({lists:concat([Chan, "%", StateData#state.server]),
StateData#state.myname, FromUser},