Report abuse

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
route(FromServer, To, Packet) when is_list(FromServer) ->
    From = jlib:make_jid("", FromServer, ""),
    route(From, To, Packet);
route({FromUser, FromServer}, To, Packet) ->
    From = jlib:make_jid(FromUser, FromServer, ""),
    route(From, To, Packet);
route(From, ToServer, Packet) when is_list(ToServer) ->
    To = jlib:make_jid("", ToServer, ""),
    route(From, To, Packet);
route(From, {ToUser, ToServer}, Packet) ->
    To = jlib:make_jid(ToUser, ToServer, ""),
    route(From, To, Packet);
route(From, To, Packets) when is_list(Packets) ->
    lists:foreach(fun(Packet) -> route(From, To, Packet) end, Packets);
route(#jid{} = From, #jid{} = To, Packet) ->
    ejabberd_router:route(From, To, Packet).