Ich habe mir hier mal einen Connect zusammengebastelt um RCON Befehle an einen CS Server zu schicken.
Code: Select all
<?php
if (!isset($_GET['command'])) {
$_GET['command'] = "stats";
}
set_time_limit(1);
$cs_server["ip"] = "192.168.100.22";
$cs_server["port"] = "27017";
$cs_server["rcon"] = "peppi01";
$server_connect = fsockopen("udp://".$cs_server[ip], $cs_server[port]); // zum server verbinden
if(!$server_connect) {
echo "Fehler beim verbinden!";
}
else {
echo "Verbindung steht!:";;
// rcon id holen
fwrite($server_connect, "xFFxFFxFFxFFchallenge rconx00");
$read_id = fread($server_connect, 1);
$sockets = socket_get_status($server_connect);
$read_id = $read_id . fread($server_connect,$sockets['unread_bytes']);
$rcon_pw = explode(" ", $read_id);
$cs_server[rcon_id] = $rcon_pw[2];
$cs_server[rcon_id] = str_replace("n","",$cs_server[rcon_id]);
// rcon ID ausgeben
echo $cs_server[rcon_id]."<br>";
// Ersten befehl senden
// ...
$command = sprintf("rcon %s "%s" %s", $cs_server['rcon_id'], $cs_server['rcon'], $_GET['command']);
// Debug:
print "DEBUG: command = $command<br />n";
$tosend = sprintf("%c%c%c%c%s%c", 0xFF, 0xFF, 0xFF, 0xFF, $command, 0x00);
// ...
#$tosend = sprintf("%c%c%c%c%s%c",0xFF,0xFF,0xFF,0xFF,"rcon ".$cs_server[rcon_id]." \"".$cs_server[rcon]."\" ".$_GET[command],0x00);
fwrite($server_connect,$tosend);
?>
<pre><? echo $tosend; ?></pre>
<?
$read_cmd = fread($server_connect, 1);
$sockets = socket_get_status($server_connect);
$read_cmd = $read_cmd . fread($server_connect,$sockets['unread_bytes']);
fclose($server_connect);
echo $read_cmd;
}
?>Code: Select all
Verbindung steht!:1464595332
DEBUG: command = rcon 1464595332
ÿÿÿÿrcon 1464595332
ÿÿÿÿlBad rcon_password.
Vielen Dank
Gruss
Gerhard
