Dokumentace k API Morpheus

Obecne

System

System ukazuje, jaky system je aktualne nabootovany.
1=win
2=unix
3=amt (specialni pripad)

Dostupnost

Dostupnost je resena pomoci programu ping. Jednotlive navratove hodnoty zhruba odpovidaji nasledujicim kodum:
0=ok
1=bad
2=err

Kod 1 znamena, ze stroj neodpovida na ping a tedy je vypnuty, pripadne jinak nedostupny (zkratka offline). Kod 0 znamena, ze stroj na ping odpovida, tedy je zapnuty. Jedinou vyjimkou z tohoto pravidla je to, pokud:
dostupnost=0 && system=3
V tomto pripade jej lze povazovat za vypnuty.

Pouziti API

Jak vytvorit v PHP pole seznam_PC?

$seznam_PC = Array ("PC1","PC2","PC3");

Jak provolat funkci z PHP?

$url = "http://krtecek.mendelu.cz/SOAP/morpheus.php";
$client = new SoapClient(null, array(
"location" => $url,
"uri" => "morpheus",
"trace" => 1
)
);
echo $client->nazevFunkce(parametry);

Ziskavani informaci (gettery)

Pod kazdym prikladem getteru nasleduje ukazka vystupu.

getAllClassrooms() - vraci seznam vsech uceben v DB
Array ( [0] => virtual [1] => Q04 [2] => Q05 [3] => Q06 [4] => Q07 [5] => Q08 [6] => Q09 [7] => Q12 [8] => Q24 [9] => Q47 [10] => Studovna [11] => Q04iMac )
getPC(string ucebna) - vraci seznam pocitacu v ucebna
Array ( [0] => rejpal04 [1] => rejpal18 [2] => rejpal02 [3] => rejpal14 [4] => rejpal12 [5] => rejpal03 [6] => rejpal13 [7] => rejpal16 [8] => rejpal21 [9] => rejpal08 [10] => rejpal11 [11] => rejpal06 [12] => rejpal20 [13] => rejpal24 [14] => rejpal23 [15] => rejpal19 [16] => rejpal05 [17] => rejpal15 [18] => rejpal09 [19] => rejpal25 [20] => rejpal10 [21] => rejpal22 [22] => rejpal17 [23] => rejpal07 )
getAllInfo(array seznam_PC) - vraci vsechna data o strojich seznam_PC
Array ( [w1] => Array ( [nazev] => w1 [ucebna] => virtual [pos_y] => 1 [pos_x] => 1 [dostupnost] => 2 [mac] => 00:50:56:95:34:ae [ip] => 172.16.2.11 [system] => 2 [autologin] => f [autologin_jmeno] => [prihlas_uzivatel] => [prihlas_domena] => [autologin_domena] => ) )
getIP(array seznam_PC) - vraci IP adresu stroju seznam_PC
Array ( [w1] => Array ( [nazev] => w1 [ip] => 172.16.2.11 ) )
getMAC(array seznam_PC) - vraci MAC adresy stroju seznam_PC
Array ( [w1] => Array ( [nazev] => w1 [mac] => 00:50:56:95:34:ae ) )
getClassroom(array seznam_PC) - vraci nazev ucebny u stroju seznam_PC
Array ( [w1] => Array ( [nazev] => w1 [ucebna] => virtual ) )
getAvailability(array seznam_PC) - vraci dostupnost stroju seznam_PC
Array ( [w1] => Array ( [nazev] => w1 [dostupnost] => 2 ) )
getSystem(array seznam_PC) - vraci cislo aktualne nabootovaneho systemu na strojich seznam_PC
Array ( [w1] => Array ( [nazev] => w1 [system] => 2 ) )
getLogedUser(array seznam_PC) - vraci jmeno a domenu uzivatelu, kteri jsou aktualne prihlaseni na strojich seznam_PC
Array ( [rejpal08] => Array ( [nazev] => rejpal08 [prihlas_uzivatel] => [prihlas_domena] => ) )
getAutoLogin(array seznam_PC) - vraci informaci o tom, jestli je na strojich seznam_PC nastaveno automaticke prihlaseni
Array ( [rejpal08] => Array ( [nazev] => rejpal08 [autologin] => f ) )
getAutoLoginUser(array seznam_PC) - vraci jmeno a domenu uzivatele, ktery je nastaven pro automaticke prihlaseni na strojich seznam_PC
Array ( [rejpal08] => Array ( [nazev] => rejpal08 [autologin_jmeno] => [autologin_domena] => ) )
getPosition(array seznam_PC) - vraci pozici (v mrizce) stroju seznam_PC v prislusne ucebne
Array ( [w1] => Array ( [nazev] => w1 [pos_x] => 1 [pos_y] => 1 ) [rejpal08] => Array ( [nazev] => rejpal08 [pos_x] => 4 [pos_y] => 3 ) )

Provadeni akci (provolavani skriptu)

doCom(array seznam_PC, string prikaz) - provadi prikaz prikaz na zadanych PC
logMeIn(array seznam_PC, string uzivatel, string heslo) - na stroje seznam_PC prihlasi uzivatele uzivatel
logPEF(array seznam_PC) - na stroje seznam_PC prihlasi uzivatele PEF
logOut(array seznam_PC) - na strojich seznam_PC vypina autologin a odstranuje domenu a jmeno uzivatele
shutdown(array seznam_PC) - okamzite a bez varovani vypne stroje seznam_PC
wakeUp(array seznam_PC) - zapina stroje seznam_PC
refreshInfo(array seznam_PC) - obnovi informace o stavu stroju seznam_PC a ulozi je do DB