Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/conartist6/vscsm

Very Simple Console Server Manager
https://github.com/conartist6/vscsm

Last synced: about 1 month ago
JSON representation

Very Simple Console Server Manager

Awesome Lists containing this project

README

        

Welcome to the Very Simple Console Server Manager.

This project is now in autohell!

./configure
make
#run for your life

I've never installed it, so its probably a bad idea to try that at this point.

The goal of this project is to provide a somewhat flexible application for managing console servers online. Its most immediate usage is to allow for remote console interaction with linux-based dedicated servers for games. It is not a terminal emulator, and currently only allows transmissions of commands which can be entered as strings. The project was not designed with any clear architecture, so its direction and coding style largely follows my own path of teaching myself IPC mechanisms and web scripting among other things. The project is slowly evolving from being focused on useless hyperefficiency to being focused on more normal things like code readability and working.
The project is set up like so:

vscsm:
On one thread this process listens on a pipe for commands of a specified syntax to be issued by the frontend. Commands include things like starting a configured app, stopping a configured app, sending a console command to an app, listing running apps, and getting output from all running apps. Configuration is done via the vscsm.cfg file. The application's other thread fills a fixed size buffer with output from each console application.

web/index.php
All frontend logic is in a mess in this file. Processor usage is currently tracked for as many processors as the server has. Memory usage will come soon.
Requires JQuery and Flot.

web/srvcommand.php
PHP backend, constructs requests to the line server. The format of these requests should be something like, say,
s@css
to start the server configured as css
or to print new output from all servers:
p@

etc/vscsm.cfg
The config file, in libconfig format.

Future work:
A massive security audit.
Command quasi-syntax should be JSON, as well as possibly the conf file.
It should be possible to modify the configuration using the webUI
It should be possible to script tasks and/or extend the frontend.
My code needs to use jquery instead of it just being required to run other peoples' code
The backend *may* be ported to a language other than C.

Author Conrad J. Buck
conartist6 at gmail dot com