$esx = new esx(); $esx->connect($_SERVER['argv'][1], $_SERVER['argv'][2], $_SERVER['argv'][3]); $vm = $esx->find_entity_view('VirtualMachine', null, array('config.name' => $_SERVER['argv'][5])); $task = null; switch ($_SERVER['argv'][4]) { case 'poweron': $task = $esx->PowerOnVM_Task(array('_this' => $vm)); break; case 'poweroff': $task = $esx->PowerOffVM_Task(array('_this' => $vm)); break; case 'shutdown': $esx->ShutdownGuest(array('_this' => $vm)); break; case 'suspend': $task = $esx->SuspendVM_Task(array('_this' => $vm)); break; case 'reboot': $esx->RebootGuest(array('_this' => $vm)); case 'reset': $task = $esx->ResetVM_Task(array('_this' => $vm)); break; default: die('Unknown command \'' . $_SERVER['argv'][4] . "'\n"); } if ($task) { while (true) { usleep(100000); echo '.'; if (!($properties = $esx->getproperties($task->returnval))) { echo "\nTask disappeared...\n";