McDesktopInfo
With McDesktopInfo you can show information about your server live on your desktop. This package includes a bukkit server plugin and a Windows Sidebar gadget (The sidebar is only available in Windows Vista and 7). The plugin, once started, opens up a socket on a configurable port, that is used to exchange data with the gadget. When the socket gets a query to do something from the gadget it automatically processes this query by getting the queried data from the server and sending it back to the gadget.
Features
- Leightweight plugin that uses a socket to exchange data with the gadget
- Configurable Windows Sidebar gadget with multiple backgrounds
- Secure: No HTTP requests to the socket are able to get behind the plugin
- Use special admin functions directly from your desktop using a password system
- Kick players via the gadget
Features
- Servername
- Current / Max players
- Plugin version
- Craftbukkit version
- Playerlist
- Kicking players
- Used / total RAM
- Tickrate
- Chat history
I will NOT implement any queries that would harm the server in any way.
Instructions
TODO
- Gadget design overhaul
- Send chat messages from gadget
- Planned queries: CPU load, uptime (Feel free to suggest even more via Forum/Comments/PM)
Is there a way to turn off all the debug logging? My server.log is rapidly filling up with stuff like this:
@Dam4rusxp
I'm running it now. Yeah, the Bukkit gang has already lost control over the plugin repo. Updates can take 2+ days to make it to the list now. Every author should do as you've done and provide external links to their plugins. An example of this was the HalloweenScares plugin. The author did a huge update that he wanted to release just before Halloween. Due to Bukkit taking forever to vet plugin updates, it didn't come out in time and Halloween was over before it was listed.
I just uploaded v0.4.5 of the plugin. If you don't want to wait for approval you can already download it here.
@GumbyDammit
Don't worry I will update the project in the future. Unfortunately almost my whole free time is used for school right now. Though I always have an eye on the code and try to fix smaller things. But these small things didn't really deserve an update yet.
The best thing that could happen right now would be somebody forking my repo and actively adding features to it. So people, feel free to help me with my project here! :)
@Dam4rusxp
You've been quiet for more than a month now. Are you still alive? ;)
@Dam4rusxp
To me, the background of the gadget is by far a secondary consideration to the overall functionality. Sure, it's nice to have a Minecrafty background skin on the gadget, but I'd rather have the info on black than for you to make design compromises to accommodate the skin.
@GumbyDammit
I've been actually using their widgets for a long time now and get much inspiration from them. For example I got the idea for the tabbed settings menu from them. I'm going to figure out how to make the widget taller in a nice way (with properly repeating background) and plan on making it possible to choose which info is displayed and in what order.
The direction I would love to see this plugin take would be visually similar to the guys at addgadget.com. Look at how much information they can pack into their CPU Meter and Network Meter. Make the plugin a little bigger and throw in both a CPU line graph and RAM bar chart (or both in one like the CPU Meter does), both sampled at 5-second intervals and averaged out for the refresh.
@konradmm
The server plugin provides its own interface to the server. The gadget isn't able to do anything that isn't implemented in the plugin. So if you tried to send a command like "explodeEverything", the plugin would just notice that it doesn't know this command and return an empty string. Also if the plugin receives a password, it checks if the password is valid and only then executes requested admin commands.
@Dam4rusxp
but u can always check in gadget source so u can edit the gadget to add new options to send anylike u want on server console, right ? Or u mean the plugin on server that accepts something like "white-list" commands when no password is provided?
@konradmm
I wrote everything so that it's for admins AND normal users. If you don't provide a password in the gadget you can't use features like kicking and memory usage. I plan to make it more configurable what you can do without a password. At the moment you can only use the defaults or admin only.
@MrJackblue
still thinking why this idea into this plugin. This plugin is for admins only, with it, only Admin should use it. If u disable functions like "kick", and provide "password" to public, everyone can look into gadget source and change it so anyone can get OP privillages on any server. And i believe ADMIN can see who is online and check who is friend or not.
Btw, adding server say function to this widget is not a problem and i think can be added, but why...
I have a good idea for your widget, make a list of friend and if one is connect, you can read the name or simply the number of friend who are connect ;) And admin can send a message for event or other thing !
@konradmm
Thanks! Time to give the settings screen an overhaul :) Let's see how a tabbed view works out...
Hello. I like ur idea much
2 things:
and btw, u can also add font settings, some ppl use diff colors of desktops, so they can choose what they want, u know how to do it. its not hard ;p
@GumbyDammit
First, please note that this is still beta. That being said, more queries will definately come (memory usage for example is done), but at the moment I'm focusing on removing as much lag and freezes as possible from the gadget. This is a tricky task to do while maintaining code quality and not using unnecessarily big third-party libraries. Also much of this is new to me, I haven't got much experience with web-coding yet.
In my oppinion the font has a good size, it's easy to read for me. Is your monitor DPI maybe set to a wrong value? I already tried to outline the text to make it pop out a bit more but that didn't work out so good and was pushed back for now.
Pushing the refresh button to the bottom isn't as easy as it sounds because the table rows scale weirdly when I expand it to the whole gadget height. Though, removing it when auto-refreshing was pretty easy but I will definately make this optional.
And of course thanks for your constructive critique. You already made some great suggestions, keep them coming! :)
Suggestions:
Considering the only useful information that's being displayed at this point is the player count, perhaps you could make the text larger so that you don't need a magnifying glass to read it. I'd also push the Refresh button down to the bottom of the form so it doesn't get in the way. If you have the auto-polling set, I would even consider removing the Refresh button altogether.
TODO was a character from Neo Geo's Art of Fighting. =)
@Dam4rusxp
Thanks. I just assumed that the widget would check on port 6868 since that is the default. The 'Not Found' text is overlaid on top of the square bitmap that makes up the widget's face. Now that it seems to be working, all it does is show the default skin (grass), Current players and Plugin version, which is blank. I was hoping for a bukkit version, uptime, connected players, CPU, RAM etc.
@GumbyDammit
You need to make sure to add the correct port number after the IP. It's displayed when the server starts and should look like "[McDesktopInfo] Starting listener on port 6868". Also try manually setting a password in the plugin config and then restarting the server. There might be a problem with the commands under certain circumstances. These problems are fixed in v0.4.2, which is overall much more polished. Also, could you tell me where and when exactly you get this "Not Found error"?