Closed Elikill58 closed 2 years ago
you can't send a 'Plugin message' to all proxies it needs at least online player. could you tell me what exactly you are trying to do? sorry for the late response
Sorry, I forgot to reply ...
It's mostly when, for example :
On a spigot server, someone use an item to report player. So, I have to report it to all mod on the over network. I send plugin channel to the actual bungee, but only one of proxies receive it.
So, I made something that when I receive it from the spigot, I publish redis message to all proxy. But it's one step more, new parsing etc and that sad and I would like to prevent it
I would just personally keep it easy and build redis sending into the report plugin. Why even send it through bungee? Just send a packet across the servers with the message containing the reported player information. As it's built into the report plugin you handle everything in one place and any server with the report plugin on it will receive the report.
Because I can't send packet to player on other spigot, so I should pass through bungee. So I send to bungee <hich redirect it and manage evertyhing for me
Here is what I do for my report system:
First I have a server packet set up that sends a message when it's received to users who have a rank that I specify:
Then on the report command, I send that packet:
This way I can send all the information regarding the player (name, report reason, etc) but without ever needing to use bungee. That way I can have unlimited bungeecord proxies, but nothing is being sent through just one, all my commands that need to affect players across the network, can be done via Redis and within a core plugin.
You can even set it up in a way to detect players from all possible servers (even when they are on another bungee) by using Redis to check if they are online or not before doing the report:
So, you are using Redis on all your spigot, with RedisBungee values ? And it seems I made the same system than you, but on bungee. It seems good idea and good way to do.
I use RedisBungee but only on proxy level, this Redis handling is fully independent within a core plugin I developed. It does not use the RedisBungee API to send things, it just uses Redis overall. (can be the same database)
There should be no need for RedisBungee to be the thing sending the message unless you really for some reason want it handled on the bungee level. If you really want to use RedisBungee I would use #sendProxyCommand Then make a command on each proxy to send the message when it receives it.
What is your question?
Everything is in the title. I want to send one plugin message from the spigot to all proxy. How can I do ? I tried to use
ReidsBungee
as channel but it send it only to the player's proxy