mirror of
https://github.com/processone/ejabberd.git
synced 2024-10-05 14:51:05 +02:00
Only use hash route-balancing when MUC is broadcasted
This commit is contained in:
parent
c9a712a16a
commit
8f27a697c0
@ -46,6 +46,7 @@
|
||||
node_down/1,
|
||||
migrate/3,
|
||||
get_vh_rooms/1,
|
||||
is_broadcasted/1,
|
||||
can_use_nick/3]).
|
||||
|
||||
%% gen_server callbacks
|
||||
|
@ -3879,10 +3879,15 @@ element_size(El) ->
|
||||
size(xml:element_to_binary(El)).
|
||||
|
||||
route_stanza(From, To, El) ->
|
||||
#jid{luser = LUser, lserver = LServer} = To,
|
||||
case ejabberd_cluster:get_node({LUser, LServer}) of
|
||||
Node when Node == node() ->
|
||||
ejabberd_router:route(From, To, El);
|
||||
_ ->
|
||||
ok
|
||||
case mod_muc:is_broadcasted(From#jid.lserver) of
|
||||
true ->
|
||||
#jid{luser = LUser, lserver = LServer} = To,
|
||||
case ejabberd_cluster:get_node({LUser, LServer}) of
|
||||
Node when Node == node() ->
|
||||
ejabberd_router:route(From, To, El);
|
||||
_ ->
|
||||
ok
|
||||
end;
|
||||
false ->
|
||||
ejabberd_router:route(From, To, El)
|
||||
end.
|
||||
|
Loading…
Reference in New Issue
Block a user