Location: PHPKode > scripts > libdpserver > libdpserver/example.php
<?php
    require_once "DigitalPaintServer.php";
    
    header("Content-type: text/plain");
    
    $server_host = "127.0.0.1";
    $server_port = 27910;
    $rcon_password = "test";
    
    echo "Testing server $server_host:$server_port\n\n";
    
    // Create a new instance
    $paintball = new DigitalPaintServer($server_host, $server_port, $rcon_password);
    
    // Check if the server is online
    echo "Is the server online?\n";
    if($paintball->is_online())
    {
        echo "\tOnline!\n";
    }
    else
    {
        echo "\tIt's not online =(\n";
        echo "\nQuitting...\n";
        exit;
    }
    
    // Get server name
    $server_name = $paintball->get_server_name();
    echo "\nServer: $server_name\n";
    
    // Get build
    $build = $paintball->get_build();
    echo "\nRunning build: $build\n";
    
    // Get if a password is set
    $has_password = $paintball->has_password_set();
    echo "\nPassword set? ".($has_password ? "yes" : "no")."\n";
    
    // Get ping
    $ping = $paintball->ping();
    echo "\nPing: {$ping}ms\n";
    
    // This method does not normally have to be called. Some
    // of the methods (like to get the currrent map), require getting
    // the server status data. It is normally done automatically.
    // After it is called, it will continue to use cached data. If
    // you ever want to update the cache after that, you need to
    // call the following method, with true as its first parameter.
    $paintball->update_status_cache(true);
    
    // Dump status information
    echo "\nDump status information\n";
    $status = $paintball->get_status_info();
    foreach($status as $key => $value)
    {
        echo "\t$key => $value\n";
    }
    
    // Dump players list
    echo "\nGet player list\n";
    $players = $paintball->get_players();
    foreach($players as $index => $player)
    {
        echo "\t$index. {$player['team']}: ".DigitalPaintServer::clean_funname($player['name'])."\n";
        echo "\t\t{$player['ping']}ms {$player['points']}pts\n";
    }
    
    // Dump players list with extended information
    echo "\nGet player list with extended information (via RCON):\n";
    $players = $paintball->rcon_get_extended_players();
    foreach($players as $index => $player)
    {
        echo "\t$index. {$player['team']}: ".DigitalPaintServer::clean_funname($player['name'])."\n";
        $client_id = $player['client_id'];
        foreach($player as $key => $value)
        {
            if(in_array($key, array('name', 'team'))) continue;
            
            echo "\t\t{$key}: {$value}\n";
        }
    }
    
    if(isset($client_id))
    {
        // Dump user information
        echo "\nGet user information about client ID #$client_id\n";
        $info = $paintball->rcon_get_user_information($client_id);
        foreach($info as $key => $value)
        {
            echo "\t$key => $value\n";
        }
    }
    
    // Dump players list
    echo "\nGet bot list\n";
    $players = $paintball->rcon_get_bots();
    foreach($players as $bot)
    {
        echo "\t".DigitalPaintServer::clean_funname($bot)."\n";
    }
    
    // Dump map rotation list
    echo "\nGet map rotation list\n";
    $players = $paintball->rcon_get_map_rotation();
    foreach($players as $map)
    {
        echo "\t{$map['mapname']} ({$map['points']})\n";
    }
    
    // Get current map
    echo "\nGet current map\n";
    echo "\t".$paintball->get_map()."\n";
    
    // Get variable "website"
    echo "\nGet the variable 'website' (via RCON):\n";
    $website = $paintball->rcon_get_variable("website");
    echo "\t$website\n";
    
    // Dump ban list
    echo "\nDump the ban list\n";
    $bans = $paintball->rcon_list_banlist();
    foreach($bans as $ip)
    {
        echo "\t$ip\n";
    }
?>
Return current item: libdpserver