Как мне взаимодействовать с недавно созданным сервером, созданным с помощью child_process.spawn

Я пытаюсь создать внешний интерфейс для своих серверов Counter-Strike Global Offensive, размещенных в частном порядке, на внешнем интерфейсе, когда я запускаю сервер, все работает отлично, сервер запускается и регистрируется на консоли. Но как я могу просмотреть информацию, такую ​​как IP-адрес сервера, игроков на сервере и другие вещи?

Это то, что у меня есть для запуска сервера:

router.post('/create', function(req, res) {
    console.log(req.body);
    var child = spawn('/home/steam/steamcmd/csgo/srcds_run -game csgo -console +game_type 0 +game_mode 0 +host_workshop_collection 249376192 -tickrate 128 +maxplayers 20')
    child.stderr.on('data', function(err) {
        console.log(err);
    });
    child.stdin.on('data', function(chunk) {
        console.log(chunk);
    });
    child.stdout.on('data', function(chunk) {

    });

});

Например, если бы я использовал платный хост-сервер, у меня была бы панель управления, где я мог бы видеть IP-адрес сервера, перезапускать / останавливать просмотр игроков в игре и другие вещи. Я надеюсь, что это было достаточно ясно и извините, если это было плохо написано. Я не уверен, как еще это сформулировать.


person Datsik    schedule 06.05.2015    source источник


Ответы (1)


Принимает ли сервер ввод после запуска? Если это так, вы можете написать ему, используя

child.stdin.write('my command\n');

В противном случае вам придется запрашивать его, используя что-то вроде gamedig.

person Ben Fortune    schedule 06.05.2015
comment
Удивительно, спасибо, я не мог найти что-то вроде Gamedig со всеми моими гуглениями. Хотя я полагаю, что возможность размещения нескольких серверов с разными IP-адресами невозможна только с одним VPS. - person Datsik; 06.05.2015