diff options
-rw-r--r-- | ChangeLog | 6 | ||||
-rw-r--r-- | src/mod_irc/mod_irc_connection.erl | 18 |
2 files changed, 23 insertions, 1 deletions
@@ -1,3 +1,9 @@ +2003-08-12 Alexey Shchepin <alexey@sevcom.net> + + * 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 + 2003-08-03 Alexey Shchepin <alexey@sevcom.net> * src/mod_privacy.erl: Privacy rules support diff --git a/src/mod_irc/mod_irc_connection.erl b/src/mod_irc/mod_irc_connection.erl index 683447fc5..03c2a8201 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}, |